From ff3001386e066b7db58872db9298628b3a9ab965 Mon Sep 17 00:00:00 2001 From: abialas Date: Thu, 16 Nov 2017 22:57:21 +0100 Subject: [PATCH 01/60] BAEL-1344 add java8 convert methods date, localdate, localdatetime --- .../datetime/DateToLocalDateConverter.java | 34 ++++++++ .../DateToLocalDateTimeConverter.java | 34 ++++++++ .../LocalDateTimeToDateConverter.java | 27 +++++++ .../datetime/LocalDateToDateConverter.java | 28 +++++++ .../DateToLocalDateConverterTest.java | 72 +++++++++++++++++ .../DateToLocalDateTimeConverterTest.java | 78 +++++++++++++++++++ .../LocalDateTimeToDateConverterTest.java | 61 +++++++++++++++ .../LocalDateToDateConverterTest.java | 55 +++++++++++++ 8 files changed, 389 insertions(+) create mode 100644 core-java-8/src/main/java/com/baeldung/datetime/DateToLocalDateConverter.java create mode 100644 core-java-8/src/main/java/com/baeldung/datetime/DateToLocalDateTimeConverter.java create mode 100644 core-java-8/src/main/java/com/baeldung/datetime/LocalDateTimeToDateConverter.java create mode 100644 core-java-8/src/main/java/com/baeldung/datetime/LocalDateToDateConverter.java create mode 100644 core-java-8/src/test/java/com/baeldung/datetime/DateToLocalDateConverterTest.java create mode 100644 core-java-8/src/test/java/com/baeldung/datetime/DateToLocalDateTimeConverterTest.java create mode 100644 core-java-8/src/test/java/com/baeldung/datetime/LocalDateTimeToDateConverterTest.java create mode 100644 core-java-8/src/test/java/com/baeldung/datetime/LocalDateToDateConverterTest.java diff --git a/core-java-8/src/main/java/com/baeldung/datetime/DateToLocalDateConverter.java b/core-java-8/src/main/java/com/baeldung/datetime/DateToLocalDateConverter.java new file mode 100644 index 0000000000..1ef77a2960 --- /dev/null +++ b/core-java-8/src/main/java/com/baeldung/datetime/DateToLocalDateConverter.java @@ -0,0 +1,34 @@ +/** + * + */ +package com.baeldung.datetime; + +import java.time.Instant; +import java.time.LocalDate; +import java.time.ZoneId; +import java.util.Date; + +/** + * Class which shows different ways of converting java.util.Date into java.time.LocalDate. + * + * @author abialas + * + */ +public class DateToLocalDateConverter { + + public static LocalDate convertToLocalDateViaInstant(Date dateToConvert) { + return dateToConvert.toInstant() + .atZone(ZoneId.systemDefault()) + .toLocalDate(); + } + + public static LocalDate convertToLocalDateViaSqlDate(Date dateToConvert) { + return new java.sql.Date(dateToConvert.getTime()).toLocalDate(); + } + + public static LocalDate convertToLocalDateViaMilisecond(Date dateToConvert) { + return LocalDate.from(Instant.ofEpochMilli(dateToConvert.getTime()) + .atZone(ZoneId.systemDefault())); + } + +} diff --git a/core-java-8/src/main/java/com/baeldung/datetime/DateToLocalDateTimeConverter.java b/core-java-8/src/main/java/com/baeldung/datetime/DateToLocalDateTimeConverter.java new file mode 100644 index 0000000000..78abb6a94c --- /dev/null +++ b/core-java-8/src/main/java/com/baeldung/datetime/DateToLocalDateTimeConverter.java @@ -0,0 +1,34 @@ +/** + * + */ +package com.baeldung.datetime; + +import java.time.Instant; +import java.time.LocalDateTime; +import java.time.ZoneId; +import java.util.Date; + +/** + * Class which shows different ways of converting java.util.Date into java.time.LocalDateTime. + * + * @author abialas + * + */ +public class DateToLocalDateTimeConverter { + + public static LocalDateTime convertToLocalDateTimeViaInstant(Date dateToConvert) { + return dateToConvert.toInstant() + .atZone(ZoneId.systemDefault()) + .toLocalDateTime(); + } + + public static LocalDateTime convertToLocalDateTimeViaSqlTimestamp(Date dateToConvert) { + return new java.sql.Timestamp(dateToConvert.getTime()).toLocalDateTime(); + } + + public static LocalDateTime convertToLocalDateTimeViaMilisecond(Date dateToConvert) { + return LocalDateTime.from(Instant.ofEpochMilli(dateToConvert.getTime()) + .atZone(ZoneId.systemDefault())); + } + +} diff --git a/core-java-8/src/main/java/com/baeldung/datetime/LocalDateTimeToDateConverter.java b/core-java-8/src/main/java/com/baeldung/datetime/LocalDateTimeToDateConverter.java new file mode 100644 index 0000000000..ef72c8b4fb --- /dev/null +++ b/core-java-8/src/main/java/com/baeldung/datetime/LocalDateTimeToDateConverter.java @@ -0,0 +1,27 @@ +/** + * + */ +package com.baeldung.datetime; + +import java.time.LocalDateTime; +import java.time.ZoneId; +import java.util.Date; + +/** + * Class which shows different ways of converting java.time.LocalDateTime into java.util.Date. + * + * @author abialas + * + */ +public class LocalDateTimeToDateConverter { + + public static Date convertToDateViaSqlTimestamp(LocalDateTime dateToConvert) { + return java.sql.Timestamp.valueOf(dateToConvert); + } + + public static Date convertToDateViaInstant(LocalDateTime dateToConvert) { + return java.util.Date.from(dateToConvert.atZone(ZoneId.systemDefault()) + .toInstant()); + } + +} diff --git a/core-java-8/src/main/java/com/baeldung/datetime/LocalDateToDateConverter.java b/core-java-8/src/main/java/com/baeldung/datetime/LocalDateToDateConverter.java new file mode 100644 index 0000000000..8050815799 --- /dev/null +++ b/core-java-8/src/main/java/com/baeldung/datetime/LocalDateToDateConverter.java @@ -0,0 +1,28 @@ +/** + * + */ +package com.baeldung.datetime; + +import java.time.LocalDate; +import java.time.ZoneId; +import java.util.Date; + +/** + * Class which shows different ways of converting java.time.LocalDate into java.util.Date. + * + * @author abialas + * + */ +public class LocalDateToDateConverter { + + public static Date convertToDateViaSqlDate(LocalDate dateToConvert) { + return java.sql.Date.valueOf(dateToConvert); + } + + public static Date convertToDateViaInstant(LocalDate dateToConvert) { + return java.util.Date.from(dateToConvert.atStartOfDay() + .atZone(ZoneId.systemDefault()) + .toInstant()); + } + +} diff --git a/core-java-8/src/test/java/com/baeldung/datetime/DateToLocalDateConverterTest.java b/core-java-8/src/test/java/com/baeldung/datetime/DateToLocalDateConverterTest.java new file mode 100644 index 0000000000..5de6ae3e59 --- /dev/null +++ b/core-java-8/src/test/java/com/baeldung/datetime/DateToLocalDateConverterTest.java @@ -0,0 +1,72 @@ +/** + * + */ +package com.baeldung.datetime; + +import static org.junit.Assert.assertEquals; + +import java.time.LocalDate; +import java.time.temporal.ChronoField; +import java.util.Calendar; +import java.util.Date; + +import org.junit.Test; + +/** + * + * JUnits for {@link DateToLocalDateConverter} class. + * + * @author abialas + * + */ +public class DateToLocalDateConverterTest { + + @Test + public void shouldReturn10thNovember2010WhenConvertViaInstant() { + // given + Calendar calendar = Calendar.getInstance(); + calendar.set(2010, 10, 10); + Date dateToConvert = calendar.getTime(); + + // when + LocalDate localDate = DateToLocalDateConverter.convertToLocalDateViaInstant(dateToConvert); + + // then + assertEquals(2010, localDate.get(ChronoField.YEAR)); + assertEquals(11, localDate.get(ChronoField.MONTH_OF_YEAR)); + assertEquals(10, localDate.get(ChronoField.DAY_OF_MONTH)); + } + + @Test + public void shouldReturn10thNovember2010WhenConvertViaMiliseconds() { + // given + Calendar calendar = Calendar.getInstance(); + calendar.set(2010, 10, 10); + Date dateToConvert = calendar.getTime(); + + // when + LocalDate localDate = DateToLocalDateConverter.convertToLocalDateViaMilisecond(dateToConvert); + + // then + assertEquals(2010, localDate.get(ChronoField.YEAR)); + assertEquals(11, localDate.get(ChronoField.MONTH_OF_YEAR)); + assertEquals(10, localDate.get(ChronoField.DAY_OF_MONTH)); + } + + @Test + public void shouldReturn10thNovember2010WhenConvertViaSqlDate() { + // given + Calendar calendar = Calendar.getInstance(); + calendar.set(2010, 10, 10); + Date dateToConvert = calendar.getTime(); + + // when + LocalDate localDate = DateToLocalDateConverter.convertToLocalDateViaSqlDate(dateToConvert); + + // then + assertEquals(2010, localDate.get(ChronoField.YEAR)); + assertEquals(11, localDate.get(ChronoField.MONTH_OF_YEAR)); + assertEquals(10, localDate.get(ChronoField.DAY_OF_MONTH)); + } + +} diff --git a/core-java-8/src/test/java/com/baeldung/datetime/DateToLocalDateTimeConverterTest.java b/core-java-8/src/test/java/com/baeldung/datetime/DateToLocalDateTimeConverterTest.java new file mode 100644 index 0000000000..6d8fb8ea93 --- /dev/null +++ b/core-java-8/src/test/java/com/baeldung/datetime/DateToLocalDateTimeConverterTest.java @@ -0,0 +1,78 @@ +/** + * + */ +package com.baeldung.datetime; + +import static org.junit.Assert.assertEquals; + +import java.time.LocalDateTime; +import java.time.temporal.ChronoField; +import java.util.Calendar; +import java.util.Date; + +import org.junit.Test; + +/** + * + * JUnits for {@link DateToLocalDateTimeConverter} class. + * + * @author abialas + * + */ +public class DateToLocalDateTimeConverterTest { + + @Test + public void shouldReturn10thNovember2010time8hour20minWhenConvertViaInstant() { + // given + Calendar calendar = Calendar.getInstance(); + calendar.set(2010, 10, 10, 8, 20); + Date dateToConvert = calendar.getTime(); + + // when + LocalDateTime localDateTime = DateToLocalDateTimeConverter.convertToLocalDateTimeViaInstant(dateToConvert); + + // then + assertEquals(2010, localDateTime.get(ChronoField.YEAR)); + assertEquals(11, localDateTime.get(ChronoField.MONTH_OF_YEAR)); + assertEquals(10, localDateTime.get(ChronoField.DAY_OF_MONTH)); + assertEquals(8, localDateTime.get(ChronoField.HOUR_OF_DAY)); + assertEquals(20, localDateTime.get(ChronoField.MINUTE_OF_HOUR)); + } + + @Test + public void shouldReturn10thNovember2010time8hour20minWhenConvertViaMiliseconds() { + // given + Calendar calendar = Calendar.getInstance(); + calendar.set(2010, 10, 10, 8, 20); + Date dateToConvert = calendar.getTime(); + + // when + LocalDateTime localDateTime = DateToLocalDateTimeConverter.convertToLocalDateTimeViaMilisecond(dateToConvert); + + // then + assertEquals(2010, localDateTime.get(ChronoField.YEAR)); + assertEquals(11, localDateTime.get(ChronoField.MONTH_OF_YEAR)); + assertEquals(10, localDateTime.get(ChronoField.DAY_OF_MONTH)); + assertEquals(8, localDateTime.get(ChronoField.HOUR_OF_DAY)); + assertEquals(20, localDateTime.get(ChronoField.MINUTE_OF_HOUR)); + } + + @Test + public void shouldReturn10thNovember2010time8hour20minWhenConvertViaSqlTimestamp() { + // given + Calendar calendar = Calendar.getInstance(); + calendar.set(2010, 10, 10, 8, 20); + Date dateToConvert = calendar.getTime(); + + // when + LocalDateTime localDateTime = DateToLocalDateTimeConverter.convertToLocalDateTimeViaSqlTimestamp(dateToConvert); + + // then + assertEquals(2010, localDateTime.get(ChronoField.YEAR)); + assertEquals(11, localDateTime.get(ChronoField.MONTH_OF_YEAR)); + assertEquals(10, localDateTime.get(ChronoField.DAY_OF_MONTH)); + assertEquals(8, localDateTime.get(ChronoField.HOUR_OF_DAY)); + assertEquals(20, localDateTime.get(ChronoField.MINUTE_OF_HOUR)); + } + +} diff --git a/core-java-8/src/test/java/com/baeldung/datetime/LocalDateTimeToDateConverterTest.java b/core-java-8/src/test/java/com/baeldung/datetime/LocalDateTimeToDateConverterTest.java new file mode 100644 index 0000000000..519fa69f04 --- /dev/null +++ b/core-java-8/src/test/java/com/baeldung/datetime/LocalDateTimeToDateConverterTest.java @@ -0,0 +1,61 @@ +/** + * + */ +package com.baeldung.datetime; + +import static org.junit.Assert.assertEquals; + +import java.time.LocalDateTime; +import java.util.Calendar; +import java.util.Date; + +import org.junit.Test; + +/** + * + * JUnits for {@link LocalDateTimeToDateConverter} class. + * + * @author abialas + * + */ +public class LocalDateTimeToDateConverterTest { + + @Test + public void shouldReturn10thNovember2010time8hour20minWhenConvertViaInstant() { + // given + LocalDateTime dateToConvert = LocalDateTime.of(2010, 11, 10, 8, 20); + + // when + Date date = LocalDateTimeToDateConverter.convertToDateViaInstant(dateToConvert); + Calendar calendar = Calendar.getInstance(); + calendar.setTime(date); + + // then + assertEquals(2010, calendar.get(Calendar.YEAR)); + assertEquals(10, calendar.get(Calendar.MONTH)); + assertEquals(10, calendar.get(Calendar.DAY_OF_MONTH)); + assertEquals(8, calendar.get(Calendar.HOUR)); + assertEquals(20, calendar.get(Calendar.MINUTE)); + assertEquals(0, calendar.get(Calendar.SECOND)); + } + + @Test + public void shouldReturn10thNovember2010WhenConvertViaSqlTimestamp() { + // given + LocalDateTime dateToConvert = LocalDateTime.of(2010, 11, 10, 8, 20); + + // when + Date date = LocalDateTimeToDateConverter.convertToDateViaSqlTimestamp(dateToConvert); + Calendar calendar = Calendar.getInstance(); + calendar.setTime(date); + + // then + assertEquals(2010, calendar.get(Calendar.YEAR)); + assertEquals(10, calendar.get(Calendar.MONTH)); + assertEquals(10, calendar.get(Calendar.DAY_OF_MONTH)); + assertEquals(8, calendar.get(Calendar.HOUR)); + assertEquals(20, calendar.get(Calendar.MINUTE)); + assertEquals(0, calendar.get(Calendar.SECOND)); + } + +} diff --git a/core-java-8/src/test/java/com/baeldung/datetime/LocalDateToDateConverterTest.java b/core-java-8/src/test/java/com/baeldung/datetime/LocalDateToDateConverterTest.java new file mode 100644 index 0000000000..c1da3af052 --- /dev/null +++ b/core-java-8/src/test/java/com/baeldung/datetime/LocalDateToDateConverterTest.java @@ -0,0 +1,55 @@ +/** + * + */ +package com.baeldung.datetime; + +import static org.junit.Assert.assertEquals; + +import java.time.LocalDate; +import java.util.Calendar; +import java.util.Date; + +import org.junit.Test; + +/** + * + * JUnits for {@link LocalDateToDateConverter} class. + * + * @author abialas + * + */ +public class LocalDateToDateConverterTest { + + @Test + public void shouldReturn10thNovember2010WhenConvertViaInstant() { + // given + LocalDate dateToConvert = LocalDate.of(2010, 11, 10); + + // when + Date date = LocalDateToDateConverter.convertToDateViaInstant(dateToConvert); + Calendar calendar = Calendar.getInstance(); + calendar.setTime(date); + + // then + assertEquals(2010, calendar.get(Calendar.YEAR)); + assertEquals(10, calendar.get(Calendar.MONTH)); + assertEquals(10, calendar.get(Calendar.DAY_OF_MONTH)); + } + + @Test + public void shouldReturn10thNovember2010WhenConvertViaSqlDate() { + // given + LocalDate dateToConvert = LocalDate.of(2010, 11, 10); + + // when + Date date = LocalDateToDateConverter.convertToDateViaSqlDate(dateToConvert); + Calendar calendar = Calendar.getInstance(); + calendar.setTime(date); + + // then + assertEquals(2010, calendar.get(Calendar.YEAR)); + assertEquals(10, calendar.get(Calendar.MONTH)); + assertEquals(10, calendar.get(Calendar.DAY_OF_MONTH)); + } + +} From 99ae59b9611c06045f376fc71e622687508d31b7 Mon Sep 17 00:00:00 2001 From: abialas Date: Fri, 17 Nov 2017 23:46:09 +0100 Subject: [PATCH 02/60] BAEL-1344 add java9 example --- .../datetime/DateToLocalDateConverter.java | 5 ++- .../DateToLocalDateTimeConverter.java | 5 ++- .../datetime/DateToLocalDateConverter.java | 22 ++++++++++ .../DateToLocalDateTimeConverter.java | 22 ++++++++++ .../DateToLocalDateConverterTest.java | 41 ++++++++++++++++++ .../DateToLocalDateTimeConverterTest.java | 43 +++++++++++++++++++ 6 files changed, 134 insertions(+), 4 deletions(-) create mode 100644 core-java-9/src/main/java/com/baeldung/java9/datetime/DateToLocalDateConverter.java create mode 100644 core-java-9/src/main/java/com/baeldung/java9/datetime/DateToLocalDateTimeConverter.java create mode 100644 core-java-9/src/test/java/com/baeldung/java9/datetime/DateToLocalDateConverterTest.java create mode 100644 core-java-9/src/test/java/com/baeldung/java9/datetime/DateToLocalDateTimeConverterTest.java diff --git a/core-java-8/src/main/java/com/baeldung/datetime/DateToLocalDateConverter.java b/core-java-8/src/main/java/com/baeldung/datetime/DateToLocalDateConverter.java index 1ef77a2960..8788aac747 100644 --- a/core-java-8/src/main/java/com/baeldung/datetime/DateToLocalDateConverter.java +++ b/core-java-8/src/main/java/com/baeldung/datetime/DateToLocalDateConverter.java @@ -27,8 +27,9 @@ public class DateToLocalDateConverter { } public static LocalDate convertToLocalDateViaMilisecond(Date dateToConvert) { - return LocalDate.from(Instant.ofEpochMilli(dateToConvert.getTime()) - .atZone(ZoneId.systemDefault())); + return Instant.ofEpochMilli(dateToConvert.getTime()) + .atZone(ZoneId.systemDefault()) + .toLocalDate(); } } diff --git a/core-java-8/src/main/java/com/baeldung/datetime/DateToLocalDateTimeConverter.java b/core-java-8/src/main/java/com/baeldung/datetime/DateToLocalDateTimeConverter.java index 78abb6a94c..f994023526 100644 --- a/core-java-8/src/main/java/com/baeldung/datetime/DateToLocalDateTimeConverter.java +++ b/core-java-8/src/main/java/com/baeldung/datetime/DateToLocalDateTimeConverter.java @@ -27,8 +27,9 @@ public class DateToLocalDateTimeConverter { } public static LocalDateTime convertToLocalDateTimeViaMilisecond(Date dateToConvert) { - return LocalDateTime.from(Instant.ofEpochMilli(dateToConvert.getTime()) - .atZone(ZoneId.systemDefault())); + return Instant.ofEpochMilli(dateToConvert.getTime()) + .atZone(ZoneId.systemDefault()) + .toLocalDateTime(); } } diff --git a/core-java-9/src/main/java/com/baeldung/java9/datetime/DateToLocalDateConverter.java b/core-java-9/src/main/java/com/baeldung/java9/datetime/DateToLocalDateConverter.java new file mode 100644 index 0000000000..bafa9ebff1 --- /dev/null +++ b/core-java-9/src/main/java/com/baeldung/java9/datetime/DateToLocalDateConverter.java @@ -0,0 +1,22 @@ +/** + * + */ +package com.baeldung.java9.datetime; + +import java.time.LocalDate; +import java.time.ZoneId; +import java.util.Date; + +/** + * Class which shows a way to convert java.util.Date into java.time.LocalDate with new Java 1.9. + * + * @author abialas + * + */ +public class DateToLocalDateConverter { + + public static LocalDate convertToLocalDate(Date dateToConvert) { + return LocalDate.ofInstant(dateToConvert.toInstant(), ZoneId.systemDefault()); + } + +} diff --git a/core-java-9/src/main/java/com/baeldung/java9/datetime/DateToLocalDateTimeConverter.java b/core-java-9/src/main/java/com/baeldung/java9/datetime/DateToLocalDateTimeConverter.java new file mode 100644 index 0000000000..538d5a9f63 --- /dev/null +++ b/core-java-9/src/main/java/com/baeldung/java9/datetime/DateToLocalDateTimeConverter.java @@ -0,0 +1,22 @@ +/** + * + */ +package com.baeldung.java9.datetime; + +import java.time.LocalDateTime; +import java.time.ZoneId; +import java.util.Date; + +/** + * Class which shows a way to convert java.util.Date into java.time.LocalDateTime with new Java 1.9. + * + * @author abialas + * + */ +public class DateToLocalDateTimeConverter { + + public static LocalDateTime convertToLocalDateTime(Date dateToConvert) { + return LocalDateTime.ofInstant(dateToConvert.toInstant(), ZoneId.systemDefault()); + } + +} diff --git a/core-java-9/src/test/java/com/baeldung/java9/datetime/DateToLocalDateConverterTest.java b/core-java-9/src/test/java/com/baeldung/java9/datetime/DateToLocalDateConverterTest.java new file mode 100644 index 0000000000..2e0fb0dedd --- /dev/null +++ b/core-java-9/src/test/java/com/baeldung/java9/datetime/DateToLocalDateConverterTest.java @@ -0,0 +1,41 @@ +/** + * + */ +package com.baeldung.java9.datetime; + +import static org.junit.Assert.assertEquals; + +import java.time.LocalDate; +import java.time.temporal.ChronoField; +import java.util.Calendar; +import java.util.Date; + +import org.junit.Test; + +import com.baeldung.java9.datetime.DateToLocalDateConverter; + +/** + * JUnits for {@link DateToLocalDateConverter} class. + * + * @author abialas + * + */ +public class DateToLocalDateConverterTest { + + @Test + public void shouldReturn10thNovember2010WhenConvertToLocalDate() { + // given + Calendar calendar = Calendar.getInstance(); + calendar.set(2010, 10, 10); + Date dateToConvert = calendar.getTime(); + + // when + LocalDate localDateTime = DateToLocalDateConverter.convertToLocalDate(dateToConvert); + + // then + assertEquals(2010, localDateTime.get(ChronoField.YEAR)); + assertEquals(11, localDateTime.get(ChronoField.MONTH_OF_YEAR)); + assertEquals(10, localDateTime.get(ChronoField.DAY_OF_MONTH)); + } + +} diff --git a/core-java-9/src/test/java/com/baeldung/java9/datetime/DateToLocalDateTimeConverterTest.java b/core-java-9/src/test/java/com/baeldung/java9/datetime/DateToLocalDateTimeConverterTest.java new file mode 100644 index 0000000000..49988c8b33 --- /dev/null +++ b/core-java-9/src/test/java/com/baeldung/java9/datetime/DateToLocalDateTimeConverterTest.java @@ -0,0 +1,43 @@ +/** + * + */ +package com.baeldung.java9.datetime; + +import static org.junit.Assert.assertEquals; + +import java.time.LocalDateTime; +import java.time.temporal.ChronoField; +import java.util.Calendar; +import java.util.Date; + +import org.junit.Test; + +import com.baeldung.java9.datetime.DateToLocalDateTimeConverter; + +/** + * JUnits for {@link DateToLocalDateTimeConverter} class. + * + * @author abialas + * + */ +public class DateToLocalDateTimeConverterTest { + + @Test + public void shouldReturn10thNovember2010time8hour20minWhenConvertViaInstant() { + // given + Calendar calendar = Calendar.getInstance(); + calendar.set(2010, 10, 10, 8, 20); + Date dateToConvert = calendar.getTime(); + + // when + LocalDateTime localDateTime = DateToLocalDateTimeConverter.convertToLocalDateTime(dateToConvert); + + // then + assertEquals(2010, localDateTime.get(ChronoField.YEAR)); + assertEquals(11, localDateTime.get(ChronoField.MONTH_OF_YEAR)); + assertEquals(10, localDateTime.get(ChronoField.DAY_OF_MONTH)); + assertEquals(8, localDateTime.get(ChronoField.HOUR_OF_DAY)); + assertEquals(20, localDateTime.get(ChronoField.MINUTE_OF_HOUR)); + } + +} From d0396880e5871c18035cd7b9aadba617a0e4e9d7 Mon Sep 17 00:00:00 2001 From: abialas Date: Fri, 24 Nov 2017 20:51:02 +0100 Subject: [PATCH 03/60] Move Date to LocalDate and LocalDateTime converters from core-java-8 to core-java-9 --- .../datetime/DateToLocalDateConverter.java | 35 --------- .../DateToLocalDateTimeConverter.java | 35 --------- .../DateToLocalDateConverterTest.java | 72 ----------------- .../DateToLocalDateTimeConverterTest.java | 78 ------------------- .../datetime/DateToLocalDateConverter.java | 19 ++++- .../DateToLocalDateTimeConverter.java | 19 ++++- .../LocalDateTimeToDateConverter.java | 2 +- .../datetime/LocalDateToDateConverter.java | 2 +- .../DateToLocalDateConverterTest.java | 48 ++++++++++++ .../DateToLocalDateTimeConverterTest.java | 54 +++++++++++++ .../LocalDateTimeToDateConverterTest.java | 2 +- .../LocalDateToDateConverterTest.java | 2 +- 12 files changed, 142 insertions(+), 226 deletions(-) delete mode 100644 core-java-8/src/main/java/com/baeldung/datetime/DateToLocalDateConverter.java delete mode 100644 core-java-8/src/main/java/com/baeldung/datetime/DateToLocalDateTimeConverter.java delete mode 100644 core-java-8/src/test/java/com/baeldung/datetime/DateToLocalDateConverterTest.java delete mode 100644 core-java-8/src/test/java/com/baeldung/datetime/DateToLocalDateTimeConverterTest.java rename {core-java-8/src/main/java/com/baeldung => core-java-9/src/main/java/com/baeldung/java9}/datetime/LocalDateTimeToDateConverter.java (94%) rename {core-java-8/src/main/java/com/baeldung => core-java-9/src/main/java/com/baeldung/java9}/datetime/LocalDateToDateConverter.java (94%) rename {core-java-8/src/test/java/com/baeldung => core-java-9/src/test/java/com/baeldung/java9}/datetime/LocalDateTimeToDateConverterTest.java (97%) rename {core-java-8/src/test/java/com/baeldung => core-java-9/src/test/java/com/baeldung/java9}/datetime/LocalDateToDateConverterTest.java (97%) diff --git a/core-java-8/src/main/java/com/baeldung/datetime/DateToLocalDateConverter.java b/core-java-8/src/main/java/com/baeldung/datetime/DateToLocalDateConverter.java deleted file mode 100644 index 8788aac747..0000000000 --- a/core-java-8/src/main/java/com/baeldung/datetime/DateToLocalDateConverter.java +++ /dev/null @@ -1,35 +0,0 @@ -/** - * - */ -package com.baeldung.datetime; - -import java.time.Instant; -import java.time.LocalDate; -import java.time.ZoneId; -import java.util.Date; - -/** - * Class which shows different ways of converting java.util.Date into java.time.LocalDate. - * - * @author abialas - * - */ -public class DateToLocalDateConverter { - - public static LocalDate convertToLocalDateViaInstant(Date dateToConvert) { - return dateToConvert.toInstant() - .atZone(ZoneId.systemDefault()) - .toLocalDate(); - } - - public static LocalDate convertToLocalDateViaSqlDate(Date dateToConvert) { - return new java.sql.Date(dateToConvert.getTime()).toLocalDate(); - } - - public static LocalDate convertToLocalDateViaMilisecond(Date dateToConvert) { - return Instant.ofEpochMilli(dateToConvert.getTime()) - .atZone(ZoneId.systemDefault()) - .toLocalDate(); - } - -} diff --git a/core-java-8/src/main/java/com/baeldung/datetime/DateToLocalDateTimeConverter.java b/core-java-8/src/main/java/com/baeldung/datetime/DateToLocalDateTimeConverter.java deleted file mode 100644 index f994023526..0000000000 --- a/core-java-8/src/main/java/com/baeldung/datetime/DateToLocalDateTimeConverter.java +++ /dev/null @@ -1,35 +0,0 @@ -/** - * - */ -package com.baeldung.datetime; - -import java.time.Instant; -import java.time.LocalDateTime; -import java.time.ZoneId; -import java.util.Date; - -/** - * Class which shows different ways of converting java.util.Date into java.time.LocalDateTime. - * - * @author abialas - * - */ -public class DateToLocalDateTimeConverter { - - public static LocalDateTime convertToLocalDateTimeViaInstant(Date dateToConvert) { - return dateToConvert.toInstant() - .atZone(ZoneId.systemDefault()) - .toLocalDateTime(); - } - - public static LocalDateTime convertToLocalDateTimeViaSqlTimestamp(Date dateToConvert) { - return new java.sql.Timestamp(dateToConvert.getTime()).toLocalDateTime(); - } - - public static LocalDateTime convertToLocalDateTimeViaMilisecond(Date dateToConvert) { - return Instant.ofEpochMilli(dateToConvert.getTime()) - .atZone(ZoneId.systemDefault()) - .toLocalDateTime(); - } - -} diff --git a/core-java-8/src/test/java/com/baeldung/datetime/DateToLocalDateConverterTest.java b/core-java-8/src/test/java/com/baeldung/datetime/DateToLocalDateConverterTest.java deleted file mode 100644 index 5de6ae3e59..0000000000 --- a/core-java-8/src/test/java/com/baeldung/datetime/DateToLocalDateConverterTest.java +++ /dev/null @@ -1,72 +0,0 @@ -/** - * - */ -package com.baeldung.datetime; - -import static org.junit.Assert.assertEquals; - -import java.time.LocalDate; -import java.time.temporal.ChronoField; -import java.util.Calendar; -import java.util.Date; - -import org.junit.Test; - -/** - * - * JUnits for {@link DateToLocalDateConverter} class. - * - * @author abialas - * - */ -public class DateToLocalDateConverterTest { - - @Test - public void shouldReturn10thNovember2010WhenConvertViaInstant() { - // given - Calendar calendar = Calendar.getInstance(); - calendar.set(2010, 10, 10); - Date dateToConvert = calendar.getTime(); - - // when - LocalDate localDate = DateToLocalDateConverter.convertToLocalDateViaInstant(dateToConvert); - - // then - assertEquals(2010, localDate.get(ChronoField.YEAR)); - assertEquals(11, localDate.get(ChronoField.MONTH_OF_YEAR)); - assertEquals(10, localDate.get(ChronoField.DAY_OF_MONTH)); - } - - @Test - public void shouldReturn10thNovember2010WhenConvertViaMiliseconds() { - // given - Calendar calendar = Calendar.getInstance(); - calendar.set(2010, 10, 10); - Date dateToConvert = calendar.getTime(); - - // when - LocalDate localDate = DateToLocalDateConverter.convertToLocalDateViaMilisecond(dateToConvert); - - // then - assertEquals(2010, localDate.get(ChronoField.YEAR)); - assertEquals(11, localDate.get(ChronoField.MONTH_OF_YEAR)); - assertEquals(10, localDate.get(ChronoField.DAY_OF_MONTH)); - } - - @Test - public void shouldReturn10thNovember2010WhenConvertViaSqlDate() { - // given - Calendar calendar = Calendar.getInstance(); - calendar.set(2010, 10, 10); - Date dateToConvert = calendar.getTime(); - - // when - LocalDate localDate = DateToLocalDateConverter.convertToLocalDateViaSqlDate(dateToConvert); - - // then - assertEquals(2010, localDate.get(ChronoField.YEAR)); - assertEquals(11, localDate.get(ChronoField.MONTH_OF_YEAR)); - assertEquals(10, localDate.get(ChronoField.DAY_OF_MONTH)); - } - -} diff --git a/core-java-8/src/test/java/com/baeldung/datetime/DateToLocalDateTimeConverterTest.java b/core-java-8/src/test/java/com/baeldung/datetime/DateToLocalDateTimeConverterTest.java deleted file mode 100644 index 6d8fb8ea93..0000000000 --- a/core-java-8/src/test/java/com/baeldung/datetime/DateToLocalDateTimeConverterTest.java +++ /dev/null @@ -1,78 +0,0 @@ -/** - * - */ -package com.baeldung.datetime; - -import static org.junit.Assert.assertEquals; - -import java.time.LocalDateTime; -import java.time.temporal.ChronoField; -import java.util.Calendar; -import java.util.Date; - -import org.junit.Test; - -/** - * - * JUnits for {@link DateToLocalDateTimeConverter} class. - * - * @author abialas - * - */ -public class DateToLocalDateTimeConverterTest { - - @Test - public void shouldReturn10thNovember2010time8hour20minWhenConvertViaInstant() { - // given - Calendar calendar = Calendar.getInstance(); - calendar.set(2010, 10, 10, 8, 20); - Date dateToConvert = calendar.getTime(); - - // when - LocalDateTime localDateTime = DateToLocalDateTimeConverter.convertToLocalDateTimeViaInstant(dateToConvert); - - // then - assertEquals(2010, localDateTime.get(ChronoField.YEAR)); - assertEquals(11, localDateTime.get(ChronoField.MONTH_OF_YEAR)); - assertEquals(10, localDateTime.get(ChronoField.DAY_OF_MONTH)); - assertEquals(8, localDateTime.get(ChronoField.HOUR_OF_DAY)); - assertEquals(20, localDateTime.get(ChronoField.MINUTE_OF_HOUR)); - } - - @Test - public void shouldReturn10thNovember2010time8hour20minWhenConvertViaMiliseconds() { - // given - Calendar calendar = Calendar.getInstance(); - calendar.set(2010, 10, 10, 8, 20); - Date dateToConvert = calendar.getTime(); - - // when - LocalDateTime localDateTime = DateToLocalDateTimeConverter.convertToLocalDateTimeViaMilisecond(dateToConvert); - - // then - assertEquals(2010, localDateTime.get(ChronoField.YEAR)); - assertEquals(11, localDateTime.get(ChronoField.MONTH_OF_YEAR)); - assertEquals(10, localDateTime.get(ChronoField.DAY_OF_MONTH)); - assertEquals(8, localDateTime.get(ChronoField.HOUR_OF_DAY)); - assertEquals(20, localDateTime.get(ChronoField.MINUTE_OF_HOUR)); - } - - @Test - public void shouldReturn10thNovember2010time8hour20minWhenConvertViaSqlTimestamp() { - // given - Calendar calendar = Calendar.getInstance(); - calendar.set(2010, 10, 10, 8, 20); - Date dateToConvert = calendar.getTime(); - - // when - LocalDateTime localDateTime = DateToLocalDateTimeConverter.convertToLocalDateTimeViaSqlTimestamp(dateToConvert); - - // then - assertEquals(2010, localDateTime.get(ChronoField.YEAR)); - assertEquals(11, localDateTime.get(ChronoField.MONTH_OF_YEAR)); - assertEquals(10, localDateTime.get(ChronoField.DAY_OF_MONTH)); - assertEquals(8, localDateTime.get(ChronoField.HOUR_OF_DAY)); - assertEquals(20, localDateTime.get(ChronoField.MINUTE_OF_HOUR)); - } - -} diff --git a/core-java-9/src/main/java/com/baeldung/java9/datetime/DateToLocalDateConverter.java b/core-java-9/src/main/java/com/baeldung/java9/datetime/DateToLocalDateConverter.java index bafa9ebff1..c794c57e87 100644 --- a/core-java-9/src/main/java/com/baeldung/java9/datetime/DateToLocalDateConverter.java +++ b/core-java-9/src/main/java/com/baeldung/java9/datetime/DateToLocalDateConverter.java @@ -3,18 +3,35 @@ */ package com.baeldung.java9.datetime; +import java.time.Instant; import java.time.LocalDate; import java.time.ZoneId; import java.util.Date; /** - * Class which shows a way to convert java.util.Date into java.time.LocalDate with new Java 1.9. + * Class which shows a way to convert java.util.Date into java.time.LocalDate. * * @author abialas * */ public class DateToLocalDateConverter { + public static LocalDate convertToLocalDateViaInstant(Date dateToConvert) { + return dateToConvert.toInstant() + .atZone(ZoneId.systemDefault()) + .toLocalDate(); + } + + public static LocalDate convertToLocalDateViaSqlDate(Date dateToConvert) { + return new java.sql.Date(dateToConvert.getTime()).toLocalDate(); + } + + public static LocalDate convertToLocalDateViaMilisecond(Date dateToConvert) { + return Instant.ofEpochMilli(dateToConvert.getTime()) + .atZone(ZoneId.systemDefault()) + .toLocalDate(); + } + public static LocalDate convertToLocalDate(Date dateToConvert) { return LocalDate.ofInstant(dateToConvert.toInstant(), ZoneId.systemDefault()); } diff --git a/core-java-9/src/main/java/com/baeldung/java9/datetime/DateToLocalDateTimeConverter.java b/core-java-9/src/main/java/com/baeldung/java9/datetime/DateToLocalDateTimeConverter.java index 538d5a9f63..17ca5b1122 100644 --- a/core-java-9/src/main/java/com/baeldung/java9/datetime/DateToLocalDateTimeConverter.java +++ b/core-java-9/src/main/java/com/baeldung/java9/datetime/DateToLocalDateTimeConverter.java @@ -3,18 +3,35 @@ */ package com.baeldung.java9.datetime; +import java.time.Instant; import java.time.LocalDateTime; import java.time.ZoneId; import java.util.Date; /** - * Class which shows a way to convert java.util.Date into java.time.LocalDateTime with new Java 1.9. + * Class which shows a way to convert java.util.Date into java.time.LocalDateTime. * * @author abialas * */ public class DateToLocalDateTimeConverter { + public static LocalDateTime convertToLocalDateTimeViaInstant(Date dateToConvert) { + return dateToConvert.toInstant() + .atZone(ZoneId.systemDefault()) + .toLocalDateTime(); + } + + public static LocalDateTime convertToLocalDateTimeViaSqlTimestamp(Date dateToConvert) { + return new java.sql.Timestamp(dateToConvert.getTime()).toLocalDateTime(); + } + + public static LocalDateTime convertToLocalDateTimeViaMilisecond(Date dateToConvert) { + return Instant.ofEpochMilli(dateToConvert.getTime()) + .atZone(ZoneId.systemDefault()) + .toLocalDateTime(); + } + public static LocalDateTime convertToLocalDateTime(Date dateToConvert) { return LocalDateTime.ofInstant(dateToConvert.toInstant(), ZoneId.systemDefault()); } diff --git a/core-java-8/src/main/java/com/baeldung/datetime/LocalDateTimeToDateConverter.java b/core-java-9/src/main/java/com/baeldung/java9/datetime/LocalDateTimeToDateConverter.java similarity index 94% rename from core-java-8/src/main/java/com/baeldung/datetime/LocalDateTimeToDateConverter.java rename to core-java-9/src/main/java/com/baeldung/java9/datetime/LocalDateTimeToDateConverter.java index ef72c8b4fb..f219dcf038 100644 --- a/core-java-8/src/main/java/com/baeldung/datetime/LocalDateTimeToDateConverter.java +++ b/core-java-9/src/main/java/com/baeldung/java9/datetime/LocalDateTimeToDateConverter.java @@ -1,7 +1,7 @@ /** * */ -package com.baeldung.datetime; +package com.baeldung.java9.datetime; import java.time.LocalDateTime; import java.time.ZoneId; diff --git a/core-java-8/src/main/java/com/baeldung/datetime/LocalDateToDateConverter.java b/core-java-9/src/main/java/com/baeldung/java9/datetime/LocalDateToDateConverter.java similarity index 94% rename from core-java-8/src/main/java/com/baeldung/datetime/LocalDateToDateConverter.java rename to core-java-9/src/main/java/com/baeldung/java9/datetime/LocalDateToDateConverter.java index 8050815799..f9893da5d0 100644 --- a/core-java-8/src/main/java/com/baeldung/datetime/LocalDateToDateConverter.java +++ b/core-java-9/src/main/java/com/baeldung/java9/datetime/LocalDateToDateConverter.java @@ -1,7 +1,7 @@ /** * */ -package com.baeldung.datetime; +package com.baeldung.java9.datetime; import java.time.LocalDate; import java.time.ZoneId; diff --git a/core-java-9/src/test/java/com/baeldung/java9/datetime/DateToLocalDateConverterTest.java b/core-java-9/src/test/java/com/baeldung/java9/datetime/DateToLocalDateConverterTest.java index 2e0fb0dedd..ab69bba359 100644 --- a/core-java-9/src/test/java/com/baeldung/java9/datetime/DateToLocalDateConverterTest.java +++ b/core-java-9/src/test/java/com/baeldung/java9/datetime/DateToLocalDateConverterTest.java @@ -22,6 +22,54 @@ import com.baeldung.java9.datetime.DateToLocalDateConverter; */ public class DateToLocalDateConverterTest { + @Test + public void shouldReturn10thNovember2010WhenConvertViaInstant() { + // given + Calendar calendar = Calendar.getInstance(); + calendar.set(2010, 10, 10); + Date dateToConvert = calendar.getTime(); + + // when + LocalDate localDate = DateToLocalDateConverter.convertToLocalDateViaInstant(dateToConvert); + + // then + assertEquals(2010, localDate.get(ChronoField.YEAR)); + assertEquals(11, localDate.get(ChronoField.MONTH_OF_YEAR)); + assertEquals(10, localDate.get(ChronoField.DAY_OF_MONTH)); + } + + @Test + public void shouldReturn10thNovember2010WhenConvertViaMiliseconds() { + // given + Calendar calendar = Calendar.getInstance(); + calendar.set(2010, 10, 10); + Date dateToConvert = calendar.getTime(); + + // when + LocalDate localDate = DateToLocalDateConverter.convertToLocalDateViaMilisecond(dateToConvert); + + // then + assertEquals(2010, localDate.get(ChronoField.YEAR)); + assertEquals(11, localDate.get(ChronoField.MONTH_OF_YEAR)); + assertEquals(10, localDate.get(ChronoField.DAY_OF_MONTH)); + } + + @Test + public void shouldReturn10thNovember2010WhenConvertViaSqlDate() { + // given + Calendar calendar = Calendar.getInstance(); + calendar.set(2010, 10, 10); + Date dateToConvert = calendar.getTime(); + + // when + LocalDate localDate = DateToLocalDateConverter.convertToLocalDateViaSqlDate(dateToConvert); + + // then + assertEquals(2010, localDate.get(ChronoField.YEAR)); + assertEquals(11, localDate.get(ChronoField.MONTH_OF_YEAR)); + assertEquals(10, localDate.get(ChronoField.DAY_OF_MONTH)); + } + @Test public void shouldReturn10thNovember2010WhenConvertToLocalDate() { // given diff --git a/core-java-9/src/test/java/com/baeldung/java9/datetime/DateToLocalDateTimeConverterTest.java b/core-java-9/src/test/java/com/baeldung/java9/datetime/DateToLocalDateTimeConverterTest.java index 49988c8b33..97c70ee5ac 100644 --- a/core-java-9/src/test/java/com/baeldung/java9/datetime/DateToLocalDateTimeConverterTest.java +++ b/core-java-9/src/test/java/com/baeldung/java9/datetime/DateToLocalDateTimeConverterTest.java @@ -29,6 +29,60 @@ public class DateToLocalDateTimeConverterTest { calendar.set(2010, 10, 10, 8, 20); Date dateToConvert = calendar.getTime(); + // when + LocalDateTime localDateTime = DateToLocalDateTimeConverter.convertToLocalDateTimeViaInstant(dateToConvert); + + // then + assertEquals(2010, localDateTime.get(ChronoField.YEAR)); + assertEquals(11, localDateTime.get(ChronoField.MONTH_OF_YEAR)); + assertEquals(10, localDateTime.get(ChronoField.DAY_OF_MONTH)); + assertEquals(8, localDateTime.get(ChronoField.HOUR_OF_DAY)); + assertEquals(20, localDateTime.get(ChronoField.MINUTE_OF_HOUR)); + } + + @Test + public void shouldReturn10thNovember2010time8hour20minWhenConvertViaMiliseconds() { + // given + Calendar calendar = Calendar.getInstance(); + calendar.set(2010, 10, 10, 8, 20); + Date dateToConvert = calendar.getTime(); + + // when + LocalDateTime localDateTime = DateToLocalDateTimeConverter.convertToLocalDateTimeViaMilisecond(dateToConvert); + + // then + assertEquals(2010, localDateTime.get(ChronoField.YEAR)); + assertEquals(11, localDateTime.get(ChronoField.MONTH_OF_YEAR)); + assertEquals(10, localDateTime.get(ChronoField.DAY_OF_MONTH)); + assertEquals(8, localDateTime.get(ChronoField.HOUR_OF_DAY)); + assertEquals(20, localDateTime.get(ChronoField.MINUTE_OF_HOUR)); + } + + @Test + public void shouldReturn10thNovember2010time8hour20minWhenConvertViaSqlTimestamp() { + // given + Calendar calendar = Calendar.getInstance(); + calendar.set(2010, 10, 10, 8, 20); + Date dateToConvert = calendar.getTime(); + + // when + LocalDateTime localDateTime = DateToLocalDateTimeConverter.convertToLocalDateTimeViaSqlTimestamp(dateToConvert); + + // then + assertEquals(2010, localDateTime.get(ChronoField.YEAR)); + assertEquals(11, localDateTime.get(ChronoField.MONTH_OF_YEAR)); + assertEquals(10, localDateTime.get(ChronoField.DAY_OF_MONTH)); + assertEquals(8, localDateTime.get(ChronoField.HOUR_OF_DAY)); + assertEquals(20, localDateTime.get(ChronoField.MINUTE_OF_HOUR)); + } + + @Test + public void shouldReturn10thNovember2010time8hour20minWhenConvertToLocalDateTime() { + // given + Calendar calendar = Calendar.getInstance(); + calendar.set(2010, 10, 10, 8, 20); + Date dateToConvert = calendar.getTime(); + // when LocalDateTime localDateTime = DateToLocalDateTimeConverter.convertToLocalDateTime(dateToConvert); diff --git a/core-java-8/src/test/java/com/baeldung/datetime/LocalDateTimeToDateConverterTest.java b/core-java-9/src/test/java/com/baeldung/java9/datetime/LocalDateTimeToDateConverterTest.java similarity index 97% rename from core-java-8/src/test/java/com/baeldung/datetime/LocalDateTimeToDateConverterTest.java rename to core-java-9/src/test/java/com/baeldung/java9/datetime/LocalDateTimeToDateConverterTest.java index 519fa69f04..2c6898381f 100644 --- a/core-java-8/src/test/java/com/baeldung/datetime/LocalDateTimeToDateConverterTest.java +++ b/core-java-9/src/test/java/com/baeldung/java9/datetime/LocalDateTimeToDateConverterTest.java @@ -1,7 +1,7 @@ /** * */ -package com.baeldung.datetime; +package com.baeldung.java9.datetime; import static org.junit.Assert.assertEquals; diff --git a/core-java-8/src/test/java/com/baeldung/datetime/LocalDateToDateConverterTest.java b/core-java-9/src/test/java/com/baeldung/java9/datetime/LocalDateToDateConverterTest.java similarity index 97% rename from core-java-8/src/test/java/com/baeldung/datetime/LocalDateToDateConverterTest.java rename to core-java-9/src/test/java/com/baeldung/java9/datetime/LocalDateToDateConverterTest.java index c1da3af052..7f20d5d2d2 100644 --- a/core-java-8/src/test/java/com/baeldung/datetime/LocalDateToDateConverterTest.java +++ b/core-java-9/src/test/java/com/baeldung/java9/datetime/LocalDateToDateConverterTest.java @@ -1,7 +1,7 @@ /** * */ -package com.baeldung.datetime; +package com.baeldung.java9.datetime; import static org.junit.Assert.assertEquals; From 4b0a98f6b0fc59bd7ff8aff2fd9cace14791d5e1 Mon Sep 17 00:00:00 2001 From: Ahmad Alsanie Date: Fri, 8 Dec 2017 15:50:47 +0200 Subject: [PATCH 04/60] init commit - a guide to java initialization classes and resources --- .../baeldung/initializationguide/User.java | 53 ++++++++++++++ .../initializationguide/UserTest.java | 70 +++++++++++++++++++ core-java/src/test/resources/user.data | 0 3 files changed, 123 insertions(+) create mode 100644 core-java/src/main/java/com/baeldung/initializationguide/User.java create mode 100644 core-java/src/test/java/com/baeldung/initializationguide/UserTest.java create mode 100644 core-java/src/test/resources/user.data diff --git a/core-java/src/main/java/com/baeldung/initializationguide/User.java b/core-java/src/main/java/com/baeldung/initializationguide/User.java new file mode 100644 index 0000000000..e2e3f051dd --- /dev/null +++ b/core-java/src/main/java/com/baeldung/initializationguide/User.java @@ -0,0 +1,53 @@ +package com.baeldung.initializationguide; + +import java.io.Serializable; + +public class User implements Serializable, Cloneable { + private static final long serialVersionUID = 1L; + static String forum; + private String name; + private int id; + + { + id = 0; + System.out.println("Instance Initializer"); + } + + static { + forum = "Java"; + System.out.println("Static Initializer"); + } + + public User(String name, int id) { + super(); + this.name = name; + this.id = id; + } + + public User() { + System.out.println("Constructor"); + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public int getId() { + return id; + } + + public void setId(int id) { + this.id = id; + } + + @Override + protected Object clone() throws CloneNotSupportedException { + return this; + } + +} + diff --git a/core-java/src/test/java/com/baeldung/initializationguide/UserTest.java b/core-java/src/test/java/com/baeldung/initializationguide/UserTest.java new file mode 100644 index 0000000000..d0116d03b8 --- /dev/null +++ b/core-java/src/test/java/com/baeldung/initializationguide/UserTest.java @@ -0,0 +1,70 @@ +package com.baeldung.initializationguide; +import org.junit.Before; +import org.junit.Test; + +import static org.assertj.core.api.Assertions.*; + +import java.io.BufferedInputStream; +import java.io.BufferedOutputStream; +import java.io.FileInputStream; +import java.io.FileNotFoundException; +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.ObjectInputStream; +import java.io.ObjectOutputStream; +import java.lang.reflect.InvocationTargetException; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; + +public class UserTest { + + + Path userData; + + @Before + public void init() throws IOException { + userData = Paths.get("src/test/resources/user.data"); + if (!Files.exists(userData)) + Files.createFile(userData); + } + + @Test + public void givenUserInstance_whenIntializedWithNew_thenInstanceIsNotNull() { + User user = new User("Alice", 1); + assertThat(user).isNotNull(); + } + + @Test + public void givenUserInstance_whenInitializedWithReflection_thenInstanceIsNotNull() throws InstantiationException, IllegalAccessException, IllegalArgumentException, InvocationTargetException, NoSuchMethodException, SecurityException { + User user = User.class.getConstructor(String.class, int.class) + .newInstance("Alice", 2); + assertThat(user).isNotNull(); + } + + @Test + public void givenUserInstance_whenCopiedWithClone_thenExactMatchIsCreated() throws CloneNotSupportedException { + User user = new User("Alice", 3); + User clonedUser = (User) user.clone(); + assertThat(clonedUser).isEqualTo(user); + } + + @Test + public void givenFileWithBitsRepresentingUser_whenDeserialized_thenUserIsCreated() throws FileNotFoundException, IOException, ClassNotFoundException { + try (ObjectOutputStream out = new ObjectOutputStream(new BufferedOutputStream(new FileOutputStream(userData.toFile())))) { + User user = new User("Tom", 0); + out.writeObject(user); + } + try (ObjectInputStream in = new ObjectInputStream(new BufferedInputStream(new FileInputStream(userData.toFile())))) { + User deserializedUser = (User) in.readObject(); + assertThat(deserializedUser).isNotNull(); + } + } + + @Test + public void givenUserInstance_whenValuesAreNotInitialized_thenUserNameAndIdReturnDefault() { + User user = new User(); + assertThat(user.getName()).isNull(); + assertThat(user.getId() == 0); + } +} diff --git a/core-java/src/test/resources/user.data b/core-java/src/test/resources/user.data new file mode 100644 index 0000000000..e69de29bb2 From 33198c73e179c4d7b34ec88f1ead04c0489d1fc9 Mon Sep 17 00:00:00 2001 From: "dhrubajyoti.bhattacharjee" Date: Wed, 13 Dec 2017 00:49:49 +0530 Subject: [PATCH 05/60] BAEL-1207 File search using Lucene --- lucene/.gitignore | 1 + .../com/baeldung/lucene/LuceneFileSearch.java | 80 +++++++++++++++++++ .../baeldung/lucene/LuceneFileSearchTest.java | 32 ++++++++ lucene/src/test/resources/data/file1.txt | 3 + 4 files changed, 116 insertions(+) create mode 100644 lucene/.gitignore create mode 100644 lucene/src/main/java/com/baeldung/lucene/LuceneFileSearch.java create mode 100644 lucene/src/test/java/com/baeldung/lucene/LuceneFileSearchTest.java create mode 100644 lucene/src/test/resources/data/file1.txt diff --git a/lucene/.gitignore b/lucene/.gitignore new file mode 100644 index 0000000000..3ed87faec7 --- /dev/null +++ b/lucene/.gitignore @@ -0,0 +1 @@ +/index/ diff --git a/lucene/src/main/java/com/baeldung/lucene/LuceneFileSearch.java b/lucene/src/main/java/com/baeldung/lucene/LuceneFileSearch.java new file mode 100644 index 0000000000..1d090d55fc --- /dev/null +++ b/lucene/src/main/java/com/baeldung/lucene/LuceneFileSearch.java @@ -0,0 +1,80 @@ +package com.baeldung.lucene; + +import java.io.File; +import java.io.FileReader; +import java.io.IOException; +import java.net.URISyntaxException; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.ArrayList; +import java.util.List; + +import org.apache.lucene.analysis.standard.StandardAnalyzer; +import org.apache.lucene.document.Document; +import org.apache.lucene.document.Field; +import org.apache.lucene.document.StringField; +import org.apache.lucene.document.TextField; +import org.apache.lucene.index.DirectoryReader; +import org.apache.lucene.index.IndexReader; +import org.apache.lucene.index.IndexWriter; +import org.apache.lucene.index.IndexWriterConfig; +import org.apache.lucene.queryparser.classic.ParseException; +import org.apache.lucene.queryparser.classic.QueryParser; +import org.apache.lucene.search.IndexSearcher; +import org.apache.lucene.search.Query; +import org.apache.lucene.search.ScoreDoc; +import org.apache.lucene.search.TopDocs; +import org.apache.lucene.store.Directory; + +public class LuceneFileSearch { + + private Directory indexDirectory; + private StandardAnalyzer analyzer; + + public LuceneFileSearch(Directory fsDirectory, StandardAnalyzer analyzer) { + super(); + this.indexDirectory = fsDirectory; + this.analyzer = analyzer; + } + + public void addFileToIndex(String filepath) throws IOException, URISyntaxException { + + Path path = Paths.get(getClass().getClassLoader().getResource(filepath).toURI()); + File file = path.toFile(); + IndexWriterConfig indexWriterConfig = new IndexWriterConfig(analyzer); + IndexWriter indexWriter = new IndexWriter(indexDirectory, indexWriterConfig); + Document document = new Document(); + + FileReader fileReader = new FileReader(file); + document.add(new TextField("contents", fileReader)); + document.add(new StringField("path", file.getPath(), Field.Store.YES)); + document.add(new StringField("filename", file.getName(), Field.Store.YES)); + + indexWriter.addDocument(document); + + indexWriter.close(); + } + + public List searchFiles(String inField, String queryString) { + try { + Query query = new QueryParser(inField, analyzer).parse(queryString); + + IndexReader indexReader = DirectoryReader.open(indexDirectory); + IndexSearcher searcher = new IndexSearcher(indexReader); + TopDocs topDocs = searcher.search(query, 10); + List documents = new ArrayList<>(); + for (ScoreDoc scoreDoc : topDocs.scoreDocs) { + documents.add(searcher.doc(scoreDoc.doc)); + } + + return documents; + } catch (IOException | ParseException e) { + e.printStackTrace(); + } + return null; + + } + +} + + diff --git a/lucene/src/test/java/com/baeldung/lucene/LuceneFileSearchTest.java b/lucene/src/test/java/com/baeldung/lucene/LuceneFileSearchTest.java new file mode 100644 index 0000000000..4345057ff7 --- /dev/null +++ b/lucene/src/test/java/com/baeldung/lucene/LuceneFileSearchTest.java @@ -0,0 +1,32 @@ +package com.baeldung.lucene; + +import java.io.IOException; +import java.net.URISyntaxException; +import java.nio.file.Paths; +import java.util.List; + +import org.apache.lucene.analysis.standard.StandardAnalyzer; +import org.apache.lucene.document.Document; +import org.apache.lucene.store.Directory; +import org.apache.lucene.store.FSDirectory; +import org.junit.Assert; +import org.junit.Test; + +public class LuceneFileSearchTest { + + @Test + public void givenSearchQueryWhenFetchedFileNamehenCorrect() throws IOException, URISyntaxException { + String indexPath = "index"; + String dataPath = "data/file1.txt"; + + Directory directory = FSDirectory.open(Paths.get(indexPath)); + LuceneFileSearch luceneFileSearch = new LuceneFileSearch(directory, new StandardAnalyzer()); + + luceneFileSearch.addFileToIndex(dataPath); + + List docs = luceneFileSearch.searchFiles("contents", "consectetur"); + + Assert.assertEquals("file1.txt", docs.get(0).get("filename")); + } + +} \ No newline at end of file diff --git a/lucene/src/test/resources/data/file1.txt b/lucene/src/test/resources/data/file1.txt new file mode 100644 index 0000000000..6f915d3927 --- /dev/null +++ b/lucene/src/test/resources/data/file1.txt @@ -0,0 +1,3 @@ +Cras auctor viverra arcu, id consequat diam posuere id. Pellentesque hendrerit felis tortor, et ornare nibh ullamcorper sed. Aenean sed mauris vitae purus auctor gravida. Nam aliquam egestas orci, sit amet imperdiet leo porttitor quis. Integer commodo sodales orci, ultrices vulputate arcu vestibulum non. Nunc at tellus id urna tristique ultrices in in massa. Vestibulum laoreet ullamcorper nulla vel porttitor. Duis blandit commodo elit at consequat. Vestibulum faucibus lectus eget mi tincidunt, quis molestie lacus mollis. Duis elementum urna eros, non iaculis est facilisis in. Praesent et neque vel ipsum viverra euismod ac ac metus. Ut vitae libero ex. + +Proin consectetur, neque nec feugiat facilisis, metus libero mollis arcu, id pharetra nibh sapien in elit. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nam pulvinar fringilla orci in posuere. Duis ut turpis dignissim nisl eleifend posuere nec a massa. Cras fringilla iaculis ipsum a aliquet. Nunc ultrices nisl ipsum, vitae consectetur tellus vehicula in. Aliquam lacinia elit nec scelerisque dapibus. Duis pharetra mauris vitae quam tincidunt, viverra iaculis orci iaculis. Nunc gravida sem arcu, et mollis leo porttitor nec. Ut dictum tempor est, at fringilla ex feugiat sed. Nullam purus mi, aliquet eu libero ut, finibus efficitur metus. \ No newline at end of file From 9e8e17b6893dad885872a5c5ff01b1670c1c484d Mon Sep 17 00:00:00 2001 From: abialas Date: Wed, 13 Dec 2017 22:45:14 +0100 Subject: [PATCH 06/60] BAEL-1304 --- persistence-modules/spring-data-eclipselink | 1 + 1 file changed, 1 insertion(+) create mode 160000 persistence-modules/spring-data-eclipselink diff --git a/persistence-modules/spring-data-eclipselink b/persistence-modules/spring-data-eclipselink new file mode 160000 index 0000000000..dd02630267 --- /dev/null +++ b/persistence-modules/spring-data-eclipselink @@ -0,0 +1 @@ +Subproject commit dd02630267da27e13452c5f91a0ccf7ed3743cbb From 92770e26eb15335f6215735790dd090af462a535 Mon Sep 17 00:00:00 2001 From: abialas Date: Wed, 13 Dec 2017 23:14:51 +0100 Subject: [PATCH 07/60] remove folder --- persistence-modules/spring-data-eclipselink | 1 - 1 file changed, 1 deletion(-) delete mode 160000 persistence-modules/spring-data-eclipselink diff --git a/persistence-modules/spring-data-eclipselink b/persistence-modules/spring-data-eclipselink deleted file mode 160000 index dd02630267..0000000000 --- a/persistence-modules/spring-data-eclipselink +++ /dev/null @@ -1 +0,0 @@ -Subproject commit dd02630267da27e13452c5f91a0ccf7ed3743cbb From 3210112a451ca39ed997a4d418f5508e8a666126 Mon Sep 17 00:00:00 2001 From: abialas Date: Wed, 13 Dec 2017 23:15:59 +0100 Subject: [PATCH 08/60] BAEL-1304 add files --- .../spring-data-eclipselink/pom.xml | 79 +++++++++++++++++++ .../EclipselinkSpringDataApplication.java | 12 +++ .../springdata/JpaConfiguration.java | 44 +++++++++++ .../eclipselink/springdata/model/Person.java | 43 ++++++++++ .../springdata/repo/PersonsRepository.java | 14 ++++ .../src/main/resources/application.properties | 2 + .../repo/PersonsRepositoryTest.java | 59 ++++++++++++++ 7 files changed, 253 insertions(+) create mode 100644 persistence-modules/spring-data-eclipselink/pom.xml create mode 100644 persistence-modules/spring-data-eclipselink/src/main/java/com/baeldung/eclipselink/springdata/EclipselinkSpringDataApplication.java create mode 100644 persistence-modules/spring-data-eclipselink/src/main/java/com/baeldung/eclipselink/springdata/JpaConfiguration.java create mode 100644 persistence-modules/spring-data-eclipselink/src/main/java/com/baeldung/eclipselink/springdata/model/Person.java create mode 100644 persistence-modules/spring-data-eclipselink/src/main/java/com/baeldung/eclipselink/springdata/repo/PersonsRepository.java create mode 100644 persistence-modules/spring-data-eclipselink/src/main/resources/application.properties create mode 100644 persistence-modules/spring-data-eclipselink/src/test/java/com/baeldung/eclipselink/springdata/repo/PersonsRepositoryTest.java diff --git a/persistence-modules/spring-data-eclipselink/pom.xml b/persistence-modules/spring-data-eclipselink/pom.xml new file mode 100644 index 0000000000..147901dc90 --- /dev/null +++ b/persistence-modules/spring-data-eclipselink/pom.xml @@ -0,0 +1,79 @@ + + + 4.0.0 + + com.baeldung + spring-data-eclipselink + 1.0.0-SNAPSHOT + + spring-data-eclipselink + + + com.baeldung + parent-modules + 1.0.0-SNAPSHOT + ../../ + + + + UTF-8 + UTF-8 + 1.8 + 1.5.9.RELEASE + 2.7.0 + 1.4.196 + + + + + org.springframework.boot + spring-boot-dependencies + ${spring.version} + pom + import + + + org.springframework.boot + spring-boot-starter-data-jpa + ${spring.version} + + + org.hibernate + hibernate-entitymanager + + + org.hibernate + hibernate-core + + + + + org.springframework.boot + spring-boot-starter-test + ${spring.version} + test + + + org.eclipse.persistence + org.eclipse.persistence.jpa + ${eclipselink.version} + + + com.h2database + h2 + runtime + ${h2.version} + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + + diff --git a/persistence-modules/spring-data-eclipselink/src/main/java/com/baeldung/eclipselink/springdata/EclipselinkSpringDataApplication.java b/persistence-modules/spring-data-eclipselink/src/main/java/com/baeldung/eclipselink/springdata/EclipselinkSpringDataApplication.java new file mode 100644 index 0000000000..63ce778022 --- /dev/null +++ b/persistence-modules/spring-data-eclipselink/src/main/java/com/baeldung/eclipselink/springdata/EclipselinkSpringDataApplication.java @@ -0,0 +1,12 @@ +package com.baeldung.eclipselink.springdata; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class EclipselinkSpringDataApplication { + + public static void main(String[] args) { + SpringApplication.run(EclipselinkSpringDataApplication.class, args); + } +} diff --git a/persistence-modules/spring-data-eclipselink/src/main/java/com/baeldung/eclipselink/springdata/JpaConfiguration.java b/persistence-modules/spring-data-eclipselink/src/main/java/com/baeldung/eclipselink/springdata/JpaConfiguration.java new file mode 100644 index 0000000000..60ff7909be --- /dev/null +++ b/persistence-modules/spring-data-eclipselink/src/main/java/com/baeldung/eclipselink/springdata/JpaConfiguration.java @@ -0,0 +1,44 @@ +package com.baeldung.eclipselink.springdata; + +import org.eclipse.persistence.config.PersistenceUnitProperties; +import org.springframework.beans.factory.ObjectProvider; +import org.springframework.boot.autoconfigure.orm.jpa.JpaBaseConfiguration; +import org.springframework.boot.autoconfigure.orm.jpa.JpaProperties; +import org.springframework.boot.autoconfigure.transaction.TransactionManagerCustomizers; +import org.springframework.context.annotation.Configuration; +import org.springframework.instrument.classloading.InstrumentationLoadTimeWeaver; +import org.springframework.orm.jpa.vendor.AbstractJpaVendorAdapter; +import org.springframework.orm.jpa.vendor.EclipseLinkJpaVendorAdapter; +import org.springframework.transaction.jta.JtaTransactionManager; + +import javax.sql.DataSource; +import java.util.HashMap; +import java.util.Map; + +/** + * Created by adam. + */ +@Configuration +public class JpaConfiguration extends JpaBaseConfiguration { + + protected JpaConfiguration(DataSource dataSource, JpaProperties properties, ObjectProvider jtaTransactionManager, ObjectProvider transactionManagerCustomizers) { + super(dataSource, properties, jtaTransactionManager, transactionManagerCustomizers); + } + + @Override + protected AbstractJpaVendorAdapter createJpaVendorAdapter() { + return new EclipseLinkJpaVendorAdapter(); + } + + @Override + protected Map getVendorProperties() { + HashMap map = new HashMap<>(); + map.put(PersistenceUnitProperties.WEAVING, detectWeavingMode()); + map.put(PersistenceUnitProperties.DDL_GENERATION, "drop-and-create-tables"); + return map; + } + + private String detectWeavingMode() { + return InstrumentationLoadTimeWeaver.isInstrumentationAvailable() ? "true" : "static"; + } +} diff --git a/persistence-modules/spring-data-eclipselink/src/main/java/com/baeldung/eclipselink/springdata/model/Person.java b/persistence-modules/spring-data-eclipselink/src/main/java/com/baeldung/eclipselink/springdata/model/Person.java new file mode 100644 index 0000000000..75161875bd --- /dev/null +++ b/persistence-modules/spring-data-eclipselink/src/main/java/com/baeldung/eclipselink/springdata/model/Person.java @@ -0,0 +1,43 @@ +package com.baeldung.eclipselink.springdata.model; + +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; + +/** + * Created by adam. + */ +@Entity +public class Person { + + @Id + @GeneratedValue(strategy = GenerationType.SEQUENCE) + private Long id; + private String firstName; + private String lastName; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getFirstName() { + return firstName; + } + + public void setFirstName(String firstName) { + this.firstName = firstName; + } + + public String getLastName() { + return lastName; + } + + public void setLastName(String lastName) { + this.lastName = lastName; + } +} diff --git a/persistence-modules/spring-data-eclipselink/src/main/java/com/baeldung/eclipselink/springdata/repo/PersonsRepository.java b/persistence-modules/spring-data-eclipselink/src/main/java/com/baeldung/eclipselink/springdata/repo/PersonsRepository.java new file mode 100644 index 0000000000..86cd85d5fe --- /dev/null +++ b/persistence-modules/spring-data-eclipselink/src/main/java/com/baeldung/eclipselink/springdata/repo/PersonsRepository.java @@ -0,0 +1,14 @@ +package com.baeldung.eclipselink.springdata.repo; + +import org.springframework.data.repository.CrudRepository; + +import com.baeldung.eclipselink.springdata.model.Person; + +/** + * Created by adam. + */ +public interface PersonsRepository extends CrudRepository { + + Person findByFirstName(String firstName); + +} diff --git a/persistence-modules/spring-data-eclipselink/src/main/resources/application.properties b/persistence-modules/spring-data-eclipselink/src/main/resources/application.properties new file mode 100644 index 0000000000..549c0b4ada --- /dev/null +++ b/persistence-modules/spring-data-eclipselink/src/main/resources/application.properties @@ -0,0 +1,2 @@ +spring.datasource.url=jdbc:h2:mem:test +spring.jpa.show-sql=true \ No newline at end of file diff --git a/persistence-modules/spring-data-eclipselink/src/test/java/com/baeldung/eclipselink/springdata/repo/PersonsRepositoryTest.java b/persistence-modules/spring-data-eclipselink/src/test/java/com/baeldung/eclipselink/springdata/repo/PersonsRepositoryTest.java new file mode 100644 index 0000000000..4c24df9ee7 --- /dev/null +++ b/persistence-modules/spring-data-eclipselink/src/test/java/com/baeldung/eclipselink/springdata/repo/PersonsRepositoryTest.java @@ -0,0 +1,59 @@ +package com.baeldung.eclipselink.springdata.repo; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.annotation.DirtiesContext; +import org.springframework.test.context.junit4.SpringRunner; + +import com.baeldung.eclipselink.springdata.model.Person; +import com.baeldung.eclipselink.springdata.repo.PersonsRepository; + +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.core.IsEqual.equalTo; +import static org.hamcrest.core.IsNull.notNullValue; + +/** + * Created by adam. + */ +@RunWith(SpringRunner.class) +@SpringBootTest +@DirtiesContext(classMode = DirtiesContext.ClassMode.BEFORE_EACH_TEST_METHOD) +public class PersonsRepositoryTest { + + @Autowired + private PersonsRepository personsRepository; + + @Test + public void shouldAddOnePersonToDB() { + // when + personsRepository.save(new Person()); + + // then + assertThat(personsRepository.findAll() + .spliterator() + .getExactSizeIfKnown(), equalTo(1l)); + } + + @Test + public void shouldFindOnePersonWithNameAdam() { + // given + Person person1 = new Person(); + person1.setFirstName("Adam"); + + Person person2 = new Person(); + person2.setFirstName("Dave"); + + personsRepository.save(person1); + personsRepository.save(person2); + + // when + Person foundPerson = personsRepository.findByFirstName("Adam"); + + // then + assertThat(foundPerson.getFirstName(), equalTo("Adam")); + assertThat(foundPerson.getId(), notNullValue()); + } + +} From b1323faaf37adb8c1416e99c96fa27d4e98d4f04 Mon Sep 17 00:00:00 2001 From: abialas Date: Wed, 13 Dec 2017 23:20:56 +0100 Subject: [PATCH 09/60] BAEL-1304 add module spring-data-eclipselink --- pom.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/pom.xml b/pom.xml index 2c611e6efe..3e38efec4c 100644 --- a/pom.xml +++ b/pom.xml @@ -172,6 +172,7 @@ persistence-modules/spring-hibernate-3 spring-hibernate4 persistence-modules/spring-hibernate-5 + persistence-modules/spring-data-eclipselink spring-integration spring-jersey spring-jmeter-jenkins From 07efbf9c01baf275cc34a595af9ac9c9357c1757 Mon Sep 17 00:00:00 2001 From: Dominik Date: Wed, 13 Dec 2017 23:53:42 +0100 Subject: [PATCH 10/60] VarHandles --- .../java9/varhandles/VariableHandlesTest.java | 91 +++++++++++++++++++ 1 file changed, 91 insertions(+) create mode 100644 core-java-9/src/test/java/com/baeldung/java9/varhandles/VariableHandlesTest.java diff --git a/core-java-9/src/test/java/com/baeldung/java9/varhandles/VariableHandlesTest.java b/core-java-9/src/test/java/com/baeldung/java9/varhandles/VariableHandlesTest.java new file mode 100644 index 0000000000..210c4f0654 --- /dev/null +++ b/core-java-9/src/test/java/com/baeldung/java9/varhandles/VariableHandlesTest.java @@ -0,0 +1,91 @@ +package com.baeldung.java9.varhandles; + +import org.junit.Assert; +import org.junit.Test; + +import java.lang.invoke.MethodHandles; +import java.lang.invoke.VarHandle; + +public class VariableHandlesTest { + public int publicTestVariable = 1; + private int privateTestVariable = 1; + public int variableToSet = 1; + public int variableToCompareAndSet = 1; + public int variableToGetAndAdd = 0; + public byte variableToBitwiseOr = 0; + @Test + public void whenVariableHandleForPublicVariableIsCreated_ThenItIsInitializedProperly() + throws NoSuchFieldException, IllegalAccessException { + VarHandle publicIntHandle = MethodHandles.lookup() + .in(VariableHandlesTest.class) + .findVarHandle(VariableHandlesTest.class,"publicTestVariable", int.class); + Assert.assertEquals(1, publicIntHandle.coordinateTypes().size()); + Assert.assertEquals(VariableHandlesTest.class, publicIntHandle.coordinateTypes().get(0)); + + } + + @Test + public void whenVariableHandleForPrivateVariableIsCreated_ThenItIsInitializedProperly() + throws NoSuchFieldException, IllegalAccessException { + VarHandle privateIntHandle = MethodHandles.privateLookupIn(VariableHandlesTest.class, MethodHandles.lookup()) + .findVarHandle(VariableHandlesTest.class,"privateTestVariable", int.class); + Assert.assertNotNull(privateIntHandle); + Assert.assertEquals(1, privateIntHandle.coordinateTypes().size()); + Assert.assertEquals(VariableHandlesTest.class, privateIntHandle.coordinateTypes().get(0)); + + } + + @Test + public void whenVariableHandleForArrayVariableIsCreated_ThenItIsInitializedProperly() + throws NoSuchFieldException, IllegalAccessException { + VarHandle arrayVarHandle = MethodHandles.arrayElementVarHandle(int[].class); + Assert.assertEquals(2, arrayVarHandle.coordinateTypes().size()); + Assert.assertEquals(int[].class, arrayVarHandle.coordinateTypes().get(0)); + } + + @Test + public void givenVarHandle_whenGetIsInvoked_ThenValueOfVariableIsReturned() throws NoSuchFieldException, IllegalAccessException { + VarHandle publicIntHandle = MethodHandles.lookup() + .in(VariableHandlesTest.class) + .findVarHandle(VariableHandlesTest.class,"publicTestVariable", int.class); + Assert.assertEquals(1, publicIntHandle.get(this)); + } + + @Test + public void givenVarHandle_whenSetIsInvoked_ThenValueOfVariableIsChanged() throws NoSuchFieldException, IllegalAccessException { + VarHandle publicIntHandle = MethodHandles.lookup() + .in(VariableHandlesTest.class) + .findVarHandle(VariableHandlesTest.class,"variableToSet", int.class); + publicIntHandle.set(this, 15); + Assert.assertEquals(15, publicIntHandle.get(this)); + } + + @Test + public void givenVarHandle_whenCompareAndSetIsInvoked_ThenValueOfVariableIsChanged() throws NoSuchFieldException, IllegalAccessException { + VarHandle publicIntHandle = MethodHandles.lookup() + .in(VariableHandlesTest.class) + .findVarHandle(VariableHandlesTest.class,"variableToCompareAndSet", int.class); + publicIntHandle.compareAndSet(this, 1,100); + Assert.assertEquals(100, publicIntHandle.get(this)); + } + + @Test + public void givenVarHandle_whenGetAndAddIsInvoked_ThenValueOfVariableIsChanged() throws NoSuchFieldException, IllegalAccessException { + VarHandle publicIntHandle = MethodHandles.lookup() + .in(VariableHandlesTest.class) + .findVarHandle(VariableHandlesTest.class,"variableToGetAndAdd", int.class); + int before = (int) publicIntHandle.getAndAdd(this, 200); + Assert.assertEquals(0, before); + Assert.assertEquals(200, publicIntHandle.get(this)); + } + + @Test + public void givenVarHandle_whenGetAndBitwiseOrIsInvoked_ThenValueOfVariableIsChanged() throws NoSuchFieldException, IllegalAccessException { + VarHandle publicIntHandle = MethodHandles.lookup() + .in(VariableHandlesTest.class) + .findVarHandle(VariableHandlesTest.class,"variableToBitwiseOr", byte.class); + byte before = (byte) publicIntHandle.getAndBitwiseOr(this, (byte) 127); + Assert.assertEquals(0, before); + Assert.assertEquals(127, variableToBitwiseOr); + } +} From 0d07e421ff2564c63923c9be1b80519b618787bc Mon Sep 17 00:00:00 2001 From: shouvikbhattacharya Date: Thu, 14 Dec 2017 20:15:00 +0530 Subject: [PATCH 11/60] BAEL-1433: Commit changes for treeset article. --- .../baeldung/collection/WhenUsingTreeSet.java | 105 ++++++++++++++++++ 1 file changed, 105 insertions(+) create mode 100644 core-java/src/test/java/com/baeldung/collection/WhenUsingTreeSet.java diff --git a/core-java/src/test/java/com/baeldung/collection/WhenUsingTreeSet.java b/core-java/src/test/java/com/baeldung/collection/WhenUsingTreeSet.java new file mode 100644 index 0000000000..48aff4d437 --- /dev/null +++ b/core-java/src/test/java/com/baeldung/collection/WhenUsingTreeSet.java @@ -0,0 +1,105 @@ +package com.baeldung.collection; + +import java.util.ConcurrentModificationException; +import java.util.Iterator; +import java.util.Set; +import java.util.TreeSet; + +import org.junit.Assert; +import org.junit.Test; + +public class WhenUsingTreeSet { + + @Test + public void whenAddingElement_shouldAddElement() { + Set treeSet = new TreeSet<>(); + Assert.assertTrue(treeSet.add("String Added")); + } + + @Test + public void whenCheckingForElement_shouldSearchForElement() { + Set treeSetContains = new TreeSet<>(); + treeSetContains.add("String Added"); + Assert.assertTrue(treeSetContains.contains("String Added")); + } + + @Test + public void whenRemovingElement_shouldRemoveElement() { + Set removeFromTreeSet = new TreeSet<>(); + removeFromTreeSet.add("String Added"); + Assert.assertTrue(removeFromTreeSet.remove("String Added")); + } + + @Test + public void whenClearingTreeSet_shouldClearTreeSet() { + Set clearTreeSet = new TreeSet<>(); + clearTreeSet.add("String Added"); + clearTreeSet.clear(); + Assert.assertTrue(clearTreeSet.isEmpty()); + } + + @Test + public void whenCheckingTheSizeOfTreeSet_shouldReturnThesize() { + Set treeSetSize = new TreeSet<>(); + treeSetSize.add("String Added"); + Assert.assertEquals(1, treeSetSize.size()); + } + + @Test + public void whenCheckingForEmptyTreeSet_shouldCheckForEmpty() { + Set emptyTreeSet = new TreeSet<>(); + Assert.assertTrue(emptyTreeSet.isEmpty()); + } + + @Test + public void whenIteratingTreeSet_shouldIterateTreeSetInAscendingOrder() { + Set treeSet = new TreeSet<>(); + treeSet.add("First"); + treeSet.add("Second"); + treeSet.add("Third"); + Iterator itr = treeSet.iterator(); + while (itr.hasNext()) { + System.out.println(itr.next()); + } + } + + @Test + public void whenIteratingTreeSet_shouldIterateTreeSetInDescendingOrder() { + TreeSet treeSet = new TreeSet<>(); + treeSet.add("First"); + treeSet.add("Second"); + treeSet.add("Third"); + Iterator itr = treeSet.descendingIterator(); + while (itr.hasNext()) { + System.out.println(itr.next()); + } + } + + @Test(expected = ConcurrentModificationException.class) + public void whenModifyingTreeSetWhileIterating_shouldThrowException() { + Set treeSet = new TreeSet<>(); + treeSet.add("First"); + treeSet.add("Second"); + treeSet.add("Third"); + Iterator itr = treeSet.iterator(); + while (itr.hasNext()) { + itr.next(); + treeSet.remove("Second"); + } + } + + @Test + public void whenRemovingElementUsingIterator_shouldRemoveElement() { + Set treeSet = new TreeSet<>(); + treeSet.add("First"); + treeSet.add("Second"); + treeSet.add("Third"); + Iterator itr = treeSet.iterator(); + while (itr.hasNext()) { + String element = itr.next(); + if (element.equals("Second")) + itr.remove(); + } + Assert.assertEquals(2, treeSet.size()); + } +} From 778177333f5d319cac1fef3e78f72e43169b424b Mon Sep 17 00:00:00 2001 From: linhvovn Date: Thu, 14 Dec 2017 23:38:56 +0800 Subject: [PATCH 12/60] [tlinh2110@gmail.com] Add resource for Testing Method Security --- .../config/MethodSecurityConfig.java | 11 ++++ .../testmethodsecurity/entity/CustomUser.java | 39 +++++++++++++ .../repository/UserRoleRepository.java | 41 +++++++++++++ .../service/CustomUserDetailsService.java | 19 +++++++ .../service/SystemPropImpl.java | 26 +++++++++ .../service/SystemPropInterface.java | 11 ++++ .../service/UserRoleService.java | 29 ++++++++++ .../TestCustomSecurityContext.java | 41 +++++++++++++ .../TestMethodSecurity.java | 57 +++++++++++++++++++ .../testmethodsecurity/TestSystemProp.java | 54 ++++++++++++++++++ .../TestWithMockUserAtClassLevel.java | 34 +++++++++++ .../TestWithUserDetails.java | 35 ++++++++++++ .../WithMockJohnViewer.java | 10 ++++ .../testmethodsecurity/WithMockSysUser.java | 12 ++++ ...WithMockSysUserSecurityContextFactory.java | 28 +++++++++ 15 files changed, 447 insertions(+) create mode 100644 spring-security-core/src/main/java/org/baeldung/testmethodsecurity/config/MethodSecurityConfig.java create mode 100644 spring-security-core/src/main/java/org/baeldung/testmethodsecurity/entity/CustomUser.java create mode 100644 spring-security-core/src/main/java/org/baeldung/testmethodsecurity/repository/UserRoleRepository.java create mode 100644 spring-security-core/src/main/java/org/baeldung/testmethodsecurity/service/CustomUserDetailsService.java create mode 100644 spring-security-core/src/main/java/org/baeldung/testmethodsecurity/service/SystemPropImpl.java create mode 100644 spring-security-core/src/main/java/org/baeldung/testmethodsecurity/service/SystemPropInterface.java create mode 100644 spring-security-core/src/main/java/org/baeldung/testmethodsecurity/service/UserRoleService.java create mode 100644 spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestCustomSecurityContext.java create mode 100644 spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestMethodSecurity.java create mode 100644 spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestSystemProp.java create mode 100644 spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestWithMockUserAtClassLevel.java create mode 100644 spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestWithUserDetails.java create mode 100644 spring-security-core/src/test/java/org/baeldung/testmethodsecurity/WithMockJohnViewer.java create mode 100644 spring-security-core/src/test/java/org/baeldung/testmethodsecurity/WithMockSysUser.java create mode 100644 spring-security-core/src/test/java/org/baeldung/testmethodsecurity/WithMockSysUserSecurityContextFactory.java diff --git a/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/config/MethodSecurityConfig.java b/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/config/MethodSecurityConfig.java new file mode 100644 index 0000000000..1b2227f9be --- /dev/null +++ b/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/config/MethodSecurityConfig.java @@ -0,0 +1,11 @@ +package org.baeldung.testmethodsecurity.config; + +import org.springframework.context.annotation.Configuration; +import org.springframework.security.config.annotation.method.configuration.EnableGlobalMethodSecurity; +import org.springframework.security.config.annotation.method.configuration.GlobalMethodSecurityConfiguration; + +@Configuration +@EnableGlobalMethodSecurity(prePostEnabled = true, securedEnabled = true) +public class MethodSecurityConfig extends GlobalMethodSecurityConfiguration { + +} diff --git a/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/entity/CustomUser.java b/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/entity/CustomUser.java new file mode 100644 index 0000000000..8c5a5b2fb2 --- /dev/null +++ b/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/entity/CustomUser.java @@ -0,0 +1,39 @@ +package org.baeldung.testmethodsecurity.entity; + +import java.util.Collection; + +import org.springframework.security.core.GrantedAuthority; +import org.springframework.security.core.userdetails.User; + +@SuppressWarnings("serial") +public class CustomUser extends User{ + + private String nickName; + private int age; + + public CustomUser(String username, String password, Collection authorities) { + super(username, password, authorities); + } + + public CustomUser(String username, String password, Collection authorities,String nickName) { + super(username, password, authorities); + this.nickName = nickName; + } + + public String getNickName() { + return nickName; + } + + public void setNickName(String nickName) { + this.nickName = nickName; + } + + public int getAge() { + return age; + } + + public void setAge(int age) { + this.age = age; + } + +} diff --git a/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/repository/UserRoleRepository.java b/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/repository/UserRoleRepository.java new file mode 100644 index 0000000000..565b46262d --- /dev/null +++ b/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/repository/UserRoleRepository.java @@ -0,0 +1,41 @@ +package org.baeldung.testmethodsecurity.repository; + +import java.util.ArrayList; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; + +import org.baeldung.testmethodsecurity.entity.CustomUser; +import org.springframework.security.core.GrantedAuthority; +import org.springframework.security.core.authority.SimpleGrantedAuthority; +import org.springframework.security.core.userdetails.UsernameNotFoundException; +import org.springframework.stereotype.Service; + +@Service +public class UserRoleRepository { + + static Map DB_BASED_USER_MAPPING; + + static{ + DB_BASED_USER_MAPPING = new LinkedHashMap<>(); + DB_BASED_USER_MAPPING.put("jane", new CustomUser("jane","1234", getGrantedAuthorities("ROLE_USER","ROLE_VIEWER"),"jane")); + DB_BASED_USER_MAPPING.put("john", new CustomUser("john","1234", getGrantedAuthorities("ROLE_EDITOR","ROLE_ADMIN"),"jane")); + DB_BASED_USER_MAPPING.put("jack", new CustomUser("jack","1234", getGrantedAuthorities("ROLE_USER","ROLE_REVIEWER"),"jane")); + } + + private static List getGrantedAuthorities(String...roles){ + ArrayList authorities = new ArrayList<>(); + for (String role : roles){ + authorities.add(new SimpleGrantedAuthority(role)); + } + return authorities; + } + + public CustomUser loadUserByUserName(String username){ + if (DB_BASED_USER_MAPPING.containsKey(username)){ + return DB_BASED_USER_MAPPING.get(username); + } + throw new UsernameNotFoundException("User "+username+" cannot be found"); + } + +} diff --git a/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/service/CustomUserDetailsService.java b/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/service/CustomUserDetailsService.java new file mode 100644 index 0000000000..a5adcd3408 --- /dev/null +++ b/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/service/CustomUserDetailsService.java @@ -0,0 +1,19 @@ +package org.baeldung.testmethodsecurity.service; + +import org.baeldung.testmethodsecurity.repository.UserRoleRepository; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.stereotype.Service; + +@Service("userDetailService") +public class CustomUserDetailsService implements UserDetailsService { + + @Autowired + UserRoleRepository userRoleRepo; + + @Override + public UserDetails loadUserByUsername(String username) { + return userRoleRepo.loadUserByUserName(username); + } +} \ No newline at end of file diff --git a/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/service/SystemPropImpl.java b/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/service/SystemPropImpl.java new file mode 100644 index 0000000000..7307fb63fe --- /dev/null +++ b/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/service/SystemPropImpl.java @@ -0,0 +1,26 @@ +package org.baeldung.testmethodsecurity.service; + +import org.springframework.security.access.annotation.Secured; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.stereotype.Service; + +@Service +public class SystemPropImpl implements SystemPropInterface{ + + @PreAuthorize("permitAll") + @Override + public String getSystemName() { + return "Method Security"; + } + + @Override + public String sayHello(){ + return sayHi(); + } + + @Secured("ROLE_USER") + public String sayHi(){ + return "Hi"; + } + +} diff --git a/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/service/SystemPropInterface.java b/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/service/SystemPropInterface.java new file mode 100644 index 0000000000..b61d42083d --- /dev/null +++ b/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/service/SystemPropInterface.java @@ -0,0 +1,11 @@ +package org.baeldung.testmethodsecurity.service; + +public interface SystemPropInterface { + + String getSystemName(); + + String sayHello(); + + String sayHi(); + +} diff --git a/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/service/UserRoleService.java b/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/service/UserRoleService.java new file mode 100644 index 0000000000..46cab5918a --- /dev/null +++ b/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/service/UserRoleService.java @@ -0,0 +1,29 @@ +package org.baeldung.testmethodsecurity.service; + +import org.baeldung.testmethodsecurity.entity.CustomUser; +import org.baeldung.testmethodsecurity.repository.UserRoleRepository; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PostAuthorize; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.security.core.context.SecurityContext; +import org.springframework.security.core.context.SecurityContextHolder; +import org.springframework.stereotype.Service; + +@Service +public class UserRoleService { + + @Autowired + UserRoleRepository userRoleRepository; + + @PreAuthorize("hasRole('ROLE_VIEWER') or hasAuthority('SYS_ADMIN')") + public String getUserName(){ + SecurityContext securityContext = SecurityContextHolder.getContext(); + return securityContext.getAuthentication().getName(); + } + + @PostAuthorize("returnObject.username == authentication.principal.nickName") + public CustomUser loadUserDetail(String username){ + return userRoleRepository.loadUserByUserName(username); + } + +} diff --git a/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestCustomSecurityContext.java b/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestCustomSecurityContext.java new file mode 100644 index 0000000000..f231437e40 --- /dev/null +++ b/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestCustomSecurityContext.java @@ -0,0 +1,41 @@ +package org.baeldung.testmethodsecurity; + +import static org.junit.Assert.assertEquals; + +import org.baeldung.testmethodsecurity.service.UserRoleService; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.ComponentScan; +import org.springframework.context.annotation.Configuration; +import org.springframework.security.access.AccessDeniedException; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; + +@RunWith(SpringJUnit4ClassRunner.class) +@ContextConfiguration +public class TestCustomSecurityContext { + + @Autowired + UserRoleService userRoleService; + + @Configuration + @ComponentScan("org.baeldung.testmethodsecurity.*") + public static class SpringConfig { + + } + + @Test + @WithMockSysUser(systemUserName="jane") + public void whenJane_callGetUserName_thenOK(){ + String userName = userRoleService.getUserName(); + assertEquals("jane",userName); + } + + @Test(expected=AccessDeniedException.class) + @WithMockSysUser(systemUserName="john") + public void whenJohn_callGetUserName_thenFail(){ + userRoleService.getUserName(); + } + +} diff --git a/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestMethodSecurity.java b/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestMethodSecurity.java new file mode 100644 index 0000000000..8b7b095187 --- /dev/null +++ b/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestMethodSecurity.java @@ -0,0 +1,57 @@ +package org.baeldung.testmethodsecurity; + +import static org.junit.Assert.assertEquals; + +import org.baeldung.testmethodsecurity.service.UserRoleService; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.ComponentScan; +import org.springframework.context.annotation.Configuration; +import org.springframework.security.access.AccessDeniedException; +import org.springframework.security.test.context.support.WithAnonymousUser; +import org.springframework.security.test.context.support.WithMockUser; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; + +@RunWith(SpringJUnit4ClassRunner.class) +@ContextConfiguration +public class TestMethodSecurity{ + + @Autowired + UserRoleService userRoleService; + + @Configuration + @ComponentScan("org.baeldung.testmethodsecurity.*") + public static class SpringConfig { + + } + + @Test + @WithMockUser(username="john",roles={"VIEWER"}) + public void whenRoleViewer_callGetUserName_thenOK(){ + String userName = userRoleService.getUserName(); + assertEquals("john", userName); + } + + @Test + @WithMockUser(username="john",authorities={"SYS_ADMIN"}) + public void whenSysAdmin_callGetUserName_thenOK(){ + String userName = userRoleService.getUserName(); + assertEquals("john", userName); + } + + @Test(expected=AccessDeniedException.class) + @WithAnonymousUser + public void whenAnomynous_callGetUserName_thenFail(){ + userRoleService.getUserName(); + } + + @Test + @WithMockJohnViewer + public void whenJohnViewer_callGetUserName_thenOK(){ + String userName = userRoleService.getUserName(); + assertEquals("john", userName); + } + +} \ No newline at end of file diff --git a/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestSystemProp.java b/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestSystemProp.java new file mode 100644 index 0000000000..1a36cf7ae1 --- /dev/null +++ b/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestSystemProp.java @@ -0,0 +1,54 @@ +package org.baeldung.testmethodsecurity; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; + +import java.lang.reflect.Proxy; + +import org.baeldung.testmethodsecurity.service.SystemPropImpl; +import org.baeldung.testmethodsecurity.service.SystemPropInterface; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.ComponentScan; +import org.springframework.context.annotation.Configuration; +import org.springframework.security.authentication.AuthenticationCredentialsNotFoundException; +import org.springframework.security.test.context.support.WithMockUser; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; + +@RunWith(SpringJUnit4ClassRunner.class) +@ContextConfiguration +public class TestSystemProp{ + + @Autowired + SystemPropInterface systemProp; + + @Test + @WithMockUser(username="test") + public void checkSystemPropInstance(){ + assertFalse(systemProp instanceof SystemPropImpl); + assertTrue(systemProp instanceof SystemPropInterface); + assertTrue(systemProp instanceof Proxy); + + assertEquals("Method Security", systemProp.getSystemName()); + } + + @Test + public void whenNotAuthentication_callSayHello_thenOK(){ + String hello = systemProp.sayHello(); + assertEquals("Hi", hello); + } + + @Test(expected=AuthenticationCredentialsNotFoundException.class) + public void whenNotAuthentication_callSayHi_thenFailed(){ + systemProp.sayHi(); + } + + @Configuration + @ComponentScan("org.baeldung.testmethodsecurity.*") + public static class SpringConfig { + + } +} diff --git a/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestWithMockUserAtClassLevel.java b/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestWithMockUserAtClassLevel.java new file mode 100644 index 0000000000..aaa1b84294 --- /dev/null +++ b/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestWithMockUserAtClassLevel.java @@ -0,0 +1,34 @@ +package org.baeldung.testmethodsecurity; + +import static org.junit.Assert.assertEquals; + +import org.baeldung.testmethodsecurity.service.UserRoleService; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.ComponentScan; +import org.springframework.context.annotation.Configuration; +import org.springframework.security.test.context.support.WithMockUser; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; + +@RunWith(SpringJUnit4ClassRunner.class) +@ContextConfiguration +@WithMockUser(username="john",roles={"VIEWER"}) +public class TestWithMockUserAtClassLevel { + + @Test + public void whenRoleViewerLogged_callGetUserName_thenOK(){ + String currentUserName = userService.getUserName(); + assertEquals("john",currentUserName); + } + + @Autowired + UserRoleService userService; + + @Configuration + @ComponentScan("org.baeldung.testmethodsecurity.*") + public static class SpringConfig { + + } +} diff --git a/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestWithUserDetails.java b/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestWithUserDetails.java new file mode 100644 index 0000000000..751062e223 --- /dev/null +++ b/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestWithUserDetails.java @@ -0,0 +1,35 @@ +package org.baeldung.testmethodsecurity; + +import static org.junit.Assert.assertEquals; + +import org.baeldung.testmethodsecurity.entity.CustomUser; +import org.baeldung.testmethodsecurity.service.UserRoleService; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.ComponentScan; +import org.springframework.context.annotation.Configuration; +import org.springframework.security.test.context.support.WithUserDetails; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; + +@RunWith(SpringJUnit4ClassRunner.class) +@ContextConfiguration +public class TestWithUserDetails { + + @Autowired + UserRoleService userService; + + @Configuration + @ComponentScan("org.baeldung.testmethodsecurity.*") + public static class SpringConfig { + + } + + @Test + @WithUserDetails(value="john",userDetailsServiceBeanName="userDetailService") + public void whenJohn_callLoadUserDetail_thenOK(){ + CustomUser user = userService.loadUserDetail("jane"); + assertEquals("jane",user.getNickName()); + } +} diff --git a/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/WithMockJohnViewer.java b/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/WithMockJohnViewer.java new file mode 100644 index 0000000000..994fe2e69b --- /dev/null +++ b/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/WithMockJohnViewer.java @@ -0,0 +1,10 @@ +package org.baeldung.testmethodsecurity; + +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; + +import org.springframework.security.test.context.support.WithMockUser; + +@Retention(RetentionPolicy.RUNTIME) +@WithMockUser(value="john",roles="VIEWER") +public @interface WithMockJohnViewer { } \ No newline at end of file diff --git a/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/WithMockSysUser.java b/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/WithMockSysUser.java new file mode 100644 index 0000000000..34e6c78a9d --- /dev/null +++ b/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/WithMockSysUser.java @@ -0,0 +1,12 @@ +package org.baeldung.testmethodsecurity; + +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; + +import org.springframework.security.test.context.support.WithSecurityContext; + +@Retention(RetentionPolicy.RUNTIME) +@WithSecurityContext(factory = WithMockSysUserSecurityContextFactory.class) +public @interface WithMockSysUser { + String systemUserName(); +} \ No newline at end of file diff --git a/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/WithMockSysUserSecurityContextFactory.java b/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/WithMockSysUserSecurityContextFactory.java new file mode 100644 index 0000000000..820f6f2d07 --- /dev/null +++ b/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/WithMockSysUserSecurityContextFactory.java @@ -0,0 +1,28 @@ +package org.baeldung.testmethodsecurity; + +import org.baeldung.testmethodsecurity.entity.CustomUser; +import org.baeldung.testmethodsecurity.repository.UserRoleRepository; +import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.context.SecurityContext; +import org.springframework.security.core.context.SecurityContextHolder; +import org.springframework.security.test.context.support.WithSecurityContextFactory; + +public class WithMockSysUserSecurityContextFactory + implements WithSecurityContextFactory { + + @Override + public SecurityContext createSecurityContext(WithMockSysUser customUser) { + SecurityContext context = SecurityContextHolder.createEmptyContext(); + UserRoleRepository userRoleRepo = new UserRoleRepository(); + + CustomUser user = userRoleRepo.loadUserByUserName(customUser.systemUserName()); + + Authentication auth = + new UsernamePasswordAuthenticationToken(user, user.getPassword(), user.getAuthorities()); + + context.setAuthentication(auth); + return context; + } + +} \ No newline at end of file From ef4b5609653138d7d0d1654737087fd3f334312f Mon Sep 17 00:00:00 2001 From: shouvikbhattacharya Date: Thu, 14 Dec 2017 22:14:58 +0530 Subject: [PATCH 13/60] BAEL-1433: Article complete pushing final code. --- .../baeldung/collection/WhenUsingTreeSet.java | 118 ++++++++++++++++++ 1 file changed, 118 insertions(+) diff --git a/core-java/src/test/java/com/baeldung/collection/WhenUsingTreeSet.java b/core-java/src/test/java/com/baeldung/collection/WhenUsingTreeSet.java index 48aff4d437..887f6eba1d 100644 --- a/core-java/src/test/java/com/baeldung/collection/WhenUsingTreeSet.java +++ b/core-java/src/test/java/com/baeldung/collection/WhenUsingTreeSet.java @@ -1,8 +1,11 @@ package com.baeldung.collection; +import java.util.Comparator; import java.util.ConcurrentModificationException; import java.util.Iterator; +import java.util.NavigableSet; import java.util.Set; +import java.util.SortedSet; import java.util.TreeSet; import org.junit.Assert; @@ -10,6 +13,29 @@ import org.junit.Test; public class WhenUsingTreeSet { + private static class Element { + private Integer id; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + @Override + public String toString() { + // TODO Auto-generated method stub + return id.toString(); + } + } + + private Comparator comparator = (ele1, ele2) -> { + return ele1.getId() + .compareTo(ele2.getId()); + }; + @Test public void whenAddingElement_shouldAddElement() { Set treeSet = new TreeSet<>(); @@ -102,4 +128,96 @@ public class WhenUsingTreeSet { } Assert.assertEquals(2, treeSet.size()); } + + @Test(expected = NullPointerException.class) + public void whenAddingNullToNonEmptyTreeSet_shouldThrowException() { + Set treeSet = new TreeSet<>(); + treeSet.add("First"); + treeSet.add(null); + } + + @Test + public void whenCheckingFirstElement_shouldReturnFirstElement() { + TreeSet treeSet = new TreeSet<>(); + treeSet.add("First"); + Assert.assertEquals("First", treeSet.first()); + } + + @Test + public void whenCheckingLastElement_shouldReturnLastElement() { + TreeSet treeSet = new TreeSet<>(); + treeSet.add("First"); + treeSet.add("Last"); + Assert.assertEquals("Last", treeSet.last()); + } + + @Test + public void whenUsingComparator_shouldSortAndInsertElements() { + Set treeSet = new TreeSet<>(comparator); + Element ele1 = new Element(); + ele1.setId(100); + Element ele2 = new Element(); + ele2.setId(200); + + treeSet.add(ele1); + treeSet.add(ele2); + + System.out.println(treeSet); + } + + @Test + public void whenUsingHeadSet_shouldReturnElementsLessThanSpecifiedElement() { + Set treeSet = new TreeSet<>(comparator); + Element ele1 = new Element(); + ele1.setId(100); + Element ele2 = new Element(); + ele2.setId(200); + + treeSet.add(ele1); + treeSet.add(ele2); + + System.out.println(treeSet); + } + + @Test + public void whenUsingSubSet_shouldReturnSubSetElements() { + SortedSet treeSet = new TreeSet<>(); + treeSet.add(1); + treeSet.add(2); + treeSet.add(3); + treeSet.add(4); + treeSet.add(5); + treeSet.add(6); + + Set subSet = treeSet.subSet(2, 6); + System.out.println(subSet); + } + + @Test + public void whenUsingHeadSet_shouldReturnHeadSetElements() { + SortedSet treeSet = new TreeSet<>(); + treeSet.add(1); + treeSet.add(2); + treeSet.add(3); + treeSet.add(4); + treeSet.add(5); + treeSet.add(6); + + Set subSet = treeSet.headSet(6); + Assert.assertEquals(subSet, treeSet.subSet(1, 6)); + } + + @Test + public void whenUsingTailSet_shouldReturnTailSetElements() { + NavigableSet treeSet = new TreeSet<>(); + treeSet.add(1); + treeSet.add(2); + treeSet.add(3); + treeSet.add(4); + treeSet.add(5); + treeSet.add(6); + + Set subSet = treeSet.tailSet(3); + Assert.assertEquals(subSet, treeSet.subSet(3, true, 6, true)); + } } From 9627971b46c2257a0213685108d0b250b1d00038 Mon Sep 17 00:00:00 2001 From: Muhammed Almas Date: Thu, 14 Dec 2017 22:24:27 +0530 Subject: [PATCH 14/60] BAEL-1375 Using compute for every usage. (#3242) --- .../java/com/baeldung/counter/CounterUtil.java | 15 +++------------ 1 file changed, 3 insertions(+), 12 deletions(-) diff --git a/core-java-8/src/test/java/com/baeldung/counter/CounterUtil.java b/core-java-8/src/test/java/com/baeldung/counter/CounterUtil.java index 647fbfb0cc..afd7202892 100644 --- a/core-java-8/src/test/java/com/baeldung/counter/CounterUtil.java +++ b/core-java-8/src/test/java/com/baeldung/counter/CounterUtil.java @@ -38,23 +38,14 @@ public class CounterUtil { public static void counterWithMutableInteger(Map counterMap) { for (String country : COUNTRY_NAMES) { - MutableInteger oldValue = counterMap.get(country); - if (oldValue != null) { - oldValue.increment(); - } else { - counterMap.put(country, new MutableInteger(1)); - } + counterMap.compute(country, (k, v) -> v == null ? new MutableInteger(0) : v) + .increment(); } } public static void counterWithPrimitiveArray(Map counterMap) { for (String country : COUNTRY_NAMES) { - int[] oldCounter = counterMap.get(country); - if (oldCounter != null) { - oldCounter[0] += 1; - } else { - counterMap.put(country, new int[] { 1 }); - } + counterMap.compute(country, (k, v) -> v == null ? new int[] { 0 } : v)[0]++; } } From 92c92ee96c49b97abbdc04e60fcef72f3b7afbcc Mon Sep 17 00:00:00 2001 From: Loredana Crusoveanu Date: Thu, 14 Dec 2017 22:24:31 +0200 Subject: [PATCH 15/60] fix windows jenkins script --- .../scripted-pipeline-unix-nonunix | 31 +++++-------------- 1 file changed, 8 insertions(+), 23 deletions(-) diff --git a/spring-jenkins-pipeline/scripted-pipeline-unix-nonunix b/spring-jenkins-pipeline/scripted-pipeline-unix-nonunix index 6b775b6e56..e9cae64d3d 100644 --- a/spring-jenkins-pipeline/scripted-pipeline-unix-nonunix +++ b/spring-jenkins-pipeline/scripted-pipeline-unix-nonunix @@ -14,8 +14,10 @@ node { stage("Checkstyle") { if (isUnix()) { sh "./mvnw checkstyle:checkstyle" - - step([$class: 'CheckStylePublisher', + } else { + bat "./mvnw.cmd checkstyle:checkstyle" + } + step([$class: 'CheckStylePublisher', canRunOnFailed: true, defaultEncoding: '', healthy: '100', @@ -23,18 +25,6 @@ node { unHealthy: '90', useStableBuildAsReference: true ]) - } else { - bat "./mvnw.cmd checkstyle:checkstyle" - - step([$class: 'CheckStylePublisher', - canRunOnFailed: true, - defaultEncoding: '', - healthy: '100', - pattern: '**\target\checkstyle-result.xml', - unHealthy: '90', - useStableBuildAsReference: true - ]) - } } } } @@ -44,32 +34,27 @@ node { stage("Runing unit tests") { if (isUnix()) { sh "./mvnw test -Punit" - - step([$class: 'JUnitResultArchiver', testResults: '**/target/surefire-reports/TEST-*UnitTest.xml']) } else { bat "./mvnw.cmd test -Punit" - - step([$class: 'JUnitResultArchiver', testResults: '**\target\surefire-reports\TEST-*UnitTest.xml']) } + step([$class: 'JUnitResultArchiver', testResults: '**/target/surefire-reports/TEST-*UnitTest.xml']) + } }, 'Integration tests': { stage("Runing integration tests") { if (isUnix()) { sh "./mvnw test -Pintegration" - - step([$class: 'JUnitResultArchiver', testResults: '**/target/surefire-reports/TEST-*IntegrationTest.xml']) } else { bat "./mvnw.cmd test -Pintegration" - - step([$class: 'JUnitResultArchiver', testResults: '**\target\surefire-reports\TEST-*IntegrationTest.xml']) } + step([$class: 'JUnitResultArchiver', testResults: '**/target/surefire-reports/TEST-*IntegrationTest.xml']) } }, 'Deployment': { stage("Staging") { if (isUnix()) { sh "pid=\$(lsof -i:8989 -t); kill -TERM \$pid || kill -KILL \$pid" } else { - bat "FOR /F 'tokens=5 delims= ' %%P IN ('netstat -ano ^| findstr :8989') DO TaskKill.exe /PID %%P" + bat "FOR /F \"tokens=5 delims= \" %%G IN (\"netstat -a | findstr :8989\") DO TaskKill.exe /PID %%G /fi \"memusage gt 0\"" } withEnv(['JENKINS_NODE_COOKIE=dontkill']) { From e13815415a366106183ece42108aa0d71da3bdfb Mon Sep 17 00:00:00 2001 From: chober Date: Thu, 14 Dec 2017 21:02:05 +0000 Subject: [PATCH 16/60] add flyway-callback demo per BAEL-1316 --- flyway/flyway-callbacks/.gitignore | 24 ++ .../.mvn/wrapper/maven-wrapper.jar | Bin 0 -> 47610 bytes .../.mvn/wrapper/maven-wrapper.properties | 1 + flyway/flyway-callbacks/mvnw | 225 ++++++++++++++++++ flyway/flyway-callbacks/mvnw.cmd | 143 +++++++++++ flyway/flyway-callbacks/pom.xml | 59 +++++ .../ExampleFlywayCallback.java | 33 +++ .../flywaycallbacks/FlywayApplication.java | 13 + .../src/main/resources/application.properties | 0 .../db/callbacks/beforeEachMigrate.sql | 1 + .../resources/db/callbacks/beforeMigrate.sql | 1 + .../db/migration/V1_0__add_table_one.sql | 5 + .../db/migration/V1_1__add_table_two.sql | 5 + .../src/main/resources/logback.xml | 19 ++ .../FlywayApplicationTest.java | 72 ++++++ .../FlywayCallbackTestConfig.java | 21 ++ 16 files changed, 622 insertions(+) create mode 100644 flyway/flyway-callbacks/.gitignore create mode 100644 flyway/flyway-callbacks/.mvn/wrapper/maven-wrapper.jar create mode 100644 flyway/flyway-callbacks/.mvn/wrapper/maven-wrapper.properties create mode 100644 flyway/flyway-callbacks/mvnw create mode 100644 flyway/flyway-callbacks/mvnw.cmd create mode 100644 flyway/flyway-callbacks/pom.xml create mode 100644 flyway/flyway-callbacks/src/main/java/com/baeldung/flywaycallbacks/ExampleFlywayCallback.java create mode 100644 flyway/flyway-callbacks/src/main/java/com/baeldung/flywaycallbacks/FlywayApplication.java create mode 100644 flyway/flyway-callbacks/src/main/resources/application.properties create mode 100644 flyway/flyway-callbacks/src/main/resources/db/callbacks/beforeEachMigrate.sql create mode 100644 flyway/flyway-callbacks/src/main/resources/db/callbacks/beforeMigrate.sql create mode 100644 flyway/flyway-callbacks/src/main/resources/db/migration/V1_0__add_table_one.sql create mode 100644 flyway/flyway-callbacks/src/main/resources/db/migration/V1_1__add_table_two.sql create mode 100644 flyway/flyway-callbacks/src/main/resources/logback.xml create mode 100644 flyway/flyway-callbacks/src/test/java/com/baeldung/flywaycallbacks/FlywayApplicationTest.java create mode 100644 flyway/flyway-callbacks/src/test/java/com/baeldung/flywaycallbacks/FlywayCallbackTestConfig.java diff --git a/flyway/flyway-callbacks/.gitignore b/flyway/flyway-callbacks/.gitignore new file mode 100644 index 0000000000..2af7cefb0a --- /dev/null +++ b/flyway/flyway-callbacks/.gitignore @@ -0,0 +1,24 @@ +target/ +!.mvn/wrapper/maven-wrapper.jar + +### STS ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans + +### IntelliJ IDEA ### +.idea +*.iws +*.iml +*.ipr + +### NetBeans ### +nbproject/private/ +build/ +nbbuild/ +dist/ +nbdist/ +.nb-gradle/ \ No newline at end of file diff --git a/flyway/flyway-callbacks/.mvn/wrapper/maven-wrapper.jar b/flyway/flyway-callbacks/.mvn/wrapper/maven-wrapper.jar new file mode 100644 index 0000000000000000000000000000000000000000..9cc84ea9b4d95453115d0c26488d6a78694e0bc6 GIT binary patch literal 47610 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 literal 0 HcmV?d00001 diff --git a/flyway/flyway-callbacks/.mvn/wrapper/maven-wrapper.properties b/flyway/flyway-callbacks/.mvn/wrapper/maven-wrapper.properties new file mode 100644 index 0000000000..9dda3b659b --- /dev/null +++ b/flyway/flyway-callbacks/.mvn/wrapper/maven-wrapper.properties @@ -0,0 +1 @@ +distributionUrl=https://repo1.maven.org/maven2/org/apache/maven/apache-maven/3.5.2/apache-maven-3.5.2-bin.zip diff --git a/flyway/flyway-callbacks/mvnw b/flyway/flyway-callbacks/mvnw new file mode 100644 index 0000000000..5bf251c077 --- /dev/null +++ b/flyway/flyway-callbacks/mvnw @@ -0,0 +1,225 @@ +#!/bin/sh +# ---------------------------------------------------------------------------- +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# ---------------------------------------------------------------------------- + +# ---------------------------------------------------------------------------- +# Maven2 Start Up Batch script +# +# Required ENV vars: +# ------------------ +# JAVA_HOME - location of a JDK home dir +# +# Optional ENV vars +# ----------------- +# M2_HOME - location of maven2's installed home dir +# MAVEN_OPTS - parameters passed to the Java VM when running Maven +# e.g. to debug Maven itself, use +# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 +# MAVEN_SKIP_RC - flag to disable loading of mavenrc files +# ---------------------------------------------------------------------------- + +if [ -z "$MAVEN_SKIP_RC" ] ; then + + if [ -f /etc/mavenrc ] ; then + . /etc/mavenrc + fi + + if [ -f "$HOME/.mavenrc" ] ; then + . "$HOME/.mavenrc" + fi + +fi + +# OS specific support. $var _must_ be set to either true or false. +cygwin=false; +darwin=false; +mingw=false +case "`uname`" in + CYGWIN*) cygwin=true ;; + MINGW*) mingw=true;; + Darwin*) darwin=true + # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home + # See https://developer.apple.com/library/mac/qa/qa1170/_index.html + if [ -z "$JAVA_HOME" ]; then + if [ -x "/usr/libexec/java_home" ]; then + export JAVA_HOME="`/usr/libexec/java_home`" + else + export JAVA_HOME="/Library/Java/Home" + fi + fi + ;; +esac + +if [ -z "$JAVA_HOME" ] ; then + if [ -r /etc/gentoo-release ] ; then + JAVA_HOME=`java-config --jre-home` + fi +fi + +if [ -z "$M2_HOME" ] ; then + ## resolve links - $0 may be a link to maven's home + PRG="$0" + + # need this for relative symlinks + while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG="`dirname "$PRG"`/$link" + fi + done + + saveddir=`pwd` + + M2_HOME=`dirname "$PRG"`/.. + + # make it fully qualified + M2_HOME=`cd "$M2_HOME" && pwd` + + cd "$saveddir" + # echo Using m2 at $M2_HOME +fi + +# For Cygwin, ensure paths are in UNIX format before anything is touched +if $cygwin ; then + [ -n "$M2_HOME" ] && + M2_HOME=`cygpath --unix "$M2_HOME"` + [ -n "$JAVA_HOME" ] && + JAVA_HOME=`cygpath --unix "$JAVA_HOME"` + [ -n "$CLASSPATH" ] && + CLASSPATH=`cygpath --path --unix "$CLASSPATH"` +fi + +# For Migwn, ensure paths are in UNIX format before anything is touched +if $mingw ; then + [ -n "$M2_HOME" ] && + M2_HOME="`(cd "$M2_HOME"; pwd)`" + [ -n "$JAVA_HOME" ] && + JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`" + # TODO classpath? +fi + +if [ -z "$JAVA_HOME" ]; then + javaExecutable="`which javac`" + if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then + # readlink(1) is not available as standard on Solaris 10. + readLink=`which readlink` + if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then + if $darwin ; then + javaHome="`dirname \"$javaExecutable\"`" + javaExecutable="`cd \"$javaHome\" && pwd -P`/javac" + else + javaExecutable="`readlink -f \"$javaExecutable\"`" + fi + javaHome="`dirname \"$javaExecutable\"`" + javaHome=`expr "$javaHome" : '\(.*\)/bin'` + JAVA_HOME="$javaHome" + export JAVA_HOME + fi + fi +fi + +if [ -z "$JAVACMD" ] ; then + if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + else + JAVACMD="`which java`" + fi +fi + +if [ ! -x "$JAVACMD" ] ; then + echo "Error: JAVA_HOME is not defined correctly." >&2 + echo " We cannot execute $JAVACMD" >&2 + exit 1 +fi + +if [ -z "$JAVA_HOME" ] ; then + echo "Warning: JAVA_HOME environment variable is not set." +fi + +CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher + +# traverses directory structure from process work directory to filesystem root +# first directory with .mvn subdirectory is considered project base directory +find_maven_basedir() { + + if [ -z "$1" ] + then + echo "Path not specified to find_maven_basedir" + return 1 + fi + + basedir="$1" + wdir="$1" + while [ "$wdir" != '/' ] ; do + if [ -d "$wdir"/.mvn ] ; then + basedir=$wdir + break + fi + # workaround for JBEAP-8937 (on Solaris 10/Sparc) + if [ -d "${wdir}" ]; then + wdir=`cd "$wdir/.."; pwd` + fi + # end of workaround + done + echo "${basedir}" +} + +# concatenates all lines of a file +concat_lines() { + if [ -f "$1" ]; then + echo "$(tr -s '\n' ' ' < "$1")" + fi +} + +BASE_DIR=`find_maven_basedir "$(pwd)"` +if [ -z "$BASE_DIR" ]; then + exit 1; +fi + +export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"} +echo $MAVEN_PROJECTBASEDIR +MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS" + +# For Cygwin, switch paths to Windows format before running java +if $cygwin; then + [ -n "$M2_HOME" ] && + M2_HOME=`cygpath --path --windows "$M2_HOME"` + [ -n "$JAVA_HOME" ] && + JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"` + [ -n "$CLASSPATH" ] && + CLASSPATH=`cygpath --path --windows "$CLASSPATH"` + [ -n "$MAVEN_PROJECTBASEDIR" ] && + MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"` +fi + +WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain + +exec "$JAVACMD" \ + $MAVEN_OPTS \ + -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \ + "-Dmaven.home=${M2_HOME}" "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \ + ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@" diff --git a/flyway/flyway-callbacks/mvnw.cmd b/flyway/flyway-callbacks/mvnw.cmd new file mode 100644 index 0000000000..019bd74d76 --- /dev/null +++ b/flyway/flyway-callbacks/mvnw.cmd @@ -0,0 +1,143 @@ +@REM ---------------------------------------------------------------------------- +@REM Licensed to the Apache Software Foundation (ASF) under one +@REM or more contributor license agreements. See the NOTICE file +@REM distributed with this work for additional information +@REM regarding copyright ownership. The ASF licenses this file +@REM to you under the Apache License, Version 2.0 (the +@REM "License"); you may not use this file except in compliance +@REM with the License. You may obtain a copy of the License at +@REM +@REM http://www.apache.org/licenses/LICENSE-2.0 +@REM +@REM Unless required by applicable law or agreed to in writing, +@REM software distributed under the License is distributed on an +@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +@REM KIND, either express or implied. See the License for the +@REM specific language governing permissions and limitations +@REM under the License. +@REM ---------------------------------------------------------------------------- + +@REM ---------------------------------------------------------------------------- +@REM Maven2 Start Up Batch script +@REM +@REM Required ENV vars: +@REM JAVA_HOME - location of a JDK home dir +@REM +@REM Optional ENV vars +@REM M2_HOME - location of maven2's installed home dir +@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands +@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a key stroke before ending +@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven +@REM e.g. to debug Maven itself, use +@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 +@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files +@REM ---------------------------------------------------------------------------- + +@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on' +@echo off +@REM enable echoing my setting MAVEN_BATCH_ECHO to 'on' +@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO% + +@REM set %HOME% to equivalent of $HOME +if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%") + +@REM Execute a user defined script before this one +if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre +@REM check for pre script, once with legacy .bat ending and once with .cmd ending +if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat" +if exist "%HOME%\mavenrc_pre.cmd" call "%HOME%\mavenrc_pre.cmd" +:skipRcPre + +@setlocal + +set ERROR_CODE=0 + +@REM To isolate internal variables from possible post scripts, we use another setlocal +@setlocal + +@REM ==== START VALIDATION ==== +if not "%JAVA_HOME%" == "" goto OkJHome + +echo. +echo Error: JAVA_HOME not found in your environment. >&2 +echo Please set the JAVA_HOME variable in your environment to match the >&2 +echo location of your Java installation. >&2 +echo. +goto error + +:OkJHome +if exist "%JAVA_HOME%\bin\java.exe" goto init + +echo. +echo Error: JAVA_HOME is set to an invalid directory. >&2 +echo JAVA_HOME = "%JAVA_HOME%" >&2 +echo Please set the JAVA_HOME variable in your environment to match the >&2 +echo location of your Java installation. >&2 +echo. +goto error + +@REM ==== END VALIDATION ==== + +:init + +@REM Find the project base dir, i.e. the directory that contains the folder ".mvn". +@REM Fallback to current working directory if not found. + +set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR% +IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir + +set EXEC_DIR=%CD% +set WDIR=%EXEC_DIR% +:findBaseDir +IF EXIST "%WDIR%"\.mvn goto baseDirFound +cd .. +IF "%WDIR%"=="%CD%" goto baseDirNotFound +set WDIR=%CD% +goto findBaseDir + +:baseDirFound +set MAVEN_PROJECTBASEDIR=%WDIR% +cd "%EXEC_DIR%" +goto endDetectBaseDir + +:baseDirNotFound +set MAVEN_PROJECTBASEDIR=%EXEC_DIR% +cd "%EXEC_DIR%" + +:endDetectBaseDir + +IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig + +@setlocal EnableExtensions EnableDelayedExpansion +for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a +@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS% + +:endReadAdditionalConfig + +SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe" + +set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar" +set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain + +%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %WRAPPER_JAR% "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %* +if ERRORLEVEL 1 goto error +goto end + +:error +set ERROR_CODE=1 + +:end +@endlocal & set ERROR_CODE=%ERROR_CODE% + +if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost +@REM check for post script, once with legacy .bat ending and once with .cmd ending +if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat" +if exist "%HOME%\mavenrc_post.cmd" call "%HOME%\mavenrc_post.cmd" +:skipRcPost + +@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on' +if "%MAVEN_BATCH_PAUSE%" == "on" pause + +if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE% + +exit /B %ERROR_CODE% diff --git a/flyway/flyway-callbacks/pom.xml b/flyway/flyway-callbacks/pom.xml new file mode 100644 index 0000000000..70dbef9b69 --- /dev/null +++ b/flyway/flyway-callbacks/pom.xml @@ -0,0 +1,59 @@ + + + 4.0.0 + + flyway-callbacks + 0.0.1-SNAPSHOT + jar + + flyway-callbacks + Flyway Callbacks Demo + + + flyway + com.baeldung + 1.0 + ../../flyway + + + + UTF-8 + UTF-8 + 1.8 + + + + + org.flywaydb + flyway-core + 4.2.0 + + + + org.springframework.boot + spring-boot-starter-jdbc + + + + com.h2database + h2 + + + org.springframework.boot + spring-boot-starter-test + test + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + + + diff --git a/flyway/flyway-callbacks/src/main/java/com/baeldung/flywaycallbacks/ExampleFlywayCallback.java b/flyway/flyway-callbacks/src/main/java/com/baeldung/flywaycallbacks/ExampleFlywayCallback.java new file mode 100644 index 0000000000..6ad4ce510c --- /dev/null +++ b/flyway/flyway-callbacks/src/main/java/com/baeldung/flywaycallbacks/ExampleFlywayCallback.java @@ -0,0 +1,33 @@ +package com.baeldung.flywaycallbacks; + +import java.sql.Connection; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.flywaydb.core.api.MigrationInfo; +import org.flywaydb.core.api.callback.BaseFlywayCallback; + +public class ExampleFlywayCallback extends BaseFlywayCallback { + + private Log log = LogFactory.getLog(getClass()); + + @Override + public void afterEachMigrate(Connection connection, MigrationInfo info) { + log.info("> afterEachMigrate"); + } + + @Override + public void afterMigrate(Connection connection) { + log.info("> afterMigrate"); + } + + @Override + public void beforeEachMigrate(Connection connection, MigrationInfo info) { + log.info("> beforeEachMigrate"); + } + + @Override + public void beforeMigrate(Connection connection) { + log.info("> beforeMigrate"); + } +} diff --git a/flyway/flyway-callbacks/src/main/java/com/baeldung/flywaycallbacks/FlywayApplication.java b/flyway/flyway-callbacks/src/main/java/com/baeldung/flywaycallbacks/FlywayApplication.java new file mode 100644 index 0000000000..34d794f7d1 --- /dev/null +++ b/flyway/flyway-callbacks/src/main/java/com/baeldung/flywaycallbacks/FlywayApplication.java @@ -0,0 +1,13 @@ +package com.baeldung.flywaycallbacks; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class FlywayApplication { + + public static void main(String[] args) { + SpringApplication.run(FlywayApplication.class, args); + } + +} diff --git a/flyway/flyway-callbacks/src/main/resources/application.properties b/flyway/flyway-callbacks/src/main/resources/application.properties new file mode 100644 index 0000000000..e69de29bb2 diff --git a/flyway/flyway-callbacks/src/main/resources/db/callbacks/beforeEachMigrate.sql b/flyway/flyway-callbacks/src/main/resources/db/callbacks/beforeEachMigrate.sql new file mode 100644 index 0000000000..7a8f142d22 --- /dev/null +++ b/flyway/flyway-callbacks/src/main/resources/db/callbacks/beforeEachMigrate.sql @@ -0,0 +1 @@ +SELECT 1 \ No newline at end of file diff --git a/flyway/flyway-callbacks/src/main/resources/db/callbacks/beforeMigrate.sql b/flyway/flyway-callbacks/src/main/resources/db/callbacks/beforeMigrate.sql new file mode 100644 index 0000000000..7a8f142d22 --- /dev/null +++ b/flyway/flyway-callbacks/src/main/resources/db/callbacks/beforeMigrate.sql @@ -0,0 +1 @@ +SELECT 1 \ No newline at end of file diff --git a/flyway/flyway-callbacks/src/main/resources/db/migration/V1_0__add_table_one.sql b/flyway/flyway-callbacks/src/main/resources/db/migration/V1_0__add_table_one.sql new file mode 100644 index 0000000000..526d8e2aea --- /dev/null +++ b/flyway/flyway-callbacks/src/main/resources/db/migration/V1_0__add_table_one.sql @@ -0,0 +1,5 @@ +create table table_one ( + id numeric, + name varchar(50), + constraint pk_table_one primary key (id) +); \ No newline at end of file diff --git a/flyway/flyway-callbacks/src/main/resources/db/migration/V1_1__add_table_two.sql b/flyway/flyway-callbacks/src/main/resources/db/migration/V1_1__add_table_two.sql new file mode 100644 index 0000000000..d51f4a5d56 --- /dev/null +++ b/flyway/flyway-callbacks/src/main/resources/db/migration/V1_1__add_table_two.sql @@ -0,0 +1,5 @@ +create table table_two ( + id numeric, + name varchar(50), + constraint pk_table_two primary key (id) +); \ No newline at end of file diff --git a/flyway/flyway-callbacks/src/main/resources/logback.xml b/flyway/flyway-callbacks/src/main/resources/logback.xml new file mode 100644 index 0000000000..7f4aa46e0d --- /dev/null +++ b/flyway/flyway-callbacks/src/main/resources/logback.xml @@ -0,0 +1,19 @@ + + + + + %date [%thread] %-5level %logger{36} - %message%n + + + + + + + + + + + + + + \ No newline at end of file diff --git a/flyway/flyway-callbacks/src/test/java/com/baeldung/flywaycallbacks/FlywayApplicationTest.java b/flyway/flyway-callbacks/src/test/java/com/baeldung/flywaycallbacks/FlywayApplicationTest.java new file mode 100644 index 0000000000..22edb5a007 --- /dev/null +++ b/flyway/flyway-callbacks/src/test/java/com/baeldung/flywaycallbacks/FlywayApplicationTest.java @@ -0,0 +1,72 @@ +package com.baeldung.flywaycallbacks; + +import java.util.Arrays; + +import javax.sql.DataSource; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.flywaydb.core.Flyway; +import org.flywaydb.core.api.MigrationInfoService; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.test.annotation.DirtiesContext; +import org.springframework.test.annotation.DirtiesContext.ClassMode; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringRunner; +import com.baeldung.flywaycallbacks.FlywayCallbackTestConfig; + +@RunWith(SpringRunner.class) +@DirtiesContext(classMode = ClassMode.AFTER_EACH_TEST_METHOD) +@ContextConfiguration(classes = FlywayCallbackTestConfig.class) +public class FlywayApplicationTest { + + private Log log = LogFactory.getLog(getClass()); + + @Autowired + private DataSource dataSource; + + @Test + public void migrateWithNoCallbacks() { + logTestBoundary("migrateWithNoCallbacks"); + Flyway flyway = new Flyway(); + flyway.setDataSource(dataSource); + flyway.setLocations("db/migration"); + flyway.migrate(); + } + + @Test + public void migrateWithJavaCallbacks() { + logTestBoundary("migrateWithJavaCallbacks"); + Flyway flyway = new Flyway(); + flyway.setDataSource(dataSource); + flyway.setLocations("db/migration"); + flyway.setCallbacks(new ExampleFlywayCallback()); + flyway.migrate(); + } + + @Test + public void migrateWithSqlCallbacks() { + logTestBoundary("migrateWithSqlCallbacks"); + Flyway flyway = new Flyway(); + flyway.setDataSource(dataSource); + flyway.setLocations("db/migration", "db/callbacks"); + flyway.migrate(); + } + + @Test + public void migrateWithSqlAndJavaCallbacks() { + logTestBoundary("migrateWithSqlAndJavaCallbacks"); + Flyway flyway = new Flyway(); + flyway.setDataSource(dataSource); + flyway.setLocations("db/migration", "db/callbacks"); + flyway.setCallbacks(new ExampleFlywayCallback()); + flyway.migrate(); + } + + private void logTestBoundary(String testName) { + System.out.println("\n"); + log.info("> " + testName); + } + } diff --git a/flyway/flyway-callbacks/src/test/java/com/baeldung/flywaycallbacks/FlywayCallbackTestConfig.java b/flyway/flyway-callbacks/src/test/java/com/baeldung/flywaycallbacks/FlywayCallbackTestConfig.java new file mode 100644 index 0000000000..f64b490dcf --- /dev/null +++ b/flyway/flyway-callbacks/src/test/java/com/baeldung/flywaycallbacks/FlywayCallbackTestConfig.java @@ -0,0 +1,21 @@ +package com.baeldung.flywaycallbacks; + +import javax.sql.DataSource; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseBuilder; +import org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseType; + +@Configuration +public class FlywayCallbackTestConfig { + + @Bean + public DataSource createDatasource() { + EmbeddedDatabaseBuilder dbBuilder = new EmbeddedDatabaseBuilder(); + return dbBuilder.setType(EmbeddedDatabaseType.H2) + .setName("DATABASE") + .build(); + } + +} From f9a24e242060c471365f1c353af65351b1320c6c Mon Sep 17 00:00:00 2001 From: chober Date: Thu, 14 Dec 2017 21:03:53 +0000 Subject: [PATCH 17/60] remove maven wrapper --- .../.mvn/wrapper/maven-wrapper.jar | Bin 47610 -> 0 bytes .../.mvn/wrapper/maven-wrapper.properties | 1 - flyway/flyway-callbacks/mvnw | 225 ------------------ flyway/flyway-callbacks/mvnw.cmd | 143 ----------- 4 files changed, 369 deletions(-) delete mode 100644 flyway/flyway-callbacks/.mvn/wrapper/maven-wrapper.jar delete mode 100644 flyway/flyway-callbacks/.mvn/wrapper/maven-wrapper.properties delete mode 100644 flyway/flyway-callbacks/mvnw delete mode 100644 flyway/flyway-callbacks/mvnw.cmd diff --git a/flyway/flyway-callbacks/.mvn/wrapper/maven-wrapper.jar b/flyway/flyway-callbacks/.mvn/wrapper/maven-wrapper.jar deleted file mode 100644 index 9cc84ea9b4d95453115d0c26488d6a78694e0bc6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 47610 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 diff --git a/flyway/flyway-callbacks/.mvn/wrapper/maven-wrapper.properties b/flyway/flyway-callbacks/.mvn/wrapper/maven-wrapper.properties deleted file mode 100644 index 9dda3b659b..0000000000 --- a/flyway/flyway-callbacks/.mvn/wrapper/maven-wrapper.properties +++ /dev/null @@ -1 +0,0 @@ -distributionUrl=https://repo1.maven.org/maven2/org/apache/maven/apache-maven/3.5.2/apache-maven-3.5.2-bin.zip diff --git a/flyway/flyway-callbacks/mvnw b/flyway/flyway-callbacks/mvnw deleted file mode 100644 index 5bf251c077..0000000000 --- a/flyway/flyway-callbacks/mvnw +++ /dev/null @@ -1,225 +0,0 @@ -#!/bin/sh -# ---------------------------------------------------------------------------- -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# ---------------------------------------------------------------------------- - -# ---------------------------------------------------------------------------- -# Maven2 Start Up Batch script -# -# Required ENV vars: -# ------------------ -# JAVA_HOME - location of a JDK home dir -# -# Optional ENV vars -# ----------------- -# M2_HOME - location of maven2's installed home dir -# MAVEN_OPTS - parameters passed to the Java VM when running Maven -# e.g. to debug Maven itself, use -# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -# MAVEN_SKIP_RC - flag to disable loading of mavenrc files -# ---------------------------------------------------------------------------- - -if [ -z "$MAVEN_SKIP_RC" ] ; then - - if [ -f /etc/mavenrc ] ; then - . /etc/mavenrc - fi - - if [ -f "$HOME/.mavenrc" ] ; then - . "$HOME/.mavenrc" - fi - -fi - -# OS specific support. $var _must_ be set to either true or false. -cygwin=false; -darwin=false; -mingw=false -case "`uname`" in - CYGWIN*) cygwin=true ;; - MINGW*) mingw=true;; - Darwin*) darwin=true - # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home - # See https://developer.apple.com/library/mac/qa/qa1170/_index.html - if [ -z "$JAVA_HOME" ]; then - if [ -x "/usr/libexec/java_home" ]; then - export JAVA_HOME="`/usr/libexec/java_home`" - else - export JAVA_HOME="/Library/Java/Home" - fi - fi - ;; -esac - -if [ -z "$JAVA_HOME" ] ; then - if [ -r /etc/gentoo-release ] ; then - JAVA_HOME=`java-config --jre-home` - fi -fi - -if [ -z "$M2_HOME" ] ; then - ## resolve links - $0 may be a link to maven's home - PRG="$0" - - # need this for relative symlinks - while [ -h "$PRG" ] ; do - ls=`ls -ld "$PRG"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - PRG="$link" - else - PRG="`dirname "$PRG"`/$link" - fi - done - - saveddir=`pwd` - - M2_HOME=`dirname "$PRG"`/.. - - # make it fully qualified - M2_HOME=`cd "$M2_HOME" && pwd` - - cd "$saveddir" - # echo Using m2 at $M2_HOME -fi - -# For Cygwin, ensure paths are in UNIX format before anything is touched -if $cygwin ; then - [ -n "$M2_HOME" ] && - M2_HOME=`cygpath --unix "$M2_HOME"` - [ -n "$JAVA_HOME" ] && - JAVA_HOME=`cygpath --unix "$JAVA_HOME"` - [ -n "$CLASSPATH" ] && - CLASSPATH=`cygpath --path --unix "$CLASSPATH"` -fi - -# For Migwn, ensure paths are in UNIX format before anything is touched -if $mingw ; then - [ -n "$M2_HOME" ] && - M2_HOME="`(cd "$M2_HOME"; pwd)`" - [ -n "$JAVA_HOME" ] && - JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`" - # TODO classpath? -fi - -if [ -z "$JAVA_HOME" ]; then - javaExecutable="`which javac`" - if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then - # readlink(1) is not available as standard on Solaris 10. - readLink=`which readlink` - if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then - if $darwin ; then - javaHome="`dirname \"$javaExecutable\"`" - javaExecutable="`cd \"$javaHome\" && pwd -P`/javac" - else - javaExecutable="`readlink -f \"$javaExecutable\"`" - fi - javaHome="`dirname \"$javaExecutable\"`" - javaHome=`expr "$javaHome" : '\(.*\)/bin'` - JAVA_HOME="$javaHome" - export JAVA_HOME - fi - fi -fi - -if [ -z "$JAVACMD" ] ; then - if [ -n "$JAVA_HOME" ] ; then - if [ -x "$JAVA_HOME/jre/sh/java" ] ; then - # IBM's JDK on AIX uses strange locations for the executables - JAVACMD="$JAVA_HOME/jre/sh/java" - else - JAVACMD="$JAVA_HOME/bin/java" - fi - else - JAVACMD="`which java`" - fi -fi - -if [ ! -x "$JAVACMD" ] ; then - echo "Error: JAVA_HOME is not defined correctly." >&2 - echo " We cannot execute $JAVACMD" >&2 - exit 1 -fi - -if [ -z "$JAVA_HOME" ] ; then - echo "Warning: JAVA_HOME environment variable is not set." -fi - -CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher - -# traverses directory structure from process work directory to filesystem root -# first directory with .mvn subdirectory is considered project base directory -find_maven_basedir() { - - if [ -z "$1" ] - then - echo "Path not specified to find_maven_basedir" - return 1 - fi - - basedir="$1" - wdir="$1" - while [ "$wdir" != '/' ] ; do - if [ -d "$wdir"/.mvn ] ; then - basedir=$wdir - break - fi - # workaround for JBEAP-8937 (on Solaris 10/Sparc) - if [ -d "${wdir}" ]; then - wdir=`cd "$wdir/.."; pwd` - fi - # end of workaround - done - echo "${basedir}" -} - -# concatenates all lines of a file -concat_lines() { - if [ -f "$1" ]; then - echo "$(tr -s '\n' ' ' < "$1")" - fi -} - -BASE_DIR=`find_maven_basedir "$(pwd)"` -if [ -z "$BASE_DIR" ]; then - exit 1; -fi - -export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"} -echo $MAVEN_PROJECTBASEDIR -MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS" - -# For Cygwin, switch paths to Windows format before running java -if $cygwin; then - [ -n "$M2_HOME" ] && - M2_HOME=`cygpath --path --windows "$M2_HOME"` - [ -n "$JAVA_HOME" ] && - JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"` - [ -n "$CLASSPATH" ] && - CLASSPATH=`cygpath --path --windows "$CLASSPATH"` - [ -n "$MAVEN_PROJECTBASEDIR" ] && - MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"` -fi - -WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain - -exec "$JAVACMD" \ - $MAVEN_OPTS \ - -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \ - "-Dmaven.home=${M2_HOME}" "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \ - ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@" diff --git a/flyway/flyway-callbacks/mvnw.cmd b/flyway/flyway-callbacks/mvnw.cmd deleted file mode 100644 index 019bd74d76..0000000000 --- a/flyway/flyway-callbacks/mvnw.cmd +++ /dev/null @@ -1,143 +0,0 @@ -@REM ---------------------------------------------------------------------------- -@REM Licensed to the Apache Software Foundation (ASF) under one -@REM or more contributor license agreements. See the NOTICE file -@REM distributed with this work for additional information -@REM regarding copyright ownership. The ASF licenses this file -@REM to you under the Apache License, Version 2.0 (the -@REM "License"); you may not use this file except in compliance -@REM with the License. You may obtain a copy of the License at -@REM -@REM http://www.apache.org/licenses/LICENSE-2.0 -@REM -@REM Unless required by applicable law or agreed to in writing, -@REM software distributed under the License is distributed on an -@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -@REM KIND, either express or implied. See the License for the -@REM specific language governing permissions and limitations -@REM under the License. -@REM ---------------------------------------------------------------------------- - -@REM ---------------------------------------------------------------------------- -@REM Maven2 Start Up Batch script -@REM -@REM Required ENV vars: -@REM JAVA_HOME - location of a JDK home dir -@REM -@REM Optional ENV vars -@REM M2_HOME - location of maven2's installed home dir -@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands -@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a key stroke before ending -@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven -@REM e.g. to debug Maven itself, use -@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files -@REM ---------------------------------------------------------------------------- - -@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on' -@echo off -@REM enable echoing my setting MAVEN_BATCH_ECHO to 'on' -@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO% - -@REM set %HOME% to equivalent of $HOME -if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%") - -@REM Execute a user defined script before this one -if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre -@REM check for pre script, once with legacy .bat ending and once with .cmd ending -if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat" -if exist "%HOME%\mavenrc_pre.cmd" call "%HOME%\mavenrc_pre.cmd" -:skipRcPre - -@setlocal - -set ERROR_CODE=0 - -@REM To isolate internal variables from possible post scripts, we use another setlocal -@setlocal - -@REM ==== START VALIDATION ==== -if not "%JAVA_HOME%" == "" goto OkJHome - -echo. -echo Error: JAVA_HOME not found in your environment. >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -:OkJHome -if exist "%JAVA_HOME%\bin\java.exe" goto init - -echo. -echo Error: JAVA_HOME is set to an invalid directory. >&2 -echo JAVA_HOME = "%JAVA_HOME%" >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -@REM ==== END VALIDATION ==== - -:init - -@REM Find the project base dir, i.e. the directory that contains the folder ".mvn". -@REM Fallback to current working directory if not found. - -set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR% -IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir - -set EXEC_DIR=%CD% -set WDIR=%EXEC_DIR% -:findBaseDir -IF EXIST "%WDIR%"\.mvn goto baseDirFound -cd .. -IF "%WDIR%"=="%CD%" goto baseDirNotFound -set WDIR=%CD% -goto findBaseDir - -:baseDirFound -set MAVEN_PROJECTBASEDIR=%WDIR% -cd "%EXEC_DIR%" -goto endDetectBaseDir - -:baseDirNotFound -set MAVEN_PROJECTBASEDIR=%EXEC_DIR% -cd "%EXEC_DIR%" - -:endDetectBaseDir - -IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig - -@setlocal EnableExtensions EnableDelayedExpansion -for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a -@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS% - -:endReadAdditionalConfig - -SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe" - -set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar" -set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain - -%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %WRAPPER_JAR% "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %* -if ERRORLEVEL 1 goto error -goto end - -:error -set ERROR_CODE=1 - -:end -@endlocal & set ERROR_CODE=%ERROR_CODE% - -if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost -@REM check for post script, once with legacy .bat ending and once with .cmd ending -if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat" -if exist "%HOME%\mavenrc_post.cmd" call "%HOME%\mavenrc_post.cmd" -:skipRcPost - -@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on' -if "%MAVEN_BATCH_PAUSE%" == "on" pause - -if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE% - -exit /B %ERROR_CODE% From 171d28a9d17c8bbb5576b78fe13773624a3e1aad Mon Sep 17 00:00:00 2001 From: ocheja Date: Fri, 15 Dec 2017 07:06:41 +0900 Subject: [PATCH 18/60] Remove verbose file info content (#3238) * Define beans for handling different message types in a lean chat app * Add class based spring beans configuration * Define spring configuration in XML for constructor based bean injection * Refactor package structure to separate constructor based bean injection code set from setter based bean injection code set * Define configuration and classes specific to setter-based bean injection. * Implement tests for constructor-based and setter-based bean injections * develop codes for explaining type erasure * Write unit tests for type erasure examples * Remove evaluation article code * Modify type erasure examples and unit tests * Modify type erasure examples and unit tests * Add expected exception in TypeErasureUnitTest * Correct grammar in class name * Implement File Manager app to demonstrate Polymorphism. Develop unit tests for Polymorphism article code * Add examples for static polymorphism * Change sysout statments to slf4j log info statements * Add assertions and expected errors check on Test * Add assertions and expected errors check on Test * Correct compile time error of symbol not found * Removed commented out non-compiling test. * Replace string concatenations with String.format * Replace string concatenations with String.format * Remove verbose file info descriptor and replace with simpler one --- .../src/main/java/com/baeldung/polymorphism/GenericFile.java | 2 +- .../src/main/java/com/baeldung/polymorphism/ImageFile.java | 2 +- core-java/src/main/java/com/baeldung/polymorphism/TextFile.java | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/core-java/src/main/java/com/baeldung/polymorphism/GenericFile.java b/core-java/src/main/java/com/baeldung/polymorphism/GenericFile.java index 03e704f36f..85acbc5be0 100644 --- a/core-java/src/main/java/com/baeldung/polymorphism/GenericFile.java +++ b/core-java/src/main/java/com/baeldung/polymorphism/GenericFile.java @@ -54,7 +54,7 @@ public class GenericFile { } public String getFileInfo() { - return String.format("File Name: %s\n" + " Extension: %s\n" + " Date Created: %s\n" + " Version: %s\n", this.getName(), this.getExtension(), this.getDateCreated(), this.getVersion()); + return "Generic File Impl"; } public Object read() { diff --git a/core-java/src/main/java/com/baeldung/polymorphism/ImageFile.java b/core-java/src/main/java/com/baeldung/polymorphism/ImageFile.java index e237f3f826..54eb24af5e 100644 --- a/core-java/src/main/java/com/baeldung/polymorphism/ImageFile.java +++ b/core-java/src/main/java/com/baeldung/polymorphism/ImageFile.java @@ -30,7 +30,7 @@ public class ImageFile extends GenericFile { } public String getFileInfo() { - return String.format(" %s Height: %d\n Width: %d", super.getFileInfo(), this.getHeight(), this.getWidth()); + return "Image File Impl"; } public String read() { diff --git a/core-java/src/main/java/com/baeldung/polymorphism/TextFile.java b/core-java/src/main/java/com/baeldung/polymorphism/TextFile.java index 2c28c968b8..0103291c5a 100644 --- a/core-java/src/main/java/com/baeldung/polymorphism/TextFile.java +++ b/core-java/src/main/java/com/baeldung/polymorphism/TextFile.java @@ -21,7 +21,7 @@ public class TextFile extends GenericFile { } public String getFileInfo() { - return String.format(" %s Word Count: %d", super.getFileInfo(), wordCount); + return "Text File Impl"; } public String read() { From ae109dfb7cf220cc1deffb010a226bf55acc81f7 Mon Sep 17 00:00:00 2001 From: Jose Bob Santos Jr Date: Fri, 15 Dec 2017 09:50:51 +0800 Subject: [PATCH 19/60] BAEL-1330 Primitive Type Streams in Java 8 (#3106) * initial commit for first article evaluation * fixed compilation error * removed final keywords for compliance * added unit tests and refactored as needed * refactored application-context.xml to use self-closing tags * renamed tests to use UnitTest suffix * removed unnecessary annotation * added code samples for primitive streams * removed sample code and tests for evaluation article * renamed unit test to proper unit test naming * added a test to show boxed method * added the assertion to the test fox boxed * changed mapToInt test to use Arrays.asList instead of a POJO as per Grzegorz and Eugen --- .../com/baeldung/stream/PrimitiveStreams.java | 23 +++++ .../stream/PrimitiveStreamsUnitTest.java | 97 +++++++++++++++++++ 2 files changed, 120 insertions(+) create mode 100644 core-java-8/src/main/java/com/baeldung/stream/PrimitiveStreams.java create mode 100644 core-java-8/src/test/java/com/baeldung/stream/PrimitiveStreamsUnitTest.java diff --git a/core-java-8/src/main/java/com/baeldung/stream/PrimitiveStreams.java b/core-java-8/src/main/java/com/baeldung/stream/PrimitiveStreams.java new file mode 100644 index 0000000000..b0afb65a35 --- /dev/null +++ b/core-java-8/src/main/java/com/baeldung/stream/PrimitiveStreams.java @@ -0,0 +1,23 @@ +package com.baeldung.stream; + +import java.util.Arrays; +import java.util.stream.IntStream; + +class PrimitiveStreams { + + int min(int[] integers) { + return Arrays.stream(integers).min().getAsInt(); + } + + int max(int... integers) { + return IntStream.of(integers).max().getAsInt(); + } + + int sum(int... integers) { + return IntStream.of(integers).sum(); + } + + double avg(int... integers) { + return IntStream.of(integers).average().getAsDouble(); + } +} diff --git a/core-java-8/src/test/java/com/baeldung/stream/PrimitiveStreamsUnitTest.java b/core-java-8/src/test/java/com/baeldung/stream/PrimitiveStreamsUnitTest.java new file mode 100644 index 0000000000..75078d75bc --- /dev/null +++ b/core-java-8/src/test/java/com/baeldung/stream/PrimitiveStreamsUnitTest.java @@ -0,0 +1,97 @@ +package com.baeldung.stream; + +import org.junit.Test; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.stream.Collectors; +import java.util.stream.IntStream; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; + +public class PrimitiveStreamsUnitTest { + + private PrimitiveStreams streams = new PrimitiveStreams(); + + @Test + public void givenAnArrayOfIntegersWhenMinIsCalledThenCorrectMinIsReturned() { + int[] integers = new int[] {20, 98, 12, 7, 35}; + int min = streams.min(integers); // returns 7 + + assertEquals(7, min); + } + + @Test + public void givenAnArrayOfIntegersWhenMaxIsCalledThenCorrectMaxIsReturned() { + int max = streams.max(20, 98, 12, 7, 35); + + assertEquals(98, max); + } + + @Test + public void givenAnArrayOfIntegersWhenSumIsCalledThenCorrectSumIsReturned() { + int sum = streams.sum(20, 98, 12, 7, 35); + + assertEquals(172, sum); + } + + @Test + public void givenAnArrayOfIntegersWhenAvgIsCalledThenCorrectAvgIsReturned() { + double avg = streams.avg(20, 98, 12, 7, 35); + + assertTrue(34.4 == avg); + } + + @Test + public void givenARangeOfIntegersWhenIntStreamSumIsCalledThenCorrectSumIsReturned() { + int sum = IntStream.range(1, 10).sum(); + + assertEquals(45, sum); + } + + @Test + public void givenARangeClosedOfIntegersWhenIntStreamSumIsCalledThenCorrectSumIsReturned() { + int sum = IntStream.rangeClosed(1, 10).sum(); + + assertEquals(55, sum); + } + + @Test + public void givenARangeWhenForEachIsCalledThenTheIndicesWillBePrinted() { + IntStream.rangeClosed(1, 5).parallel().forEach(System.out::println); + } + + @Test + public void givenAnArrayWhenSumIsCalledThenTheCorrectSumIsReturned() { + + int sum = Arrays.asList(33,45).stream().mapToInt(a -> a).sum(); + + assertEquals(78, sum); + } + + @Test + public void givenAnIntStreamThenGetTheEvenIntegers() { + List evenInts = IntStream.rangeClosed(1, 10) + .filter(i -> i % 2 == 0) + .boxed() + .collect(Collectors.toList()); + + List expected = IntStream.of(2, 4, 6, 8, 10).boxed().collect(Collectors.toList()); + + assertEquals(expected, evenInts); + } + + class Person { + private int age; + + Person(int age) { + this.age = age; + } + + int getAge() { + return age; + } + } +} \ No newline at end of file From 6809155a9195fa539071f3593f3c304ec89cfe89 Mon Sep 17 00:00:00 2001 From: ericgoebelbecker <@592Gbetz> Date: Fri, 15 Dec 2017 13:19:43 -0500 Subject: [PATCH 20/60] BAEL-1374 - same search in each loop. --- .../main/java/com/baeldung/array/SearchArrayTest.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/core-java/src/main/java/com/baeldung/array/SearchArrayTest.java b/core-java/src/main/java/com/baeldung/array/SearchArrayTest.java index 8b44138b32..345e1d48f3 100644 --- a/core-java/src/main/java/com/baeldung/array/SearchArrayTest.java +++ b/core-java/src/main/java/com/baeldung/array/SearchArrayTest.java @@ -26,7 +26,7 @@ public class SearchArrayTest { int count = 1000; String[] strings = seedArray(count); for (int i = 0; i < count; i++) { - searchList(strings, "W"); + searchList(strings, "T"); } } @@ -37,7 +37,7 @@ public class SearchArrayTest { int count = 1000; String[] strings = seedArray(count); for (int i = 0; i < count; i++) { - searchSet(strings, "S"); + searchSet(strings, "T"); } } @@ -51,7 +51,7 @@ public class SearchArrayTest { List asList = Arrays.asList(strings); for (int i = 0; i < count; i++) { - asList.contains("W"); + asList.contains("T"); } } @@ -63,7 +63,7 @@ public class SearchArrayTest { String[] strings = seedArray(count); Set asSet = new HashSet<>(Arrays.asList(strings)); for (int i = 0; i < count; i++) { - asSet.contains("S"); + asSet.contains("T"); } } @@ -77,7 +77,7 @@ public class SearchArrayTest { long startTime = System.nanoTime(); for (int i = 0; i < count; i++) { - Arrays.binarySearch(strings, "A"); + Arrays.binarySearch(strings, "T"); } long duration = System.nanoTime() - startTime; //System.out.println("Binary search: " + duration / 10000); From 15bc3244303470a77481cf338ce3c73f2557475e Mon Sep 17 00:00:00 2001 From: Marcos Date: Fri, 15 Dec 2017 20:26:16 +0100 Subject: [PATCH 21/60] binary tree changed to follow a recursive approach --- .../java/com/baeldung/tree/BinaryTree.java | 185 +++++++++--------- 1 file changed, 94 insertions(+), 91 deletions(-) diff --git a/core-java/src/main/java/com/baeldung/tree/BinaryTree.java b/core-java/src/main/java/com/baeldung/tree/BinaryTree.java index 3cc496e348..0b917ed452 100644 --- a/core-java/src/main/java/com/baeldung/tree/BinaryTree.java +++ b/core-java/src/main/java/com/baeldung/tree/BinaryTree.java @@ -16,29 +16,23 @@ public class BinaryTree { return; } - Node parent = root; - Node current = root; + addRecursive(root, value); + } - while (true) { + private Node addRecursive(Node current, int value) { - if (newNode.value < parent.value) { - current = parent.left; - - if (current == null) { - parent.left = newNode; - break; - } - } else { - current = parent.right; - - if (current == null) { - parent.right = newNode; - break; - } - } - - parent = current; + if (current == null) { + return new Node(value); } + + if (value < current.value) { + current.left = addRecursive(current.left, value); + } else { + current.right = addRecursive(current.right, value); + } + + return current; + } public boolean isEmpty() { @@ -46,115 +40,107 @@ public class BinaryTree { } public boolean containsNode(int value) { + return containsNodeRecursive(root, value); + } - Node current = root; - - while (current != null) { - - if (value == current.value) { - return true; - } - - if (value < current.value) { - current = current.left; - } else { - current = current.right; - } + private boolean containsNodeRecursive(Node current, int value) { + if (current == null) { + return false; + } else if (value == current.value) { + return true; + } else if (value < current.value) { + return containsNodeRecursive(current.left, value); + } else { + return containsNodeRecursive(current.right, value); } - return false; } public void delete(int value) { - Node current = root; - Node parent = root; - Node nodeToDelete = null; - boolean isLeftChild = false; + NodeVO nodeToDeleteAux = findNodeToDelete(root, root, false, value); - while (nodeToDelete == null && current != null) { - - if (value == current.value) { - nodeToDelete = current; - } else if (value < current.value) { - parent = current; - current = current.left; - isLeftChild = true; - } else { - parent = current; - current = current.right; - isLeftChild = false; - } - - } - - if (nodeToDelete == null) { + if (nodeToDeleteAux == null) { return; } // Case 1: no children - if (nodeToDelete.left == null && nodeToDelete.right == null) { - if (nodeToDelete == root) { + if (nodeToDeleteAux.node.left == null && nodeToDeleteAux.node.right == null) { + if (nodeToDeleteAux.node == root) { root = null; - } else if (isLeftChild) { - parent.left = null; + } else if (nodeToDeleteAux.isLeftChild) { + nodeToDeleteAux.parent.left = null; } else { - parent.right = null; + nodeToDeleteAux.parent.right = null; } } // Case 2: only 1 child - else if (nodeToDelete.right == null) { - if (nodeToDelete == root) { - root = nodeToDelete.left; - } else if (isLeftChild) { - parent.left = nodeToDelete.left; + else if (nodeToDeleteAux.node.right == null) { + if (nodeToDeleteAux.node == root) { + root = nodeToDeleteAux.node.left; + } else if (nodeToDeleteAux.isLeftChild) { + nodeToDeleteAux.parent.left = nodeToDeleteAux.node.left; } else { - parent.right = nodeToDelete.left; + nodeToDeleteAux.parent.right = nodeToDeleteAux.node.left; } - } else if (nodeToDelete.left == null) { - if (nodeToDelete == root) { - root = nodeToDelete.right; - } else if (isLeftChild) { - parent.left = nodeToDelete.right; + } else if (nodeToDeleteAux.node.left == null) { + if (nodeToDeleteAux.node == root) { + root = nodeToDeleteAux.node.right; + } else if (nodeToDeleteAux.isLeftChild) { + nodeToDeleteAux.parent.left = nodeToDeleteAux.node.right; } else { - parent.right = nodeToDelete.right; + nodeToDeleteAux.parent.right = nodeToDeleteAux.node.right; } } // Case 3: 2 children - else if (nodeToDelete.left != null && nodeToDelete.right != null) { - Node replacement = findReplacement(nodeToDelete); - if (nodeToDelete == root) { + else if (nodeToDeleteAux.node.left != null && nodeToDeleteAux.node.right != null) { + Node replacement = findReplacement(nodeToDeleteAux.node); + if (nodeToDeleteAux.node == root) { root = replacement; - } else if (isLeftChild) { - parent.left = replacement; + } else if (nodeToDeleteAux.isLeftChild) { + nodeToDeleteAux.parent.left = replacement; } else { - parent.right = replacement; + nodeToDeleteAux.parent.right = replacement; } } } + private NodeVO findNodeToDelete(Node current, Node parent, boolean isLeftChild, int value) { + + if (current == null) { + return null; + } else if (value == current.value) { + return new NodeVO(current, parent, isLeftChild); + } else if (value < current.value) { + return findNodeToDelete(current.left, current, true, value); + } else { + return findNodeToDelete(current.right, current, false, value); + } + } + private Node findReplacement(Node nodeToDelete) { - Node replacement = nodeToDelete; - Node parentReplacement = nodeToDelete; - Node current = nodeToDelete.right; + NodeVO replacementNodeVO = findSmallestNode(nodeToDelete, nodeToDelete); - while (current != null) { - parentReplacement = replacement; - replacement = current; - current = current.left; + if (replacementNodeVO.node != nodeToDelete.right) { + replacementNodeVO.parent.left = replacementNodeVO.node.right; + replacementNodeVO.node.right = nodeToDelete.right; } - if (replacement != nodeToDelete.right) { - parentReplacement.left = replacement.right; - replacement.right = nodeToDelete.right; + replacementNodeVO.node.left = nodeToDelete.left; + + return replacementNodeVO.node; + } + + private NodeVO findSmallestNode(Node root, Node parent) { + + if (root.left == null) { + return new NodeVO(root, parent); } - replacement.left = nodeToDelete.left; - - return replacement; + return findSmallestNode(root.left, root); } public void traverseInOrder(Node node) { @@ -202,6 +188,23 @@ public class BinaryTree { } } + class NodeVO { + Node node; + Node parent; + boolean isLeftChild; + + NodeVO(Node node, Node parent) { + this.node = node; + this.parent = parent; + } + + NodeVO(Node node, Node parent, boolean isLeftChild) { + this.node = node; + this.parent = parent; + this.isLeftChild = isLeftChild; + } + } + class Node { int value; Node left; From 9ead70be1bbab8515d4abdf7205b1eea79f5f11b Mon Sep 17 00:00:00 2001 From: Marcos Date: Fri, 15 Dec 2017 20:42:56 +0100 Subject: [PATCH 22/60] var renamed --- .../java/com/baeldung/tree/BinaryTree.java | 50 +++++++++---------- 1 file changed, 25 insertions(+), 25 deletions(-) diff --git a/core-java/src/main/java/com/baeldung/tree/BinaryTree.java b/core-java/src/main/java/com/baeldung/tree/BinaryTree.java index 0b917ed452..686136729e 100644 --- a/core-java/src/main/java/com/baeldung/tree/BinaryTree.java +++ b/core-java/src/main/java/com/baeldung/tree/BinaryTree.java @@ -59,49 +59,49 @@ public class BinaryTree { public void delete(int value) { - NodeVO nodeToDeleteAux = findNodeToDelete(root, root, false, value); + NodeVO nodeToDeleteVO = findNodeToDelete(root, root, false, value); - if (nodeToDeleteAux == null) { + if (nodeToDeleteVO == null) { return; } // Case 1: no children - if (nodeToDeleteAux.node.left == null && nodeToDeleteAux.node.right == null) { - if (nodeToDeleteAux.node == root) { + if (nodeToDeleteVO.node.left == null && nodeToDeleteVO.node.right == null) { + if (nodeToDeleteVO.node == root) { root = null; - } else if (nodeToDeleteAux.isLeftChild) { - nodeToDeleteAux.parent.left = null; + } else if (nodeToDeleteVO.isLeftChild) { + nodeToDeleteVO.parent.left = null; } else { - nodeToDeleteAux.parent.right = null; + nodeToDeleteVO.parent.right = null; } } // Case 2: only 1 child - else if (nodeToDeleteAux.node.right == null) { - if (nodeToDeleteAux.node == root) { - root = nodeToDeleteAux.node.left; - } else if (nodeToDeleteAux.isLeftChild) { - nodeToDeleteAux.parent.left = nodeToDeleteAux.node.left; + else if (nodeToDeleteVO.node.right == null) { + if (nodeToDeleteVO.node == root) { + root = nodeToDeleteVO.node.left; + } else if (nodeToDeleteVO.isLeftChild) { + nodeToDeleteVO.parent.left = nodeToDeleteVO.node.left; } else { - nodeToDeleteAux.parent.right = nodeToDeleteAux.node.left; + nodeToDeleteVO.parent.right = nodeToDeleteVO.node.left; } - } else if (nodeToDeleteAux.node.left == null) { - if (nodeToDeleteAux.node == root) { - root = nodeToDeleteAux.node.right; - } else if (nodeToDeleteAux.isLeftChild) { - nodeToDeleteAux.parent.left = nodeToDeleteAux.node.right; + } else if (nodeToDeleteVO.node.left == null) { + if (nodeToDeleteVO.node == root) { + root = nodeToDeleteVO.node.right; + } else if (nodeToDeleteVO.isLeftChild) { + nodeToDeleteVO.parent.left = nodeToDeleteVO.node.right; } else { - nodeToDeleteAux.parent.right = nodeToDeleteAux.node.right; + nodeToDeleteVO.parent.right = nodeToDeleteVO.node.right; } } // Case 3: 2 children - else if (nodeToDeleteAux.node.left != null && nodeToDeleteAux.node.right != null) { - Node replacement = findReplacement(nodeToDeleteAux.node); - if (nodeToDeleteAux.node == root) { + else if (nodeToDeleteVO.node.left != null && nodeToDeleteVO.node.right != null) { + Node replacement = findReplacement(nodeToDeleteVO.node); + if (nodeToDeleteVO.node == root) { root = replacement; - } else if (nodeToDeleteAux.isLeftChild) { - nodeToDeleteAux.parent.left = replacement; + } else if (nodeToDeleteVO.isLeftChild) { + nodeToDeleteVO.parent.left = replacement; } else { - nodeToDeleteAux.parent.right = replacement; + nodeToDeleteVO.parent.right = replacement; } } From 970de8173442a4aef7aaff10b7484c3b55844cf0 Mon Sep 17 00:00:00 2001 From: abialas Date: Fri, 15 Dec 2017 23:43:51 +0100 Subject: [PATCH 23/60] BAEL-1304 changes after code review --- .../spring-data-eclipselink/pom.xml | 1 + .../repo/PersonsRepositoryTest.java | 46 ++++++++----------- 2 files changed, 20 insertions(+), 27 deletions(-) diff --git a/persistence-modules/spring-data-eclipselink/pom.xml b/persistence-modules/spring-data-eclipselink/pom.xml index 147901dc90..65793fd1e0 100644 --- a/persistence-modules/spring-data-eclipselink/pom.xml +++ b/persistence-modules/spring-data-eclipselink/pom.xml @@ -72,6 +72,7 @@ org.springframework.boot spring-boot-maven-plugin + ${spring.version} diff --git a/persistence-modules/spring-data-eclipselink/src/test/java/com/baeldung/eclipselink/springdata/repo/PersonsRepositoryTest.java b/persistence-modules/spring-data-eclipselink/src/test/java/com/baeldung/eclipselink/springdata/repo/PersonsRepositoryTest.java index 4c24df9ee7..5947e6ffa0 100644 --- a/persistence-modules/spring-data-eclipselink/src/test/java/com/baeldung/eclipselink/springdata/repo/PersonsRepositoryTest.java +++ b/persistence-modules/spring-data-eclipselink/src/test/java/com/baeldung/eclipselink/springdata/repo/PersonsRepositoryTest.java @@ -22,38 +22,30 @@ import static org.hamcrest.core.IsNull.notNullValue; @DirtiesContext(classMode = DirtiesContext.ClassMode.BEFORE_EACH_TEST_METHOD) public class PersonsRepositoryTest { - @Autowired - private PersonsRepository personsRepository; + @Autowired + private PersonsRepository personsRepository; - @Test - public void shouldAddOnePersonToDB() { - // when - personsRepository.save(new Person()); + @Test + public void givenPerson_whenSave_thenAddOnePersonToDB() { + personsRepository.save(new Person()); + assertThat(personsRepository.findAll().spliterator().getExactSizeIfKnown(), equalTo(1l)); + } - // then - assertThat(personsRepository.findAll() - .spliterator() - .getExactSizeIfKnown(), equalTo(1l)); - } + @Test + public void givenPersonsAdamAndDaveInDB_whenSearchForPersonWithNameAdam_thenFindOnePerson() { + Person person1 = new Person(); + person1.setFirstName("Adam"); - @Test - public void shouldFindOnePersonWithNameAdam() { - // given - Person person1 = new Person(); - person1.setFirstName("Adam"); + Person person2 = new Person(); + person2.setFirstName("Dave"); - Person person2 = new Person(); - person2.setFirstName("Dave"); + personsRepository.save(person1); + personsRepository.save(person2); - personsRepository.save(person1); - personsRepository.save(person2); + Person foundPerson = personsRepository.findByFirstName("Adam"); - // when - Person foundPerson = personsRepository.findByFirstName("Adam"); - - // then - assertThat(foundPerson.getFirstName(), equalTo("Adam")); - assertThat(foundPerson.getId(), notNullValue()); - } + assertThat(foundPerson.getFirstName(), equalTo("Adam")); + assertThat(foundPerson.getId(), notNullValue()); + } } From e20d477733e5563afd006b91b835a5ea408ad54c Mon Sep 17 00:00:00 2001 From: ericgoebelbecker <@592Gbetz> Date: Fri, 15 Dec 2017 18:58:37 -0500 Subject: [PATCH 24/60] BAEL-1374 - reuse array --- .../com/baeldung/array/SearchArrayTest.java | 61 +++++++------------ 1 file changed, 21 insertions(+), 40 deletions(-) diff --git a/core-java/src/main/java/com/baeldung/array/SearchArrayTest.java b/core-java/src/main/java/com/baeldung/array/SearchArrayTest.java index 345e1d48f3..199ebdf036 100644 --- a/core-java/src/main/java/com/baeldung/array/SearchArrayTest.java +++ b/core-java/src/main/java/com/baeldung/array/SearchArrayTest.java @@ -10,47 +10,40 @@ import java.util.concurrent.TimeUnit; @OutputTimeUnit(TimeUnit.MICROSECONDS) public class SearchArrayTest { + @State(Scope.Benchmark) + public static class SearchData { + static int count = 1000; + static String[] strings = seedArray(1000); + } + + @Benchmark public void searchArrayLoop() { - - int count = 1000; - String[] strings = seedArray(count); - for (int i = 0; i < count; i++) { - searchLoop(strings, "T"); + for (int i = 0; i < SearchData.count; i++) { + searchLoop(SearchData.strings, "T"); } } @Benchmark public void searchArrayAllocNewList() { - - int count = 1000; - String[] strings = seedArray(count); - for (int i = 0; i < count; i++) { - searchList(strings, "T"); + for (int i = 0; i < SearchData.count; i++) { + searchList(SearchData.strings, "T"); } } @Benchmark public void searchArrayAllocNewSet() { - - int count = 1000; - String[] strings = seedArray(count); - for (int i = 0; i < count; i++) { - searchSet(strings, "T"); + for (int i = 0; i < SearchData.count; i++) { + searchSet(SearchData.strings, "T"); } } @Benchmark public void searchArrayReuseList() { - - int count = 1000; - String[] strings = seedArray(count); - - List asList = Arrays.asList(strings); - - for (int i = 0; i < count; i++) { + List asList = Arrays.asList(SearchData.strings); + for (int i = 0; i < SearchData.count; i++) { asList.contains("T"); } } @@ -58,11 +51,8 @@ public class SearchArrayTest { @Benchmark public void searchArrayReuseSet() { - - int count = 1000; - String[] strings = seedArray(count); - Set asSet = new HashSet<>(Arrays.asList(strings)); - for (int i = 0; i < count; i++) { + Set asSet = new HashSet<>(Arrays.asList(SearchData.strings)); + for (int i = 0; i < SearchData.count; i++) { asSet.contains("T"); } } @@ -70,18 +60,10 @@ public class SearchArrayTest { @Benchmark public void searchArrayBinarySearch() { - - int count = 1000; - String[] strings = seedArray(count); - Arrays.sort(strings); - - long startTime = System.nanoTime(); - for (int i = 0; i < count; i++) { - Arrays.binarySearch(strings, "T"); + Arrays.sort(SearchData.strings); + for (int i = 0; i < SearchData.count; i++) { + Arrays.binarySearch(SearchData.strings, "T"); } - long duration = System.nanoTime() - startTime; - //System.out.println("Binary search: " + duration / 10000); - } private boolean searchList(String[] strings, String searchString) { @@ -101,8 +83,7 @@ public class SearchArrayTest { return false; } - private String[] seedArray(int length) { - + private static String[] seedArray(int length) { String[] strings = new String[length]; Random random = new Random(); for (int i = 0; i < length; i++) From f7c32aabb179a8b888fa33a21611f5031cee57bf Mon Sep 17 00:00:00 2001 From: Loredana Crusoveanu Date: Sat, 16 Dec 2017 10:39:02 +0200 Subject: [PATCH 25/60] change test name --- .../eclipselink/springdata/repo/PersonsRepositoryTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/persistence-modules/spring-data-eclipselink/src/test/java/com/baeldung/eclipselink/springdata/repo/PersonsRepositoryTest.java b/persistence-modules/spring-data-eclipselink/src/test/java/com/baeldung/eclipselink/springdata/repo/PersonsRepositoryTest.java index 5947e6ffa0..1a7c28df6c 100644 --- a/persistence-modules/spring-data-eclipselink/src/test/java/com/baeldung/eclipselink/springdata/repo/PersonsRepositoryTest.java +++ b/persistence-modules/spring-data-eclipselink/src/test/java/com/baeldung/eclipselink/springdata/repo/PersonsRepositoryTest.java @@ -32,7 +32,7 @@ public class PersonsRepositoryTest { } @Test - public void givenPersonsAdamAndDaveInDB_whenSearchForPersonWithNameAdam_thenFindOnePerson() { + public void givenPersons_whenSearch_thenFindOk() { Person person1 = new Person(); person1.setFirstName("Adam"); From 7acbc7902d109fb3252fa8518c96e53a1ac8af66 Mon Sep 17 00:00:00 2001 From: Marcos Date: Sat, 16 Dec 2017 12:33:50 +0100 Subject: [PATCH 26/60] recursived deletion binary tree --- .../java/com/baeldung/tree/BinaryTree.java | 119 +++++------------- 1 file changed, 32 insertions(+), 87 deletions(-) diff --git a/core-java/src/main/java/com/baeldung/tree/BinaryTree.java b/core-java/src/main/java/com/baeldung/tree/BinaryTree.java index 686136729e..d5ccd05bdb 100644 --- a/core-java/src/main/java/com/baeldung/tree/BinaryTree.java +++ b/core-java/src/main/java/com/baeldung/tree/BinaryTree.java @@ -58,89 +58,51 @@ public class BinaryTree { } public void delete(int value) { - - NodeVO nodeToDeleteVO = findNodeToDelete(root, root, false, value); - - if (nodeToDeleteVO == null) { - return; - } - - // Case 1: no children - if (nodeToDeleteVO.node.left == null && nodeToDeleteVO.node.right == null) { - if (nodeToDeleteVO.node == root) { - root = null; - } else if (nodeToDeleteVO.isLeftChild) { - nodeToDeleteVO.parent.left = null; - } else { - nodeToDeleteVO.parent.right = null; - } - } - // Case 2: only 1 child - else if (nodeToDeleteVO.node.right == null) { - if (nodeToDeleteVO.node == root) { - root = nodeToDeleteVO.node.left; - } else if (nodeToDeleteVO.isLeftChild) { - nodeToDeleteVO.parent.left = nodeToDeleteVO.node.left; - } else { - nodeToDeleteVO.parent.right = nodeToDeleteVO.node.left; - } - } else if (nodeToDeleteVO.node.left == null) { - if (nodeToDeleteVO.node == root) { - root = nodeToDeleteVO.node.right; - } else if (nodeToDeleteVO.isLeftChild) { - nodeToDeleteVO.parent.left = nodeToDeleteVO.node.right; - } else { - nodeToDeleteVO.parent.right = nodeToDeleteVO.node.right; - } - } - // Case 3: 2 children - else if (nodeToDeleteVO.node.left != null && nodeToDeleteVO.node.right != null) { - Node replacement = findReplacement(nodeToDeleteVO.node); - if (nodeToDeleteVO.node == root) { - root = replacement; - } else if (nodeToDeleteVO.isLeftChild) { - nodeToDeleteVO.parent.left = replacement; - } else { - nodeToDeleteVO.parent.right = replacement; - } - } - + deleteRecursive(root, value); } - private NodeVO findNodeToDelete(Node current, Node parent, boolean isLeftChild, int value) { - + private Node deleteRecursive(Node current, int value) { if (current == null) { return null; - } else if (value == current.value) { - return new NodeVO(current, parent, isLeftChild); + } + + if (value == current.value) { + // Case 1: no children + if (current.left == null && current.right == null) { + return null; + } + + // Case 2: only 1 child + if (current.right == null) { + return current.left; + } + + if (current.left == null) { + return current.right; + } + + // Case 3: 2 children + int smallestValue = findSmallestNode(current.right); + current.value = smallestValue; + current.right = deleteRecursive(current.right, smallestValue); + return current; + } else if (value < current.value) { - return findNodeToDelete(current.left, current, true, value); + current.left = deleteRecursive(current.left, value); + return current; } else { - return findNodeToDelete(current.right, current, false, value); + current.right = deleteRecursive(current.right, value); + return current; } } - private Node findReplacement(Node nodeToDelete) { - - NodeVO replacementNodeVO = findSmallestNode(nodeToDelete, nodeToDelete); - - if (replacementNodeVO.node != nodeToDelete.right) { - replacementNodeVO.parent.left = replacementNodeVO.node.right; - replacementNodeVO.node.right = nodeToDelete.right; - } - - replacementNodeVO.node.left = nodeToDelete.left; - - return replacementNodeVO.node; - } - - private NodeVO findSmallestNode(Node root, Node parent) { + private int findSmallestNode(Node root) { if (root.left == null) { - return new NodeVO(root, parent); + return root.value; } - return findSmallestNode(root.left, root); + return findSmallestNode(root.left); } public void traverseInOrder(Node node) { @@ -188,23 +150,6 @@ public class BinaryTree { } } - class NodeVO { - Node node; - Node parent; - boolean isLeftChild; - - NodeVO(Node node, Node parent) { - this.node = node; - this.parent = parent; - } - - NodeVO(Node node, Node parent, boolean isLeftChild) { - this.node = node; - this.parent = parent; - this.isLeftChild = isLeftChild; - } - } - class Node { int value; Node left; From 959845621fc23dbb411b8f8585042a797dc84dde Mon Sep 17 00:00:00 2001 From: Marcos Date: Sat, 16 Dec 2017 12:37:30 +0100 Subject: [PATCH 27/60] refactor --- core-java/src/main/java/com/baeldung/tree/BinaryTree.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/core-java/src/main/java/com/baeldung/tree/BinaryTree.java b/core-java/src/main/java/com/baeldung/tree/BinaryTree.java index d5ccd05bdb..285dc12219 100644 --- a/core-java/src/main/java/com/baeldung/tree/BinaryTree.java +++ b/core-java/src/main/java/com/baeldung/tree/BinaryTree.java @@ -82,7 +82,7 @@ public class BinaryTree { } // Case 3: 2 children - int smallestValue = findSmallestNode(current.right); + int smallestValue = findSmallestValue(current.right); current.value = smallestValue; current.right = deleteRecursive(current.right, smallestValue); return current; @@ -96,13 +96,13 @@ public class BinaryTree { } } - private int findSmallestNode(Node root) { + private int findSmallestValue(Node root) { if (root.left == null) { return root.value; } - return findSmallestNode(root.left); + return findSmallestValue(root.left); } public void traverseInOrder(Node node) { From bac07e4dca4b1834038175f6e034ba9ace1d081d Mon Sep 17 00:00:00 2001 From: Grzegorz Piwowarek Date: Sat, 16 Dec 2017 13:15:22 +0100 Subject: [PATCH 28/60] Update README.md (#3252) --- libraries/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libraries/README.md b/libraries/README.md index ae2522ca9e..990a50e711 100644 --- a/libraries/README.md +++ b/libraries/README.md @@ -30,7 +30,7 @@ - [Introduction to Neuroph](http://www.baeldung.com/neuroph) - [Guide to Apache Commons CircularFifoQueue](http://www.baeldung.com/commons-circular-fifo-queue) - [Quick Guide to RSS with Rome](http://www.baeldung.com/rome-rss) -- [Introduction to NoException](http://www.baeldung.com/intrduction-to-noexception) +- [Introduction to NoException](http://www.baeldung.com/introduction-to-noexception) - [Introduction to PCollections](http://www.baeldung.com/java-pcollections) - [Introduction to Hoverfly in Java](http://www.baeldung.com/hoverfly) - [Apache Commons Chain](http://www.baeldung.com/apache-commons-chain) From a5f78cf7d5ff4044145e010dc429bf9444bfd128 Mon Sep 17 00:00:00 2001 From: Pazis Date: Sat, 16 Dec 2017 14:18:09 +0200 Subject: [PATCH 29/60] BAEL-1308 - Copy a File with Java (#3000) * Create Student.java * Create ApplicationContextTestBeanInjection.java * Update Student.java * added tests added tests * BAEL-1308 part 1 * Create test_stream.txt * Create test_files.txt * Create test_channel.txt * Create test_apache.txt * Create test.txt * Delete test.txt * Create readme.txt * Delete Student.java * Delete StudentInjectionTest.java * Delete ApplicationContextTestBeanInjection.java --- .../java/com/baeldung/stream/FileCopy.java | 48 +++++++++++++++++++ .../com/baeldung/stream/FileCopyTest.java | 47 ++++++++++++++++++ .../test/resources/copyTest/dest/readme.txt | 2 + .../resources/copyTest/src/test_apache.txt | 1 + .../resources/copyTest/src/test_channel.txt | 1 + .../resources/copyTest/src/test_files.txt | 1 + .../resources/copyTest/src/test_stream.txt | 1 + 7 files changed, 101 insertions(+) create mode 100644 core-java/src/main/java/com/baeldung/stream/FileCopy.java create mode 100644 core-java/src/test/java/com/baeldung/stream/FileCopyTest.java create mode 100644 core-java/src/test/resources/copyTest/dest/readme.txt create mode 100644 core-java/src/test/resources/copyTest/src/test_apache.txt create mode 100644 core-java/src/test/resources/copyTest/src/test_channel.txt create mode 100644 core-java/src/test/resources/copyTest/src/test_files.txt create mode 100644 core-java/src/test/resources/copyTest/src/test_stream.txt diff --git a/core-java/src/main/java/com/baeldung/stream/FileCopy.java b/core-java/src/main/java/com/baeldung/stream/FileCopy.java new file mode 100644 index 0000000000..ccc2066b36 --- /dev/null +++ b/core-java/src/main/java/com/baeldung/stream/FileCopy.java @@ -0,0 +1,48 @@ +package com.baeldung.stream; + +import java.io.File; +import java.io.FileInputStream; +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.InputStream; +import java.io.OutputStream; +import java.nio.channels.FileChannel; +import java.nio.file.Files; + +import org.apache.commons.io.FileUtils; + +public class FileCopy { + + public static void copyFileUsingStream(File source, File dest) throws IOException { + InputStream is = null; + OutputStream os = null; + is = new FileInputStream(source); + os = new FileOutputStream(dest); + byte[] buffer = new byte[1024]; + int length; + while ((length = is.read(buffer)) > 0) { + os.write(buffer, 0, length); + } + is.close(); + os.close(); + } + + public static void copyFileUsingChannel(File source, File dest) throws IOException { + FileChannel sourceChannel = null; + FileChannel destChannel = null; + sourceChannel = new FileInputStream(source).getChannel(); + destChannel = new FileOutputStream(dest).getChannel(); + destChannel.transferFrom(sourceChannel, 0, sourceChannel.size()); + sourceChannel.close(); + destChannel.close(); + } + + public static void copyFileUsingApacheCommonsIO(File source, File dest) throws IOException { + FileUtils.copyFile(source, dest); + } + + public static void copyFileUsingJavaFiles(File source, File dest) throws IOException { + Files.copy(source.toPath(), dest.toPath()); + } + +} diff --git a/core-java/src/test/java/com/baeldung/stream/FileCopyTest.java b/core-java/src/test/java/com/baeldung/stream/FileCopyTest.java new file mode 100644 index 0000000000..3b915a3829 --- /dev/null +++ b/core-java/src/test/java/com/baeldung/stream/FileCopyTest.java @@ -0,0 +1,47 @@ +package com.baeldung.stream; + +import static org.junit.Assert.assertTrue; + +import java.io.File; +import java.io.IOException; + +import org.junit.Test; + +public class FileCopyTest { + + @Test + public void whenUsingStream_thenCopyFile() throws IOException { + File src = new File("src" + File.separator + "test" + File.separator + "resources" + File.separator + "copyTest" + File.separator + "src" + File.separator + "test_stream.txt"); + File dest = new File("src" + File.separator + "test" + File.separator + "resources" + File.separator + "copyTest" + File.separator + "dest" + File.separator + "test_stream.txt"); + FileCopy.copyFileUsingStream(src, dest); + assertTrue(dest.exists()); + dest.delete(); + } + + @Test + public void whenUsingFiles_thenCopyFile() throws IOException { + File src = new File("src" + File.separator + "test" + File.separator + "resources" + File.separator + "copyTest" + File.separator + "src" + File.separator + "test_files.txt"); + File dest = new File("src" + File.separator + "test" + File.separator + "resources" + File.separator + "copyTest" + File.separator + "dest" + File.separator + "test_files.txt"); + FileCopy.copyFileUsingJavaFiles(src, dest); + assertTrue(dest.exists()); + dest.delete(); + } + + @Test + public void whenUsingChannel_thenCopyFile() throws IOException { + File src = new File("src" + File.separator + "test" + File.separator + "resources" + File.separator + "copyTest" + File.separator + "src" + File.separator + "test_channel.txt"); + File dest = new File("src" + File.separator + "test" + File.separator + "resources" + File.separator + "copyTest" + File.separator + "dest" + File.separator + "test_channel.txt"); + FileCopy.copyFileUsingChannel(src, dest); + assertTrue(dest.exists()); + dest.delete(); + } + + @Test + public void whenUsingApache_thenCopyFile() throws IOException { + File src = new File("src" + File.separator + "test" + File.separator + "resources" + File.separator + "copyTest" + File.separator + "src" + File.separator + "test_apache.txt"); + File dest = new File("src" + File.separator + "test" + File.separator + "resources" + File.separator + "copyTest" + File.separator + "dest" + File.separator + "test_apache.txt"); + FileCopy.copyFileUsingApacheCommonsIO(src, dest); + assertTrue(dest.exists()); + dest.delete(); + } +} diff --git a/core-java/src/test/resources/copyTest/dest/readme.txt b/core-java/src/test/resources/copyTest/dest/readme.txt new file mode 100644 index 0000000000..dfda31ee9f --- /dev/null +++ b/core-java/src/test/resources/copyTest/dest/readme.txt @@ -0,0 +1,2 @@ +files will be copied here and then deleted +remove `file.delete()` to see the files here diff --git a/core-java/src/test/resources/copyTest/src/test_apache.txt b/core-java/src/test/resources/copyTest/src/test_apache.txt new file mode 100644 index 0000000000..a6b651973d --- /dev/null +++ b/core-java/src/test/resources/copyTest/src/test_apache.txt @@ -0,0 +1 @@ +apache diff --git a/core-java/src/test/resources/copyTest/src/test_channel.txt b/core-java/src/test/resources/copyTest/src/test_channel.txt new file mode 100644 index 0000000000..6dca835871 --- /dev/null +++ b/core-java/src/test/resources/copyTest/src/test_channel.txt @@ -0,0 +1 @@ +channel diff --git a/core-java/src/test/resources/copyTest/src/test_files.txt b/core-java/src/test/resources/copyTest/src/test_files.txt new file mode 100644 index 0000000000..027271b9b2 --- /dev/null +++ b/core-java/src/test/resources/copyTest/src/test_files.txt @@ -0,0 +1 @@ +files diff --git a/core-java/src/test/resources/copyTest/src/test_stream.txt b/core-java/src/test/resources/copyTest/src/test_stream.txt new file mode 100644 index 0000000000..eac9b41cbe --- /dev/null +++ b/core-java/src/test/resources/copyTest/src/test_stream.txt @@ -0,0 +1 @@ +stream From afb95788476de5d238f71fc4d3d5fd58582c85ca Mon Sep 17 00:00:00 2001 From: Loredana Crusoveanu Date: Sat, 16 Dec 2017 17:46:57 +0200 Subject: [PATCH 30/60] change repo name --- spring-jenkins-pipeline/scripted-pipeline-unix-nonunix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spring-jenkins-pipeline/scripted-pipeline-unix-nonunix b/spring-jenkins-pipeline/scripted-pipeline-unix-nonunix index e9cae64d3d..fab940ad3d 100644 --- a/spring-jenkins-pipeline/scripted-pipeline-unix-nonunix +++ b/spring-jenkins-pipeline/scripted-pipeline-unix-nonunix @@ -1,6 +1,6 @@ node { stage 'Clone the project' - git 'https://github.com/dassiorleando/tutorials.git' + git 'https://github.com/eugenp/tutorials.git' dir('spring-jenkins-pipeline') { stage("Compilation and Analysis") { From 6b323c45cc3731d4447412e3b14faef1f3ba890d Mon Sep 17 00:00:00 2001 From: shouvikbhattacharya Date: Sat, 16 Dec 2017 21:28:03 +0530 Subject: [PATCH 31/60] BAEL-1433: Minor changes. --- .../java/com/baeldung/collection/WhenUsingTreeSet.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/core-java/src/test/java/com/baeldung/collection/WhenUsingTreeSet.java b/core-java/src/test/java/com/baeldung/collection/WhenUsingTreeSet.java index 887f6eba1d..52d5b08813 100644 --- a/core-java/src/test/java/com/baeldung/collection/WhenUsingTreeSet.java +++ b/core-java/src/test/java/com/baeldung/collection/WhenUsingTreeSet.java @@ -26,7 +26,6 @@ public class WhenUsingTreeSet { @Override public String toString() { - // TODO Auto-generated method stub return id.toString(); } } @@ -189,8 +188,14 @@ public class WhenUsingTreeSet { treeSet.add(5); treeSet.add(6); + Set expectedSet = new TreeSet<>(); + expectedSet.add(2); + expectedSet.add(3); + expectedSet.add(4); + expectedSet.add(5); + Set subSet = treeSet.subSet(2, 6); - System.out.println(subSet); + Assert.assertEquals(expectedSet, subSet); } @Test From ec95d9b208cae1d187b8428bbbe94f8982a3c504 Mon Sep 17 00:00:00 2001 From: Dominik Date: Sat, 16 Dec 2017 19:37:43 +0100 Subject: [PATCH 32/60] BAEL1367: VarHandles Article --- .../java9/varhandles/VariableHandlesTest.java | 101 ++++++++++-------- 1 file changed, 58 insertions(+), 43 deletions(-) diff --git a/core-java-9/src/test/java/com/baeldung/java9/varhandles/VariableHandlesTest.java b/core-java-9/src/test/java/com/baeldung/java9/varhandles/VariableHandlesTest.java index 210c4f0654..50766502ec 100644 --- a/core-java-9/src/test/java/com/baeldung/java9/varhandles/VariableHandlesTest.java +++ b/core-java-9/src/test/java/com/baeldung/java9/varhandles/VariableHandlesTest.java @@ -1,91 +1,106 @@ package com.baeldung.java9.varhandles; -import org.junit.Assert; import org.junit.Test; import java.lang.invoke.MethodHandles; import java.lang.invoke.VarHandle; +import static org.assertj.core.api.Assertions.assertThat; + public class VariableHandlesTest { + public int publicTestVariable = 1; private int privateTestVariable = 1; public int variableToSet = 1; public int variableToCompareAndSet = 1; public int variableToGetAndAdd = 0; public byte variableToBitwiseOr = 0; + @Test - public void whenVariableHandleForPublicVariableIsCreated_ThenItIsInitializedProperly() - throws NoSuchFieldException, IllegalAccessException { - VarHandle publicIntHandle = MethodHandles.lookup() - .in(VariableHandlesTest.class) - .findVarHandle(VariableHandlesTest.class,"publicTestVariable", int.class); - Assert.assertEquals(1, publicIntHandle.coordinateTypes().size()); - Assert.assertEquals(VariableHandlesTest.class, publicIntHandle.coordinateTypes().get(0)); + public void whenVariableHandleForPublicVariableIsCreated_ThenItIsInitializedProperly() throws NoSuchFieldException, IllegalAccessException { + VarHandle publicIntHandle = MethodHandles + .lookup() + .in(VariableHandlesTest.class) + .findVarHandle(VariableHandlesTest.class, "publicTestVariable", int.class); + + assertThat(publicIntHandle.coordinateTypes().size() == 1); + assertThat(publicIntHandle.coordinateTypes().get(0) == VariableHandles.class); } @Test - public void whenVariableHandleForPrivateVariableIsCreated_ThenItIsInitializedProperly() - throws NoSuchFieldException, IllegalAccessException { - VarHandle privateIntHandle = MethodHandles.privateLookupIn(VariableHandlesTest.class, MethodHandles.lookup()) - .findVarHandle(VariableHandlesTest.class,"privateTestVariable", int.class); - Assert.assertNotNull(privateIntHandle); - Assert.assertEquals(1, privateIntHandle.coordinateTypes().size()); - Assert.assertEquals(VariableHandlesTest.class, privateIntHandle.coordinateTypes().get(0)); + public void whenVariableHandleForPrivateVariableIsCreated_ThenItIsInitializedProperly() throws NoSuchFieldException, IllegalAccessException { + VarHandle privateIntHandle = MethodHandles + .privateLookupIn(VariableHandlesTest.class, MethodHandles.lookup()) + .findVarHandle(VariableHandlesTest.class, "privateTestVariable", int.class); + + assertThat(privateIntHandle.coordinateTypes().size() == 1); + assertThat(privateIntHandle.coordinateTypes().get(0) == VariableHandlesTest.class); } @Test - public void whenVariableHandleForArrayVariableIsCreated_ThenItIsInitializedProperly() - throws NoSuchFieldException, IllegalAccessException { - VarHandle arrayVarHandle = MethodHandles.arrayElementVarHandle(int[].class); - Assert.assertEquals(2, arrayVarHandle.coordinateTypes().size()); - Assert.assertEquals(int[].class, arrayVarHandle.coordinateTypes().get(0)); + public void whenVariableHandleForArrayVariableIsCreated_ThenItIsInitializedProperly() throws NoSuchFieldException, IllegalAccessException { + VarHandle arrayVarHandle = MethodHandles + .arrayElementVarHandle(int[].class); + + assertThat(arrayVarHandle.coordinateTypes().size() == 2); + assertThat(arrayVarHandle.coordinateTypes().get(0) == int[].class); } @Test public void givenVarHandle_whenGetIsInvoked_ThenValueOfVariableIsReturned() throws NoSuchFieldException, IllegalAccessException { - VarHandle publicIntHandle = MethodHandles.lookup() - .in(VariableHandlesTest.class) - .findVarHandle(VariableHandlesTest.class,"publicTestVariable", int.class); - Assert.assertEquals(1, publicIntHandle.get(this)); + VarHandle publicIntHandle = MethodHandles + .lookup() + .in(VariableHandlesTest.class) + .findVarHandle(VariableHandlesTest.class, "publicTestVariable", int.class); + + assertThat((int) publicIntHandle.get(this) == 1); } @Test public void givenVarHandle_whenSetIsInvoked_ThenValueOfVariableIsChanged() throws NoSuchFieldException, IllegalAccessException { - VarHandle publicIntHandle = MethodHandles.lookup() - .in(VariableHandlesTest.class) - .findVarHandle(VariableHandlesTest.class,"variableToSet", int.class); + VarHandle publicIntHandle = MethodHandles + .lookup() + .in(VariableHandlesTest.class) + .findVarHandle(VariableHandlesTest.class, "variableToSet", int.class); publicIntHandle.set(this, 15); - Assert.assertEquals(15, publicIntHandle.get(this)); + + assertThat((int) publicIntHandle.get(this) == 15); } @Test public void givenVarHandle_whenCompareAndSetIsInvoked_ThenValueOfVariableIsChanged() throws NoSuchFieldException, IllegalAccessException { - VarHandle publicIntHandle = MethodHandles.lookup() - .in(VariableHandlesTest.class) - .findVarHandle(VariableHandlesTest.class,"variableToCompareAndSet", int.class); - publicIntHandle.compareAndSet(this, 1,100); - Assert.assertEquals(100, publicIntHandle.get(this)); + VarHandle publicIntHandle = MethodHandles + .lookup() + .in(VariableHandlesTest.class) + .findVarHandle(VariableHandlesTest.class, "variableToCompareAndSet", int.class); + publicIntHandle.compareAndSet(this, 1, 100); + + assertThat((int) publicIntHandle.get(this) == 100); } @Test public void givenVarHandle_whenGetAndAddIsInvoked_ThenValueOfVariableIsChanged() throws NoSuchFieldException, IllegalAccessException { - VarHandle publicIntHandle = MethodHandles.lookup() - .in(VariableHandlesTest.class) - .findVarHandle(VariableHandlesTest.class,"variableToGetAndAdd", int.class); + VarHandle publicIntHandle = MethodHandles + .lookup() + .in(VariableHandlesTest.class) + .findVarHandle(VariableHandlesTest.class, "variableToGetAndAdd", int.class); int before = (int) publicIntHandle.getAndAdd(this, 200); - Assert.assertEquals(0, before); - Assert.assertEquals(200, publicIntHandle.get(this)); + + assertThat(before == 0); + assertThat((int) publicIntHandle.get(this) == 200); } @Test public void givenVarHandle_whenGetAndBitwiseOrIsInvoked_ThenValueOfVariableIsChanged() throws NoSuchFieldException, IllegalAccessException { - VarHandle publicIntHandle = MethodHandles.lookup() - .in(VariableHandlesTest.class) - .findVarHandle(VariableHandlesTest.class,"variableToBitwiseOr", byte.class); + VarHandle publicIntHandle = MethodHandles + .lookup() + .in(VariableHandlesTest.class) + .findVarHandle(VariableHandlesTest.class, "variableToBitwiseOr", byte.class); byte before = (byte) publicIntHandle.getAndBitwiseOr(this, (byte) 127); - Assert.assertEquals(0, before); - Assert.assertEquals(127, variableToBitwiseOr); + + assertThat(before == 0); + assertThat(variableToBitwiseOr == 127); } } From 8828d98fc7ad1a79a079f56f2fe56c0cd3cc3e7c Mon Sep 17 00:00:00 2001 From: chober Date: Mon, 18 Dec 2017 13:52:59 +0000 Subject: [PATCH 33/60] update flyway dependency to latest 5.0.2 release --- flyway/flyway-callbacks/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flyway/flyway-callbacks/pom.xml b/flyway/flyway-callbacks/pom.xml index 70dbef9b69..e61a5742a4 100644 --- a/flyway/flyway-callbacks/pom.xml +++ b/flyway/flyway-callbacks/pom.xml @@ -27,7 +27,7 @@ org.flywaydb flyway-core - 4.2.0 + 5.0.2 From fb5dd0a85e44a469e0c32bd275c0ce7ff3f5d0d7 Mon Sep 17 00:00:00 2001 From: linhvovn Date: Mon, 18 Dec 2017 22:55:23 +0800 Subject: [PATCH 34/60] [tlinh2110@gmail.com] Remove unused test cases --- .../service/SystemPropImpl.java | 26 --------- .../service/SystemPropInterface.java | 11 ---- .../service/UserRoleService.java | 2 +- .../TestCustomSecurityContext.java | 41 -------------- .../TestMethodSecurity.java | 16 +++--- .../testmethodsecurity/TestSystemProp.java | 54 ------------------- .../TestWithMockUserAtClassLevel.java | 4 +- .../testmethodsecurity/WithMockSysUser.java | 12 ----- ...WithMockSysUserSecurityContextFactory.java | 28 ---------- 9 files changed, 11 insertions(+), 183 deletions(-) delete mode 100644 spring-security-core/src/main/java/org/baeldung/testmethodsecurity/service/SystemPropImpl.java delete mode 100644 spring-security-core/src/main/java/org/baeldung/testmethodsecurity/service/SystemPropInterface.java delete mode 100644 spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestCustomSecurityContext.java delete mode 100644 spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestSystemProp.java delete mode 100644 spring-security-core/src/test/java/org/baeldung/testmethodsecurity/WithMockSysUser.java delete mode 100644 spring-security-core/src/test/java/org/baeldung/testmethodsecurity/WithMockSysUserSecurityContextFactory.java diff --git a/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/service/SystemPropImpl.java b/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/service/SystemPropImpl.java deleted file mode 100644 index 7307fb63fe..0000000000 --- a/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/service/SystemPropImpl.java +++ /dev/null @@ -1,26 +0,0 @@ -package org.baeldung.testmethodsecurity.service; - -import org.springframework.security.access.annotation.Secured; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.stereotype.Service; - -@Service -public class SystemPropImpl implements SystemPropInterface{ - - @PreAuthorize("permitAll") - @Override - public String getSystemName() { - return "Method Security"; - } - - @Override - public String sayHello(){ - return sayHi(); - } - - @Secured("ROLE_USER") - public String sayHi(){ - return "Hi"; - } - -} diff --git a/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/service/SystemPropInterface.java b/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/service/SystemPropInterface.java deleted file mode 100644 index b61d42083d..0000000000 --- a/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/service/SystemPropInterface.java +++ /dev/null @@ -1,11 +0,0 @@ -package org.baeldung.testmethodsecurity.service; - -public interface SystemPropInterface { - - String getSystemName(); - - String sayHello(); - - String sayHi(); - -} diff --git a/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/service/UserRoleService.java b/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/service/UserRoleService.java index 46cab5918a..f4dc6cf335 100644 --- a/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/service/UserRoleService.java +++ b/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/service/UserRoleService.java @@ -16,7 +16,7 @@ public class UserRoleService { UserRoleRepository userRoleRepository; @PreAuthorize("hasRole('ROLE_VIEWER') or hasAuthority('SYS_ADMIN')") - public String getUserName(){ + public String getUsername(){ SecurityContext securityContext = SecurityContextHolder.getContext(); return securityContext.getAuthentication().getName(); } diff --git a/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestCustomSecurityContext.java b/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestCustomSecurityContext.java deleted file mode 100644 index f231437e40..0000000000 --- a/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestCustomSecurityContext.java +++ /dev/null @@ -1,41 +0,0 @@ -package org.baeldung.testmethodsecurity; - -import static org.junit.Assert.assertEquals; - -import org.baeldung.testmethodsecurity.service.UserRoleService; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.context.annotation.ComponentScan; -import org.springframework.context.annotation.Configuration; -import org.springframework.security.access.AccessDeniedException; -import org.springframework.test.context.ContextConfiguration; -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; - -@RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration -public class TestCustomSecurityContext { - - @Autowired - UserRoleService userRoleService; - - @Configuration - @ComponentScan("org.baeldung.testmethodsecurity.*") - public static class SpringConfig { - - } - - @Test - @WithMockSysUser(systemUserName="jane") - public void whenJane_callGetUserName_thenOK(){ - String userName = userRoleService.getUserName(); - assertEquals("jane",userName); - } - - @Test(expected=AccessDeniedException.class) - @WithMockSysUser(systemUserName="john") - public void whenJohn_callGetUserName_thenFail(){ - userRoleService.getUserName(); - } - -} diff --git a/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestMethodSecurity.java b/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestMethodSecurity.java index 8b7b095187..6066212630 100644 --- a/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestMethodSecurity.java +++ b/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestMethodSecurity.java @@ -29,28 +29,28 @@ public class TestMethodSecurity{ @Test @WithMockUser(username="john",roles={"VIEWER"}) - public void whenRoleViewer_callGetUserName_thenOK(){ - String userName = userRoleService.getUserName(); + public void givenRoleViewer_whenCallGetUsername_thenReturnUsername(){ + String userName = userRoleService.getUsername(); assertEquals("john", userName); } @Test @WithMockUser(username="john",authorities={"SYS_ADMIN"}) - public void whenSysAdmin_callGetUserName_thenOK(){ - String userName = userRoleService.getUserName(); + public void givenAuthoritySysAdmin_whenCallGetUsername_thenReturnUsername(){ + String userName = userRoleService.getUsername(); assertEquals("john", userName); } @Test(expected=AccessDeniedException.class) @WithAnonymousUser - public void whenAnomynous_callGetUserName_thenFail(){ - userRoleService.getUserName(); + public void givenAnomynousUser_whenCallGetUsername_thenAccessDenied(){ + userRoleService.getUsername(); } @Test @WithMockJohnViewer - public void whenJohnViewer_callGetUserName_thenOK(){ - String userName = userRoleService.getUserName(); + public void givenMockedJohnViewer_whenCallGetUsername_thenReturnUsername(){ + String userName = userRoleService.getUsername(); assertEquals("john", userName); } diff --git a/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestSystemProp.java b/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestSystemProp.java deleted file mode 100644 index 1a36cf7ae1..0000000000 --- a/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestSystemProp.java +++ /dev/null @@ -1,54 +0,0 @@ -package org.baeldung.testmethodsecurity; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertFalse; -import static org.junit.Assert.assertTrue; - -import java.lang.reflect.Proxy; - -import org.baeldung.testmethodsecurity.service.SystemPropImpl; -import org.baeldung.testmethodsecurity.service.SystemPropInterface; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.context.annotation.ComponentScan; -import org.springframework.context.annotation.Configuration; -import org.springframework.security.authentication.AuthenticationCredentialsNotFoundException; -import org.springframework.security.test.context.support.WithMockUser; -import org.springframework.test.context.ContextConfiguration; -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; - -@RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration -public class TestSystemProp{ - - @Autowired - SystemPropInterface systemProp; - - @Test - @WithMockUser(username="test") - public void checkSystemPropInstance(){ - assertFalse(systemProp instanceof SystemPropImpl); - assertTrue(systemProp instanceof SystemPropInterface); - assertTrue(systemProp instanceof Proxy); - - assertEquals("Method Security", systemProp.getSystemName()); - } - - @Test - public void whenNotAuthentication_callSayHello_thenOK(){ - String hello = systemProp.sayHello(); - assertEquals("Hi", hello); - } - - @Test(expected=AuthenticationCredentialsNotFoundException.class) - public void whenNotAuthentication_callSayHi_thenFailed(){ - systemProp.sayHi(); - } - - @Configuration - @ComponentScan("org.baeldung.testmethodsecurity.*") - public static class SpringConfig { - - } -} diff --git a/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestWithMockUserAtClassLevel.java b/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestWithMockUserAtClassLevel.java index aaa1b84294..2826dfed38 100644 --- a/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestWithMockUserAtClassLevel.java +++ b/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/TestWithMockUserAtClassLevel.java @@ -18,8 +18,8 @@ import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; public class TestWithMockUserAtClassLevel { @Test - public void whenRoleViewerLogged_callGetUserName_thenOK(){ - String currentUserName = userService.getUserName(); + public void givenRoleViewer_whenCallGetUsername_thenReturnUsername(){ + String currentUserName = userService.getUsername(); assertEquals("john",currentUserName); } diff --git a/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/WithMockSysUser.java b/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/WithMockSysUser.java deleted file mode 100644 index 34e6c78a9d..0000000000 --- a/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/WithMockSysUser.java +++ /dev/null @@ -1,12 +0,0 @@ -package org.baeldung.testmethodsecurity; - -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; - -import org.springframework.security.test.context.support.WithSecurityContext; - -@Retention(RetentionPolicy.RUNTIME) -@WithSecurityContext(factory = WithMockSysUserSecurityContextFactory.class) -public @interface WithMockSysUser { - String systemUserName(); -} \ No newline at end of file diff --git a/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/WithMockSysUserSecurityContextFactory.java b/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/WithMockSysUserSecurityContextFactory.java deleted file mode 100644 index 820f6f2d07..0000000000 --- a/spring-security-core/src/test/java/org/baeldung/testmethodsecurity/WithMockSysUserSecurityContextFactory.java +++ /dev/null @@ -1,28 +0,0 @@ -package org.baeldung.testmethodsecurity; - -import org.baeldung.testmethodsecurity.entity.CustomUser; -import org.baeldung.testmethodsecurity.repository.UserRoleRepository; -import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; -import org.springframework.security.core.Authentication; -import org.springframework.security.core.context.SecurityContext; -import org.springframework.security.core.context.SecurityContextHolder; -import org.springframework.security.test.context.support.WithSecurityContextFactory; - -public class WithMockSysUserSecurityContextFactory - implements WithSecurityContextFactory { - - @Override - public SecurityContext createSecurityContext(WithMockSysUser customUser) { - SecurityContext context = SecurityContextHolder.createEmptyContext(); - UserRoleRepository userRoleRepo = new UserRoleRepository(); - - CustomUser user = userRoleRepo.loadUserByUserName(customUser.systemUserName()); - - Authentication auth = - new UsernamePasswordAuthenticationToken(user, user.getPassword(), user.getAuthorities()); - - context.setAuthentication(auth); - return context; - } - -} \ No newline at end of file From d145e559e2635f2dce21e71df4fd74f83c4c71ff Mon Sep 17 00:00:00 2001 From: linhvovn Date: Mon, 18 Dec 2017 22:57:20 +0800 Subject: [PATCH 35/60] [tlinh2110@gmail.com] remove unsed property --- .../baeldung/testmethodsecurity/entity/CustomUser.java | 9 --------- 1 file changed, 9 deletions(-) diff --git a/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/entity/CustomUser.java b/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/entity/CustomUser.java index 8c5a5b2fb2..b145a82c80 100644 --- a/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/entity/CustomUser.java +++ b/spring-security-core/src/main/java/org/baeldung/testmethodsecurity/entity/CustomUser.java @@ -9,7 +9,6 @@ import org.springframework.security.core.userdetails.User; public class CustomUser extends User{ private String nickName; - private int age; public CustomUser(String username, String password, Collection authorities) { super(username, password, authorities); @@ -28,12 +27,4 @@ public class CustomUser extends User{ this.nickName = nickName; } - public int getAge() { - return age; - } - - public void setAge(int age) { - this.age = age; - } - } From 94ace2eda83eeff6f355877c30732d96d81497f9 Mon Sep 17 00:00:00 2001 From: Binesh Narayanan Date: Tue, 19 Dec 2017 14:37:35 +0800 Subject: [PATCH 36/60] BAEL-1348 | BatchProcessing example using jdbc (#3216) * BAEL-EVAL | Adding an example to demo Bean Injection ### Changes done A Spring boot app to demo bean injection * Adding @Autowired for Constructor Injection * BAEL-EVAL | Correcting the method name * BAEL-EVAL * BAEL-1348 | Adding example of Batch Processing in JDBC ### Changes done - Added one example using statement - Added one example using preparedstatement * Removing evaluation article * BAEL-1348 | Adding example of Batch Processing in JDBC ### Changes done - Added an example using statement - Added an example using preparedstatement * BAEL-1348 | BatchProcessing example using jdbc ### Changes done - Add example using statement - Add example using PreparedStatement - Add Unit Tests * BAEL-1348 | Changes to pom.xml and refactoring UnitTest * BAEL-1348 | Removing the example using spring-boot --- core-java/pom.xml | 891 +++++++++--------- .../com/baeldung/jdbc/BatchProcessing.java | 96 ++ .../baeldung/jdbc/BatchProcessingTest.java | 71 ++ 3 files changed, 612 insertions(+), 446 deletions(-) create mode 100644 core-java/src/main/java/com/baeldung/jdbc/BatchProcessing.java create mode 100644 core-java/src/test/java/com/baeldung/jdbc/BatchProcessingTest.java diff --git a/core-java/pom.xml b/core-java/pom.xml index 068a772c43..88ac6bca49 100644 --- a/core-java/pom.xml +++ b/core-java/pom.xml @@ -1,496 +1,495 @@ - 4.0.0 - com.baeldung - core-java - 0.1.0-SNAPSHOT - jar + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + 4.0.0 + com.baeldung + core-java + 0.1.0-SNAPSHOT + jar - core-java + core-java - + - - - net.sourceforge.collections - collections-generic - ${collections-generic.version} - - - com.google.guava - guava - ${guava.version} - + + + net.sourceforge.collections + collections-generic + ${collections-generic.version} + + + com.google.guava + guava + ${guava.version} + - - org.apache.commons - commons-collections4 - ${commons-collections4.version} - + + org.apache.commons + commons-collections4 + ${commons-collections4.version} + - - commons-io - commons-io - ${commons-io.version} - + + commons-io + commons-io + ${commons-io.version} + - - org.apache.commons - commons-lang3 - ${commons-lang3.version} - + + org.apache.commons + commons-lang3 + ${commons-lang3.version} + - - org.apache.commons - commons-math3 - ${commons-math3.version} - + + org.apache.commons + commons-math3 + ${commons-math3.version} + - - org.decimal4j - decimal4j - ${decimal4j.version} - + + org.decimal4j + decimal4j + ${decimal4j.version} + - - org.bouncycastle - bcprov-jdk15on - ${bouncycastle.version} - + + org.bouncycastle + bcprov-jdk15on + ${bouncycastle.version} + - - org.unix4j - unix4j-command - ${unix4j.version} - + + org.unix4j + unix4j-command + ${unix4j.version} + - - com.googlecode.grep4j - grep4j - ${grep4j.version} - - + + com.googlecode.grep4j + grep4j + ${grep4j.version} + + - + - - com.fasterxml.jackson.core - jackson-databind - ${jackson.version} - + + com.fasterxml.jackson.core + jackson-databind + ${jackson.version} + - - - log4j - log4j - 1.2.17 - - - org.slf4j - slf4j-api - ${org.slf4j.version} - - - ch.qos.logback - logback-classic - ${logback.version} - - - - org.slf4j - jcl-over-slf4j - ${org.slf4j.version} - - - - org.slf4j - log4j-over-slf4j - ${org.slf4j.version} - - - org.projectlombok - lombok - ${lombok.version} - provided - + + + log4j + log4j + 1.2.17 + + + org.slf4j + slf4j-api + ${org.slf4j.version} + + + ch.qos.logback + logback-classic + ${logback.version} + + + + org.slf4j + jcl-over-slf4j + ${org.slf4j.version} + + + + org.slf4j + log4j-over-slf4j + ${org.slf4j.version} + + + org.projectlombok + lombok + ${lombok.version} + provided + - + - - org.hamcrest - hamcrest-all - 1.3 - test - + + org.hamcrest + hamcrest-all + 1.3 + test + - - junit - junit - ${junit.version} - test - + + junit + junit + ${junit.version} + test + - - org.hamcrest - hamcrest-core - ${org.hamcrest.version} - test - - - org.hamcrest - hamcrest-library - ${org.hamcrest.version} - test - + + org.hamcrest + hamcrest-core + ${org.hamcrest.version} + test + + + org.hamcrest + hamcrest-library + ${org.hamcrest.version} + test + - - org.assertj - assertj-core - ${assertj.version} - test - + + org.assertj + assertj-core + ${assertj.version} + test + - - org.mockito - mockito-core - ${mockito.version} - test - - - com.jayway.awaitility - awaitility - ${avaitility.version} - test - + + org.mockito + mockito-core + ${mockito.version} + test + + + com.jayway.awaitility + awaitility + ${avaitility.version} + test + - - commons-codec - commons-codec - ${commons-codec.version} - + + commons-codec + commons-codec + ${commons-codec.version} + - - org.javamoney - moneta - 1.1 - + + org.javamoney + moneta + 1.1 + - - org.owasp.esapi - esapi - 2.1.0.1 - - - com.h2database - h2 - 1.4.196 - runtime - - - com.sun.messaging.mq - fscontext - ${fscontext.version} - - - com.codepoetics - protonpack - ${protonpack.version} - - - one.util - streamex - ${streamex.version} - - - io.vavr - vavr - ${vavr.version} - - - org.openjdk.jmh - jmh-core - 1.19 - - - org.openjdk.jmh - jmh-generator-annprocess - 1.19 - - - org.springframework - spring-web - 4.3.4.RELEASE - + + org.owasp.esapi + esapi + 2.1.0.1 + + + com.sun.messaging.mq + fscontext + ${fscontext.version} + + + com.codepoetics + protonpack + ${protonpack.version} + + + one.util + streamex + ${streamex.version} + + + io.vavr + vavr + ${vavr.version} + + + org.openjdk.jmh + jmh-core + 1.19 + + + org.openjdk.jmh + jmh-generator-annprocess + 1.19 + + org.springframework + spring-web + 4.3.4.RELEASE + + org.springframework.boot spring-boot-starter 1.5.8.RELEASE + + org.hsqldb + hsqldb + 2.4.0 + runtime + + - + + core-java + + + src/main/resources + true + + - - core-java - - - src/main/resources - true - - + - + + org.apache.maven.plugins + maven-compiler-plugin + ${maven-compiler-plugin.version} + + 1.8 + 1.8 + + - - org.apache.maven.plugins - maven-compiler-plugin - ${maven-compiler-plugin.version} - - 1.8 - 1.8 - - + + org.apache.maven.plugins + maven-surefire-plugin + + + **/*LiveTest.java + **/*IntegrationTest.java + **/*LongRunningUnitTest.java + **/*ManualTest.java + + true + + - - org.apache.maven.plugins - maven-surefire-plugin - - - **/*LiveTest.java - **/*IntegrationTest.java - **/*LongRunningUnitTest.java - **/*ManualTest.java - + + org.apache.maven.plugins + maven-dependency-plugin + + + copy-dependencies + prepare-package + + copy-dependencies + + + ${project.build.directory}/libs + + + + - - + + org.apache.maven.plugins + maven-jar-plugin + + + + true + libs/ + org.baeldung.executable.ExecutableMavenJar + + + + - - org.apache.maven.plugins - maven-dependency-plugin - - - copy-dependencies - prepare-package - - copy-dependencies - - - ${project.build.directory}/libs - - - - + + org.apache.maven.plugins + maven-assembly-plugin + + + package + + single + + + ${project.basedir} + + + org.baeldung.executable.ExecutableMavenJar + + + + jar-with-dependencies + + + + + - - org.apache.maven.plugins - maven-jar-plugin - - - - true - libs/ - org.baeldung.executable.ExecutableMavenJar - - - - + + org.apache.maven.plugins + maven-shade-plugin + + + + shade + + + true + + + org.baeldung.executable.ExecutableMavenJar + + + + + + - - org.apache.maven.plugins - maven-assembly-plugin - - - package - - single - - - ${project.basedir} - - - org.baeldung.executable.ExecutableMavenJar - - - - jar-with-dependencies - - - - - + + com.jolira + onejar-maven-plugin + + + + org.baeldung.executable.ExecutableMavenJar + true + ${project.build.finalName}-onejar.${project.packaging} + + + one-jar + + + + - - org.apache.maven.plugins - maven-shade-plugin - - - - shade - - - true - - - org.baeldung.executable.ExecutableMavenJar - - - - - - + + org.springframework.boot + spring-boot-maven-plugin + + + + repackage + + + spring-boot + org.baeldung.executable.ExecutableMavenJar + + + + - - com.jolira - onejar-maven-plugin - - - - org.baeldung.executable.ExecutableMavenJar - true - ${project.build.finalName}-onejar.${project.packaging} - - - one-jar - - - - - - - org.springframework.boot - spring-boot-maven-plugin - - - - repackage - - - spring-boot - org.baeldung.executable.ExecutableMavenJar - - - - - - - org.codehaus.mojo - exec-maven-plugin - 1.6.0 - - java - com.baeldung.outofmemoryerror.OutOfMemoryGCLimitExceed - - -Xmx300m - -XX:+UseParallelGC - -classpath - - com.baeldung.outofmemoryerror.OutOfMemoryGCLimitExceed - - - + + org.codehaus.mojo + exec-maven-plugin + 1.6.0 + + java + com.baeldung.outofmemoryerror.OutOfMemoryGCLimitExceed + + -Xmx300m + -XX:+UseParallelGC + -classpath + + com.baeldung.outofmemoryerror.OutOfMemoryGCLimitExceed + + + - + - + - - - integration - - - - org.apache.maven.plugins - maven-surefire-plugin - - - integration-test - - test - - - - **/*ManualTest.java - - - **/*IntegrationTest.java - - - - - - - json - - - - - org.codehaus.mojo - exec-maven-plugin + + + integration + + + + org.apache.maven.plugins + maven-surefire-plugin + + + integration-test + + test + + + + **/*ManualTest.java + + + **/*IntegrationTest.java + + + + + + + json + + + + + org.codehaus.mojo + exec-maven-plugin - - - run-benchmarks - - none - - exec - - - test - java - - -classpath - - org.openjdk.jmh.Main - .* - - - - - - - - - + + + run-benchmarks + + none + + exec + + + test + java + + -classpath + + org.openjdk.jmh.Main + .* + + + + + + + + + - - - 2.8.5 + + + 2.8.5 - - 1.7.21 - 1.1.7 + + 1.7.21 + 1.1.7 - - 22.0 - 3.5 - 1.55 - 1.10 - 3.6.1 - 1.0.3 - 2.5 - 4.1 - 4.01 - 0.4 - 1.8.7 - 1.16.12 - 4.6-b01 - 1.13 - 0.6.5 - 0.9.0 + + 22.0 + 3.5 + 1.55 + 1.10 + 3.6.1 + 1.0.3 + 2.5 + 4.1 + 4.01 + 0.4 + 1.8.7 + 1.16.12 + 4.6-b01 + 1.13 + 0.6.5 + 0.9.0 + + + 1.3 + 4.12 + 2.8.9 + 3.6.1 + 1.7.0 - - 1.3 - 4.12 - 2.8.9 - 3.6.1 - 1.7.0 - - - 3.6.0 - 2.19.1 - - + + 3.6.0 + 2.19.1 + + \ No newline at end of file diff --git a/core-java/src/main/java/com/baeldung/jdbc/BatchProcessing.java b/core-java/src/main/java/com/baeldung/jdbc/BatchProcessing.java new file mode 100644 index 0000000000..d5c53c3ffc --- /dev/null +++ b/core-java/src/main/java/com/baeldung/jdbc/BatchProcessing.java @@ -0,0 +1,96 @@ +package com.baeldung.jdbc; + +import java.sql.*; +import java.util.UUID; + +public class BatchProcessing { + + private final String[] EMPLOYEES = new String[]{"Zuck","Mike","Larry","Musk","Steve"}; + private final String[] DESIGNATIONS = new String[]{"CFO","CSO","CTO","CEO","CMO"}; + private final String[] ADDRESSES = new String[]{"China","York","Diego","Carolina","India"}; + + private Connection connection; + + public void getConnection(){ + try { + Class.forName("org.hsqldb.jdbcDriver"); + connection = DriverManager.getConnection("jdbc:hsqldb:file:C:\\EMPLOYEEDB", "SA", ""); + connection.setAutoCommit(false); + } catch (Exception e) { + e.printStackTrace(System.out); + } + } + + public void createTables(){ + try { + connection.createStatement().executeUpdate("create table EMPLOYEE (ID VARCHAR(36), NAME VARCHAR(45), DESIGNATION VARCHAR(15))"); + connection.createStatement().executeUpdate("create table EMP_ADDRESS (ID VARCHAR(36), EMP_ID VARCHAR(36), ADDRESS VARCHAR(45))"); + System.out.println("Tables Created!!!"); + } catch (SQLException e) { + e.printStackTrace(System.out); + } + } + + public void useStatement(){ + try { + String insertEmployeeSQL = "INSERT INTO EMPLOYEE(ID, NAME, DESIGNATION) VALUES ('%s','%s','%s');"; + String insertEmployeeAddrSQL = "INSERT INTO EMP_ADDRESS(ID, EMP_ID, ADDRESS) VALUES ('%s','%s','%s');"; + Statement statement = connection.createStatement(); + for(int i = 0; i < EMPLOYEES.length; i++){ + String employeeId = UUID.randomUUID().toString(); + statement.addBatch(String.format(insertEmployeeSQL, employeeId, EMPLOYEES[i],DESIGNATIONS[i])); + statement.addBatch(String.format(insertEmployeeAddrSQL, UUID.randomUUID().toString(),employeeId,ADDRESSES[i])); + } + statement.executeBatch(); + connection.commit(); + } catch (Exception e) { + try { + connection.rollback(); + } catch (SQLException ex) { + System.out.println("Error during rollback"); + System.out.println(ex.getMessage()); + } + e.printStackTrace(System.out); + } + } + + public void usePreparedStatement(){ + try { + String insertEmployeeSQL = "INSERT INTO EMPLOYEE(ID, NAME, DESIGNATION) VALUES (?,?,?);"; + String insertEmployeeAddrSQL = "INSERT INTO EMP_ADDRESS(ID, EMP_ID, ADDRESS) VALUES (?,?,?);"; + PreparedStatement employeeStmt = connection.prepareStatement(insertEmployeeSQL); + PreparedStatement empAddressStmt = connection.prepareStatement(insertEmployeeAddrSQL); + for(int i = 0; i < EMPLOYEES.length; i++){ + String employeeId = UUID.randomUUID().toString(); + employeeStmt.setString(1,employeeId); + employeeStmt.setString(2,EMPLOYEES[i]); + employeeStmt.setString(3,DESIGNATIONS[i]); + employeeStmt.addBatch(); + + empAddressStmt.setString(1,UUID.randomUUID().toString()); + empAddressStmt.setString(2,employeeId); + empAddressStmt.setString(3,ADDRESSES[i]); + empAddressStmt.addBatch(); + } + employeeStmt.executeBatch(); + empAddressStmt.executeBatch(); + connection.commit(); + } catch (Exception e) { + try { + connection.rollback(); + } catch (SQLException ex) { + System.out.println("Error during rollback"); + System.out.println(ex.getMessage()); + } + e.printStackTrace(System.out); + } + } + + public static void main(String[] args) { + BatchProcessing batchProcessing = new BatchProcessing(); + batchProcessing.getConnection(); + batchProcessing.createTables(); + batchProcessing.useStatement(); + batchProcessing.usePreparedStatement(); + } +} diff --git a/core-java/src/test/java/com/baeldung/jdbc/BatchProcessingTest.java b/core-java/src/test/java/com/baeldung/jdbc/BatchProcessingTest.java new file mode 100644 index 0000000000..90f2ea133f --- /dev/null +++ b/core-java/src/test/java/com/baeldung/jdbc/BatchProcessingTest.java @@ -0,0 +1,71 @@ +package com.baeldung.jdbc; + + +import org.junit.Before; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.mockito.InjectMocks; +import org.mockito.Mock; +import org.mockito.Mockito; +import org.mockito.MockitoAnnotations; +import org.mockito.junit.MockitoJUnitRunner; + +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.Statement; + +@RunWith(MockitoJUnitRunner.class) +public class BatchProcessingTest { + + + @InjectMocks + private BatchProcessing target = new BatchProcessing(); + + @Mock + private Connection connection; + + @Mock + private Statement statement; + + @Mock + private PreparedStatement employeeStatement; + + @Mock + private PreparedStatement employeeAddressStatement; + + @Before + public void before(){ + MockitoAnnotations.initMocks(this); + } + + + @Test + public void when_useStatement_thenInsertData_success() throws Exception { + Mockito.when(connection.createStatement()).thenReturn(statement); + target.useStatement(); + } + + @Test + public void when_useStatement_ifThrowException_thenCatchException() throws Exception { + Mockito.when(connection.createStatement()).thenThrow(new RuntimeException()); + target.useStatement(); + } + + @Test + public void when_usePreparedStatement_thenInsertData_success() throws Exception { + String insertEmployeeSQL = "INSERT INTO EMPLOYEE(ID, NAME, DESIGNATION) VALUES (?,?,?);"; + String insertEmployeeAddrSQL = "INSERT INTO EMP_ADDRESS(ID, EMP_ID, ADDRESS) VALUES (?,?,?);"; + Mockito.when(connection.prepareStatement(insertEmployeeSQL)).thenReturn(employeeStatement); + Mockito.when(connection.prepareStatement(insertEmployeeAddrSQL)).thenReturn(employeeAddressStatement); + target.usePreparedStatement(); + } + + @Test + public void when_usePreparedStatement_ifThrowException_thenCatchException() throws Exception { + String insertEmployeeSQL = "INSERT INTO EMPLOYEE(ID, NAME, DESIGNATION) VALUES (?,?,?);"; + String insertEmployeeAddrSQL = "INSERT INTO EMP_ADDRESS(ID, EMP_ID, ADDRESS) VALUES (?,?,?);"; + Mockito.when(connection.prepareStatement(insertEmployeeSQL)).thenReturn(employeeStatement); + Mockito.when(connection.prepareStatement(insertEmployeeAddrSQL)).thenThrow(new RuntimeException()); + target.usePreparedStatement(); + } +} From 3bcff4672e18c43e1e2135eee3e8e6e87bed94e6 Mon Sep 17 00:00:00 2001 From: Ahmed Tawila Date: Tue, 19 Dec 2017 08:38:39 +0200 Subject: [PATCH 37/60] fix spring boot project failure (#3267) --- .../resources/persistence-generic-entity.properties | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename spring-boot/src/{test => main}/resources/persistence-generic-entity.properties (100%) diff --git a/spring-boot/src/test/resources/persistence-generic-entity.properties b/spring-boot/src/main/resources/persistence-generic-entity.properties similarity index 100% rename from spring-boot/src/test/resources/persistence-generic-entity.properties rename to spring-boot/src/main/resources/persistence-generic-entity.properties From 87e7b6630039321d6780a521403af4b3816ac15c Mon Sep 17 00:00:00 2001 From: Seun Matt Date: Tue, 19 Dec 2017 11:02:45 +0100 Subject: [PATCH 38/60] Added Complete Source Code for VRaptor BAEL-1214 (#3237) * added updated example codes * updated example code StringToCharStream * deleted StringToCharStream.java locally * removed redundant file * added code for apache commons collection SetUtils * refactored example code * added example code for bytebuddy * added example code for PCollections * update pom * refactored tests for PCollections * spring security xml config * spring security xml config * remove redundant comment * example code for apache-shiro * updated example code for Vavr Collections * updated Vavr's Collection example * updated Vavr Collection file * updated example code for Apache Shiro * updated Vavr Collections example * added example code for N1QL * update example code for N1QL * added integration test for N1QL * update N1QL Example code * update the N1QL example Code * rename module to couchbase * rename module to couchbase * change module name in parent module and pom * added cas-server module * added cas secured app for Spring SSO with CAS * refactor cas modules into cas folder * updated files * removed redundant files * refactor the config for cas-server * added sql file to generate tables and database * added source code for VRaptor * update source code for VRaptor article * update pom and reformat code --- pom.xml | 1 + vraptor/.gitignore | 4 + vraptor/README.md | 13 + vraptor/pom.xml | 134 + .../java/com/baeldung/config/UserInfo.java | 23 + .../baeldung/controllers/AuthController.java | 99 + .../baeldung/controllers/IndexController.java | 40 + .../baeldung/controllers/PostController.java | 77 + .../main/java/com/baeldung/daos/PostDao.java | 54 + .../main/java/com/baeldung/daos/UserDao.java | 50 + .../main/java/com/baeldung/models/Post.java | 105 + .../main/java/com/baeldung/models/User.java | 101 + vraptor/src/main/resources/META-INF/beans.xml | 8 + vraptor/src/main/resources/database.sql | 55 + vraptor/src/main/resources/hibernate.cfg.xml | 31 + vraptor/src/main/resources/log4j.xml | 36 + .../main/resources/templates/auth/login.ftl | 172 + .../resources/templates/auth/register.ftl | 194 + .../src/main/resources/templates/index.ftl | 173 + .../main/resources/templates/posts/add.ftl | 164 + vraptor/src/main/resources/templates/view.ftl | 152 + vraptor/src/main/webapp/META-INF/MANIFEST.MF | 3 + .../main/webapp/WEB-INF/jsp/index/index.jsp | 10 + vraptor/src/main/webapp/WEB-INF/web.xml | 19 + vraptor/src/main/webapp/css/clean-blog.css | 400 + .../src/main/webapp/css/clean-blog.min.css | 5 + vraptor/src/main/webapp/img/about-bg.jpg | Bin 0 -> 33097 bytes vraptor/src/main/webapp/img/contact-bg.jpg | Bin 0 -> 290070 bytes vraptor/src/main/webapp/img/home-bg.jpg | Bin 0 -> 172779 bytes vraptor/src/main/webapp/img/post-bg.jpg | Bin 0 -> 140909 bytes .../src/main/webapp/img/post-sample-image.jpg | Bin 0 -> 115144 bytes vraptor/src/main/webapp/js/clean-blog.js | 40 + vraptor/src/main/webapp/js/clean-blog.min.js | 6 + vraptor/src/main/webapp/js/contact_me.js | 72 + .../main/webapp/js/jqBootstrapValidation.js | 912 ++ .../webapp/vendor/bootstrap/css/bootstrap.css | 6757 ++++++++++ .../vendor/bootstrap/css/bootstrap.min.css | 6 + .../fonts/glyphicons-halflings-regular.eot | Bin 0 -> 20127 bytes .../fonts/glyphicons-halflings-regular.svg | 288 + .../fonts/glyphicons-halflings-regular.ttf | Bin 0 -> 45404 bytes .../fonts/glyphicons-halflings-regular.woff | Bin 0 -> 23424 bytes .../fonts/glyphicons-halflings-regular.woff2 | Bin 0 -> 18028 bytes .../webapp/vendor/bootstrap/js/bootstrap.js | 2377 ++++ .../vendor/bootstrap/js/bootstrap.min.js | 7 + .../vendor/font-awesome/css/font-awesome.css | 2199 +++ .../font-awesome/css/font-awesome.min.css | 4 + .../vendor/font-awesome/fonts/FontAwesome.otf | Bin 0 -> 124988 bytes .../fonts/fontawesome-webfont.eot | Bin 0 -> 76518 bytes .../fonts/fontawesome-webfont.svg | 685 + .../fonts/fontawesome-webfont.ttf | Bin 0 -> 152796 bytes .../fonts/fontawesome-webfont.woff | Bin 0 -> 90412 bytes .../fonts/fontawesome-webfont.woff2 | Bin 0 -> 71896 bytes .../vendor/font-awesome/less/animated.less | 34 + .../font-awesome/less/bordered-pulled.less | 25 + .../webapp/vendor/font-awesome/less/core.less | 12 + .../vendor/font-awesome/less/fixed-width.less | 6 + .../font-awesome/less/font-awesome.less | 18 + .../vendor/font-awesome/less/icons.less | 733 + .../vendor/font-awesome/less/larger.less | 13 + .../webapp/vendor/font-awesome/less/list.less | 19 + .../vendor/font-awesome/less/mixins.less | 60 + .../webapp/vendor/font-awesome/less/path.less | 15 + .../font-awesome/less/rotated-flipped.less | 20 + .../font-awesome/less/screen-reader.less | 5 + .../vendor/font-awesome/less/stacked.less | 20 + .../vendor/font-awesome/less/variables.less | 744 ++ .../vendor/font-awesome/scss/_animated.scss | 34 + .../font-awesome/scss/_bordered-pulled.scss | 25 + .../vendor/font-awesome/scss/_core.scss | 12 + .../font-awesome/scss/_fixed-width.scss | 6 + .../vendor/font-awesome/scss/_icons.scss | 733 + .../vendor/font-awesome/scss/_larger.scss | 13 + .../vendor/font-awesome/scss/_list.scss | 19 + .../vendor/font-awesome/scss/_mixins.scss | 60 + .../vendor/font-awesome/scss/_path.scss | 15 + .../font-awesome/scss/_rotated-flipped.scss | 20 + .../font-awesome/scss/_screen-reader.scss | 5 + .../vendor/font-awesome/scss/_stacked.scss | 20 + .../vendor/font-awesome/scss/_variables.scss | 744 ++ .../font-awesome/scss/font-awesome.scss | 18 + .../src/main/webapp/vendor/jquery/jquery.js | 11008 ++++++++++++++++ .../main/webapp/vendor/jquery/jquery.min.js | 5 + 82 files changed, 29937 insertions(+) create mode 100644 vraptor/.gitignore create mode 100644 vraptor/README.md create mode 100644 vraptor/pom.xml create mode 100644 vraptor/src/main/java/com/baeldung/config/UserInfo.java create mode 100644 vraptor/src/main/java/com/baeldung/controllers/AuthController.java create mode 100644 vraptor/src/main/java/com/baeldung/controllers/IndexController.java create mode 100644 vraptor/src/main/java/com/baeldung/controllers/PostController.java create mode 100644 vraptor/src/main/java/com/baeldung/daos/PostDao.java create mode 100644 vraptor/src/main/java/com/baeldung/daos/UserDao.java create mode 100644 vraptor/src/main/java/com/baeldung/models/Post.java create mode 100644 vraptor/src/main/java/com/baeldung/models/User.java create mode 100644 vraptor/src/main/resources/META-INF/beans.xml create mode 100644 vraptor/src/main/resources/database.sql create mode 100644 vraptor/src/main/resources/hibernate.cfg.xml create mode 100644 vraptor/src/main/resources/log4j.xml create mode 100644 vraptor/src/main/resources/templates/auth/login.ftl create mode 100644 vraptor/src/main/resources/templates/auth/register.ftl create mode 100644 vraptor/src/main/resources/templates/index.ftl create mode 100644 vraptor/src/main/resources/templates/posts/add.ftl create mode 100644 vraptor/src/main/resources/templates/view.ftl create mode 100644 vraptor/src/main/webapp/META-INF/MANIFEST.MF create mode 100644 vraptor/src/main/webapp/WEB-INF/jsp/index/index.jsp create mode 100644 vraptor/src/main/webapp/WEB-INF/web.xml create mode 100644 vraptor/src/main/webapp/css/clean-blog.css create mode 100644 vraptor/src/main/webapp/css/clean-blog.min.css create mode 100644 vraptor/src/main/webapp/img/about-bg.jpg create mode 100644 vraptor/src/main/webapp/img/contact-bg.jpg create mode 100644 vraptor/src/main/webapp/img/home-bg.jpg create mode 100644 vraptor/src/main/webapp/img/post-bg.jpg create mode 100644 vraptor/src/main/webapp/img/post-sample-image.jpg create mode 100644 vraptor/src/main/webapp/js/clean-blog.js create mode 100644 vraptor/src/main/webapp/js/clean-blog.min.js create mode 100644 vraptor/src/main/webapp/js/contact_me.js create mode 100644 vraptor/src/main/webapp/js/jqBootstrapValidation.js create mode 100644 vraptor/src/main/webapp/vendor/bootstrap/css/bootstrap.css create mode 100644 vraptor/src/main/webapp/vendor/bootstrap/css/bootstrap.min.css create mode 100644 vraptor/src/main/webapp/vendor/bootstrap/fonts/glyphicons-halflings-regular.eot create mode 100644 vraptor/src/main/webapp/vendor/bootstrap/fonts/glyphicons-halflings-regular.svg create mode 100644 vraptor/src/main/webapp/vendor/bootstrap/fonts/glyphicons-halflings-regular.ttf create mode 100644 vraptor/src/main/webapp/vendor/bootstrap/fonts/glyphicons-halflings-regular.woff create mode 100644 vraptor/src/main/webapp/vendor/bootstrap/fonts/glyphicons-halflings-regular.woff2 create mode 100644 vraptor/src/main/webapp/vendor/bootstrap/js/bootstrap.js create mode 100644 vraptor/src/main/webapp/vendor/bootstrap/js/bootstrap.min.js create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/css/font-awesome.css create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/css/font-awesome.min.css create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/fonts/FontAwesome.otf create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/fonts/fontawesome-webfont.eot create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/fonts/fontawesome-webfont.svg create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/fonts/fontawesome-webfont.ttf create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/fonts/fontawesome-webfont.woff create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/fonts/fontawesome-webfont.woff2 create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/less/animated.less create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/less/bordered-pulled.less create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/less/core.less create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/less/fixed-width.less create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/less/font-awesome.less create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/less/icons.less create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/less/larger.less create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/less/list.less create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/less/mixins.less create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/less/path.less create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/less/rotated-flipped.less create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/less/screen-reader.less create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/less/stacked.less create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/less/variables.less create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/scss/_animated.scss create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/scss/_bordered-pulled.scss create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/scss/_core.scss create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/scss/_fixed-width.scss create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/scss/_icons.scss create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/scss/_larger.scss create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/scss/_list.scss create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/scss/_mixins.scss create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/scss/_path.scss create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/scss/_rotated-flipped.scss create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/scss/_screen-reader.scss create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/scss/_stacked.scss create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/scss/_variables.scss create mode 100644 vraptor/src/main/webapp/vendor/font-awesome/scss/font-awesome.scss create mode 100644 vraptor/src/main/webapp/vendor/jquery/jquery.js create mode 100644 vraptor/src/main/webapp/vendor/jquery/jquery.min.js diff --git a/pom.xml b/pom.xml index 1216ee3b13..5eb1bb257d 100644 --- a/pom.xml +++ b/pom.xml @@ -264,6 +264,7 @@ deeplearning4j spring-boot-admin lucene + vraptor diff --git a/vraptor/.gitignore b/vraptor/.gitignore new file mode 100644 index 0000000000..27dc294cd1 --- /dev/null +++ b/vraptor/.gitignore @@ -0,0 +1,4 @@ + +/target/ +/.idea/ +/src/main/webapp/WEB-INF/classes/ diff --git a/vraptor/README.md b/vraptor/README.md new file mode 100644 index 0000000000..d547fc1274 --- /dev/null +++ b/vraptor/README.md @@ -0,0 +1,13 @@ +# VRaptor blank project + +This is a blank project to help you to use VRaptor. You can easily import in you IDE as Maven project. + +Este é um projeto em branco para ajudar você a usar o VRaptor. Você pode facilmente importá-lo na sua IDE favorita como um projeto Maven. + +Após criar seu projeto você pode rodá-lo com um tomcat7 ou +: + +``` +mvn tomcat7:run +``` + +Cuidado para *jamais* executar `mvn tomcat:run` pois ele usará um tomcat6 (incompatível). diff --git a/vraptor/pom.xml b/vraptor/pom.xml new file mode 100644 index 0000000000..49b0922ddd --- /dev/null +++ b/vraptor/pom.xml @@ -0,0 +1,134 @@ + + 4.0.0 + + com.baeldung + vraptor + 1.0.0 + war + + A demo project to start using VRaptor 4 + + + UTF-8 + 2.1.2.Final + + + + + br.com.caelum + vraptor + 4.2.0.Final + + + + org.jboss.weld.servlet + weld-servlet-core + 2.1.2.Final + + + org.jboss.spec.javax.el + jboss-el-api_3.0_spec + + + + + + org.jboss.weld + weld-core-impl + 2.1.2.Final + + + org.jboss.spec.javax.el + jboss-el-api_3.0_spec + + + + + + javax.el + el-api + 2.2 + provided + + + + org.hibernate + hibernate-validator-cdi + 5.1.1.Final + + + + javax.servlet + jstl + 1.2 + + + + javax.servlet + javax.servlet-api + 3.1.0 + provided + + + + org.slf4j + slf4j-log4j12 + 1.7.5 + + + + br.com.caelum.vraptor + vraptor-freemarker + 4.1.0-RC3 + + + + br.com.caelum.vraptor + vraptor-hibernate + 4.0.4 + + + + mysql + mysql-connector-java + 8.0.8-dmr + + + + org.mindrot + jbcrypt + 0.4 + + + + org.freemarker + freemarker + 2.3.27-incubating + + + + + + vraptor + src/main/webapp/WEB-INF/classes + + + org.apache.maven.plugins + maven-compiler-plugin + 3.1 + + 1.8 + 1.8 + + + + org.apache.tomcat.maven + tomcat7-maven-plugin + 2.1 + + / + + + + + diff --git a/vraptor/src/main/java/com/baeldung/config/UserInfo.java b/vraptor/src/main/java/com/baeldung/config/UserInfo.java new file mode 100644 index 0000000000..2613128790 --- /dev/null +++ b/vraptor/src/main/java/com/baeldung/config/UserInfo.java @@ -0,0 +1,23 @@ +package com.baeldung.config; + +import com.baeldung.models.User; + +import javax.enterprise.context.SessionScoped; +import java.io.Serializable; + +@SessionScoped +public class UserInfo implements Serializable { + + private User user; + + + public UserInfo() {} + + public User getUser() { + return user; + } + + public void setUser(User user) { + this.user = user; + } +} diff --git a/vraptor/src/main/java/com/baeldung/controllers/AuthController.java b/vraptor/src/main/java/com/baeldung/controllers/AuthController.java new file mode 100644 index 0000000000..ed2d3fdba7 --- /dev/null +++ b/vraptor/src/main/java/com/baeldung/controllers/AuthController.java @@ -0,0 +1,99 @@ +package com.baeldung.controllers; + +import br.com.caelum.vraptor.*; +import br.com.caelum.vraptor.freemarker.FreemarkerView; +import br.com.caelum.vraptor.validator.Validator; +import com.baeldung.config.UserInfo; +import com.baeldung.daos.UserDao; +import com.baeldung.models.User; +import org.mindrot.jbcrypt.BCrypt; + +import javax.inject.Inject; +import javax.servlet.http.HttpServletRequest; +import java.util.Objects; +import java.util.logging.Logger; + +@Controller +public class AuthController { + + private Validator validator; + private UserDao userDao; + private Result result; + private UserInfo userInfo; + private Logger logger = Logger.getLogger(getClass().getName()); + + public AuthController() { + this(null, null, null, null); + } + + @Inject + public AuthController(Validator validator, UserDao userDao, Result result, UserInfo userInfo) { + this.validator = validator; + this.userDao = userDao; + this.result = result; + this.userInfo = userInfo; + } + + @Get("/register") + public void registrationForm() { + result.use(FreemarkerView.class).withTemplate("auth/register"); + } + + @Post("/register") + public void register(User user, HttpServletRequest request) { + + validator.validate(user); + + if(validator.hasErrors()) { + result.include("errors", validator.getErrors()); + } + + validator.onErrorRedirectTo(this).registrationForm(); + + if(!user.getPassword() + .equals(request.getParameter("password_confirmation"))) { + result.include("error", "Passwords Do Not Match"); + result.redirectTo(this).registrationForm(); + } + + user.setPassword( + BCrypt.hashpw(user.getPassword(), BCrypt.gensalt())); + + Object resp = userDao.add(user); + + if(resp != null) { + result.include("status", "Registration Successful! Now Login"); + result.redirectTo(this).loginForm(); + } else { + result.include("error", "There was an error during registration"); + result.redirectTo(this).registrationForm(); + } + } + + @Get("/login") + public void loginForm() { + result.use(FreemarkerView.class).withTemplate("auth/login"); + } + + @Post("/login") + public void login(HttpServletRequest request) { + + String password = request.getParameter("user.password"); + String email = request.getParameter("user.email"); + + if(email.isEmpty() || password.isEmpty()) { + result.include("error", "Email/Password is Required!"); + result.redirectTo(AuthController.class).loginForm(); + } + + User user = userDao.findByEmail(email); + if(user != null && BCrypt.checkpw(password, user.getPassword())) { + userInfo.setUser(user); + result.include("status", "Login Successful!"); + result.redirectTo(IndexController.class).index(); + } else { + result.include("error", "Email/Password Does Not Match!"); + result.redirectTo(AuthController.class).loginForm(); + } + } +} diff --git a/vraptor/src/main/java/com/baeldung/controllers/IndexController.java b/vraptor/src/main/java/com/baeldung/controllers/IndexController.java new file mode 100644 index 0000000000..cca34f5447 --- /dev/null +++ b/vraptor/src/main/java/com/baeldung/controllers/IndexController.java @@ -0,0 +1,40 @@ +package com.baeldung.controllers; + +import br.com.caelum.vraptor.Controller; +import br.com.caelum.vraptor.Path; +import br.com.caelum.vraptor.Result; +import br.com.caelum.vraptor.freemarker.FreemarkerView; +import com.baeldung.daos.PostDao; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import javax.inject.Inject; + +@Controller +public class IndexController { + + private PostDao postDao; + private final Result result; + private static final Logger logger = LoggerFactory.getLogger(IndexController.class); + + public IndexController() { + this(null, null); + } + + @Inject + public IndexController(Result result, PostDao postDao) { + this.result = result; + this.postDao = postDao; + } + + @Path("/") + public void index() { + result.include("posts", postDao.all()); + result.use(FreemarkerView.class).withTemplate("index"); + } + + + + + +} \ No newline at end of file diff --git a/vraptor/src/main/java/com/baeldung/controllers/PostController.java b/vraptor/src/main/java/com/baeldung/controllers/PostController.java new file mode 100644 index 0000000000..979d0c28e2 --- /dev/null +++ b/vraptor/src/main/java/com/baeldung/controllers/PostController.java @@ -0,0 +1,77 @@ +package com.baeldung.controllers; + +import br.com.caelum.vraptor.Controller; +import br.com.caelum.vraptor.Get; +import br.com.caelum.vraptor.Path; +import br.com.caelum.vraptor.Result; +import br.com.caelum.vraptor.freemarker.FreemarkerView; +import br.com.caelum.vraptor.validator.Validator; +import com.baeldung.config.UserInfo; +import com.baeldung.daos.PostDao; +import com.baeldung.models.Post; + +import javax.inject.Inject; +import javax.servlet.http.HttpServletRequest; +import java.util.Objects; +import java.util.logging.Logger; + +@Controller +public class PostController { + + private Result result; + private Logger logger = Logger.getLogger(PostController.class.getName()); + private PostDao postDao; + private UserInfo userInfo; + private Validator validator; + + public PostController() {} + + @Inject + public PostController(Result result, PostDao postDao, UserInfo userInfo, Validator validator) { + this.result = result; + this.postDao = postDao; + this.userInfo = userInfo; + this.validator = validator; + } + + @Get("/post/add") + public void addForm() { + + if(Objects.isNull(userInfo.getUser())) { + result.include("error", "Please Login to Proceed"); + result.redirectTo(AuthController.class).loginForm(); + return; + } + + result.use(FreemarkerView.class).withTemplate("posts/add"); + } + + @br.com.caelum.vraptor.Post("/post/add") + public void add(Post post) { + post.setAuthor(userInfo.getUser()); + validator.validate(post); + if(validator.hasErrors()) + result.include("errors", validator.getErrors()); + validator.onErrorRedirectTo(this).addForm(); + + Object id = postDao.add(post); + + if(Objects.nonNull(id)) { + result.include("status", "Post Added Successfully"); + result.redirectTo(IndexController.class).index(); + } else { + result.include( + "error", "There was an error creating the post. Try Again"); + result.redirectTo(this).addForm(); + } + } + + @Get("/posts/{id}") + public void view(int id) { + result.include("post", postDao.findById(id)); + result.use(FreemarkerView.class).withTemplate("view"); + } + + + +} diff --git a/vraptor/src/main/java/com/baeldung/daos/PostDao.java b/vraptor/src/main/java/com/baeldung/daos/PostDao.java new file mode 100644 index 0000000000..e9a62b5b5e --- /dev/null +++ b/vraptor/src/main/java/com/baeldung/daos/PostDao.java @@ -0,0 +1,54 @@ +package com.baeldung.daos; + +import com.baeldung.controllers.PostController; +import com.baeldung.models.Post; +import org.hibernate.Session; +import org.hibernate.SessionFactory; + +import javax.enterprise.context.RequestScoped; +import javax.inject.Inject; +import java.util.List; +import java.util.logging.Logger; + +@RequestScoped +public class PostDao { + + private Logger logger = Logger.getLogger(PostController.class.getName()); + private SessionFactory sessionFactory; + + public PostDao() {} + + @Inject + public PostDao(SessionFactory sessionFactory) { + this.sessionFactory = sessionFactory; + } + + public Object add(Post post) { + Session session = sessionFactory.openSession(); + session.beginTransaction(); + Object id = session.save(post); + session.getTransaction().commit(); + session.close(); + return id; + } + + public Post findById(int id) { + Session session = sessionFactory.openSession(); + session.beginTransaction(); + Post post = (Post) session.get(Post.class, id); + session.getTransaction().commit(); + session.close(); + return post; + } + + + public List all() { + Session session = sessionFactory.openSession(); + session.beginTransaction(); + List posts = (List) session.createQuery("FROM Post p").list(); + session.getTransaction().commit(); + session.close(); + return posts; + } + +} diff --git a/vraptor/src/main/java/com/baeldung/daos/UserDao.java b/vraptor/src/main/java/com/baeldung/daos/UserDao.java new file mode 100644 index 0000000000..6af1a49d25 --- /dev/null +++ b/vraptor/src/main/java/com/baeldung/daos/UserDao.java @@ -0,0 +1,50 @@ +package com.baeldung.daos; + +import com.baeldung.models.User; +import org.hibernate.Criteria; +import org.hibernate.Session; +import org.hibernate.SessionFactory; +import org.hibernate.criterion.Criterion; +import org.hibernate.criterion.Restrictions; +import org.omg.PortableInterceptor.LOCATION_FORWARD; + +import javax.enterprise.context.RequestScoped; +import javax.inject.Inject; +import java.util.logging.Logger; + +@RequestScoped +public class UserDao { + + SessionFactory sessionFactory; + + public UserDao() { + this(null); + } + + @Inject + public UserDao(SessionFactory sessionFactory) { + this.sessionFactory = sessionFactory; + } + + + public Object add(User user) { + Session session = sessionFactory.openSession(); + session.beginTransaction(); + Object Id = session.save(user); + session.getTransaction().commit(); + return Id; + } + + public User findByEmail(String email) { + Session session = sessionFactory.openSession(); + session.beginTransaction(); + Criteria criteria = session.createCriteria(User.class); + criteria.add(Restrictions.eq("email", email)); + criteria.setMaxResults(1); + User u = (User) criteria.uniqueResult(); + session.getTransaction().commit(); + session.close(); + return u; + } + +} diff --git a/vraptor/src/main/java/com/baeldung/models/Post.java b/vraptor/src/main/java/com/baeldung/models/Post.java new file mode 100644 index 0000000000..6beb6e1682 --- /dev/null +++ b/vraptor/src/main/java/com/baeldung/models/Post.java @@ -0,0 +1,105 @@ +package com.baeldung.models; + + +import javax.persistence.*; +import javax.validation.constraints.NotNull; +import javax.validation.constraints.Size; +import java.time.LocalDateTime; +import java.util.Date; +import java.util.logging.Logger; + +@Entity +@Table(name = "posts") +public class Post { + + @Id + @GeneratedValue(strategy = GenerationType.AUTO) + private int id; + + @NotNull @Size(min = 10) + @Column(columnDefinition = "longtext") + private String post; + + @NotNull @Size(min = 5, max = 100) + @Column(unique = true) + private String title; + + @NotNull + @ManyToOne(targetEntity = User.class, optional = false) + private User author; + + @Column(name = "created_at") + private Date createdAt; + + @Column(name = "updated_at") + private Date updatedAt; + + @Transient + private Logger logger = Logger.getLogger(getClass().getName()); + + public Post() { + createdAt = new Date(); + updatedAt = new Date(); + } + + public Post(String title, String post, User author) { + this.title = title; + this.post = post; + this.author = author; + createdAt = new Date(); + updatedAt = new Date(); + } + + public int getId() { + return id; + } + + public String getPost() { + return post; + } + + public void setPost(String post) { + this.post = post; + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public User getAuthor() { + return author; + } + + public void setAuthor(User author) { + this.author = author; + } + + public Date getCreatedAt() { + return createdAt; + } + + public void setCreatedAt(Date createdAt) { + this.createdAt = createdAt; + } + + public Date getUpdatedAt() { + return updatedAt; + } + + public void setUpdatedAt(Date updatedAt) { + this.updatedAt = updatedAt; + } + + @Override + public String toString() { + return "title: " + this.title + + "\npost: " + this.post + + "\nauthor: " + this.author + +"\ncreatetdAt: " + this.createdAt + + "\nupdatedAt: " + this.updatedAt; + } +} diff --git a/vraptor/src/main/java/com/baeldung/models/User.java b/vraptor/src/main/java/com/baeldung/models/User.java new file mode 100644 index 0000000000..b0f3bd9500 --- /dev/null +++ b/vraptor/src/main/java/com/baeldung/models/User.java @@ -0,0 +1,101 @@ +package com.baeldung.models; + +import org.hibernate.validator.constraints.Email; + +import javax.persistence.*; +import javax.validation.constraints.NotNull; +import javax.validation.constraints.Pattern; +import javax.validation.constraints.Size; +import java.time.LocalDateTime; +import java.util.Date; + +@Entity +@Table(name = "users") +public class User { + + @Id + @GeneratedValue(strategy = GenerationType.AUTO) + private int id; + + @NotNull + @Size(min=3, max=255) + private String name; + + @Column(unique = true) + @NotNull @Email + private String email; + + @NotNull + @Size(min=6, max=255) + private String password; + + @Column(name = "created_at") + private Date createdAt; + + @Column(name = "updated_at") + private Date updatedAt; + + public User() { + updatedAt = new Date(); + createdAt = new Date(); + } + + public User(String name, String email, String password) { + this.name = name; + this.email = email; + this.password = password; + createdAt = new Date(); + updatedAt = new Date(); + } + + public int getId() { + return id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getEmail() { + return email; + } + + public void setEmail(String email) { + this.email = email; + } + + public String getPassword() { + return password; + } + + public void setPassword(String password) { + this.password = password; + } + + public Date getCreatedAt() { + return createdAt; + } + + public void setCreatedAt(Date createdAt) { + this.createdAt = createdAt; + } + + public Date getUpdatedAt() { + return updatedAt; + } + + public void setUpdatedAt(Date updatedAt) { + this.updatedAt = updatedAt; + } + + + @Override + public String toString() { + return "Name: " + this.name + + "\nEmail: " + this.email; + } +} diff --git a/vraptor/src/main/resources/META-INF/beans.xml b/vraptor/src/main/resources/META-INF/beans.xml new file mode 100644 index 0000000000..9e32823437 --- /dev/null +++ b/vraptor/src/main/resources/META-INF/beans.xml @@ -0,0 +1,8 @@ + + + + \ No newline at end of file diff --git a/vraptor/src/main/resources/database.sql b/vraptor/src/main/resources/database.sql new file mode 100644 index 0000000000..bd4a1a6bde --- /dev/null +++ b/vraptor/src/main/resources/database.sql @@ -0,0 +1,55 @@ +/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; +/*!40101 SET NAMES utf8 */; +/*!50503 SET NAMES utf8mb4 */; +/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; +/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; + +CREATE DATABASE IF NOT EXISTS `larablog` /*!40100 DEFAULT CHARACTER SET latin1 */; +USE `larablog`; + +CREATE TABLE IF NOT EXISTS `posts` ( + `id` int(10) unsigned NOT NULL AUTO_INCREMENT, + `title` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL, + `post` longtext COLLATE utf8mb4_unicode_ci NOT NULL, + `author_id` int(11) DEFAULT NULL, + `published` tinyint(1) NOT NULL DEFAULT 0, + `views` int(11) NOT NULL DEFAULT 0, + `created_at` timestamp NULL DEFAULT NULL, + `updated_at` timestamp NULL DEFAULT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; + +DELETE FROM `posts`; +/*!40000 ALTER TABLE `posts` DISABLE KEYS */; +INSERT INTO `posts` (`id`, `title`, `post`, `author_id`, `published`, `views`, `created_at`, `updated_at`) VALUES + (2, 'Sample Post 2', 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc lobortis, ante in pretium volutpat, risus metus molestie odio, non placerat magna diam sit amet augue. Donec ullamcorper ornare mauris, id bibendum lacus viverra vel. Curabitur in pellentesque metus. Quisque gravida molestie turpis, id tincidunt purus viverra vitae. In sollicitudin, arcu at interdum sagittis, massa mi cursus diam, eu sodales purus erat vitae dui. Curabitur tempus urna consequat odio pretium pellentesque. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Etiam tincidunt eros orci, sit amet pharetra eros accumsan vitae. Quisque a massa id nisi sodales rhoncus sed ut ante. Duis sed augue non velit feugiat varius eget eu velit. Nam commodo posuere massa sed convallis. Phasellus dapibus commodo lectus, vitae gravida lorem. Donec molestie a nisi ac mattis. Interdum et malesuada fames ac ante ipsum primis in faucibus. Aliquam tempor ante et rutrum consequat.', 11, 1, 100, '2017-12-12 18:48:19', NULL), + (3, 'Sample Post 3', 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc lobortis, ante in pretium volutpat, risus metus molestie odio, non placerat magna diam sit amet augue. Donec ullamcorper ornare mauris, id bibendum lacus viverra vel. Curabitur in pellentesque metus. Quisque gravida molestie turpis, id tincidunt purus viverra vitae. In sollicitudin, arcu at interdum sagittis, massa mi cursus diam, eu sodales purus erat vitae dui. Curabitur tempus urna consequat odio pretium pellentesque. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Etiam tincidunt eros orci, sit amet pharetra eros accumsan vitae. Quisque a massa id nisi sodales rhoncus sed ut ante. Duis sed augue non velit feugiat varius eget eu velit. Nam commodo posuere massa sed convallis. Phasellus dapibus commodo lectus, vitae gravida lorem. Donec molestie a nisi ac mattis. Interdum et malesuada fames ac ante ipsum primis in faucibus. Aliquam tempor ante et rutrum consequat.', 11, 1, 100, '2017-12-12 18:48:22', NULL), + (4, 'Sample Post 2212', 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc lobortis, ante in pretium volutpat, risus metus molestie odio, non placerat magna diam sit amet augue. Donec ullamcorper ornare mauris, id bibendum lacus viverra vel. Curabitur in pellentesque metus. Quisque gravida molestie turpis, id tincidunt purus viverra vitae. In sollicitudin, arcu at interdum sagittis, massa mi cursus diam, eu sodales purus erat vitae dui. Curabitur tempus urna consequat odio pretium pellentesque. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Etiam tincidunt eros orci, sit amet pharetra eros accumsan vitae. Quisque a massa id nisi sodales rhoncus sed ut ante. Duis sed augue non velit feugiat varius eget eu velit. Nam commodo posuere massa sed convallis. Phasellus dapibus commodo lectus, vitae gravida lorem. Donec molestie a nisi ac mattis. Interdum et malesuada fames ac ante ipsum primis in faucibus. Aliquam tempor ante et rutrum consequat.', 11, 1, 100, '2017-12-12 18:48:24', NULL), + (9, 'This is a Test', 'HJh sahjnasj hjas hjashj ashj ashj ashjsa sahjass naskjasnmas', 11, 0, 0, NULL, NULL), + (10, 'Test Title', 'hjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj', 11, 0, 0, NULL, NULL), + (11, 'Test Title 2', 'This is a as as sa asmas as as as as as', 11, 0, 0, NULL, NULL), + (12, 'This is another Test Article', 'There are many variations of passages of Lorem Ipsum available, but the majority have suffered alteration in some form, by injected humour, or randomised words which don\'t look even slightly believable. If you are going to use a passage of Lorem Ipsum, you need to be sure there isn\'t anything embarrassing hidden in the middle of text. All the Lorem Ipsum generators on the Internet tend to repeat predefined chunks as necessary, making this the first true generator on the Internet. It uses a dictionary of over 200 Latin words, combined with a handful of model sentence structures, to generate Lorem Ipsum which looks reasonable. The generated Lorem Ipsum is therefore always free from repetition, injected humour, or non-characteristic words etc.', 11, 0, 0, '2017-12-14 03:48:52', '2017-12-14 03:48:52'); +/*!40000 ALTER TABLE `posts` ENABLE KEYS */; + +CREATE TABLE IF NOT EXISTS `users` ( + `id` int(10) unsigned NOT NULL AUTO_INCREMENT, + `name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL, + `email` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL, + `password` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL, + `is_admin` int(10) unsigned NULL DEFAULT 0, + `remember_token` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `created_at` timestamp NULL DEFAULT NULL, + `updated_at` timestamp NULL DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `users_email_unique` (`email`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; + +DELETE FROM `users`; +/*!40000 ALTER TABLE `users` DISABLE KEYS */; +INSERT INTO `users` (`id`, `name`, `email`, `password`, `is_admin`, `remember_token`, `created_at`, `updated_at`) VALUES + (11, 'Test User', 'test@test.com', '$2a$10$i/TgIqC3xRMnqCEbDryfxuZqhfM/qekfsaQUjBVPUKiiB3Nofr/wO', 0, NULL, '2017-12-14 03:40:57', '2017-12-14 03:40:57'); +/*!40000 ALTER TABLE `users` ENABLE KEYS */; + +/*!40101 SET SQL_MODE=IFNULL(@OLD_SQL_MODE, '') */; +/*!40014 SET FOREIGN_KEY_CHECKS=IF(@OLD_FOREIGN_KEY_CHECKS IS NULL, 1, @OLD_FOREIGN_KEY_CHECKS) */; +/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; diff --git a/vraptor/src/main/resources/hibernate.cfg.xml b/vraptor/src/main/resources/hibernate.cfg.xml new file mode 100644 index 0000000000..dad0b44683 --- /dev/null +++ b/vraptor/src/main/resources/hibernate.cfg.xml @@ -0,0 +1,31 @@ + + + + + + org.hibernate.dialect.MySQLDialect + + + com.mysql.cj.jdbc.Driver + + + jdbc:mysql://127.0.0.1:3306/larablog?serverTimezone=UTC + + + root + + + root + + + true + + + true + + + + + + \ No newline at end of file diff --git a/vraptor/src/main/resources/log4j.xml b/vraptor/src/main/resources/log4j.xml new file mode 100644 index 0000000000..4e4c4636bc --- /dev/null +++ b/vraptor/src/main/resources/log4j.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/vraptor/src/main/resources/templates/auth/login.ftl b/vraptor/src/main/resources/templates/auth/login.ftl new file mode 100644 index 0000000000..56ab2900cd --- /dev/null +++ b/vraptor/src/main/resources/templates/auth/login.ftl @@ -0,0 +1,172 @@ + + + + + + + + + + + + Clean Blog - Contact + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+
+

Clean Blog

+
+ A Clean Blog Theme by Start Bootstrap +
+
+
+
+
+ + +
+
+
+

Login

+
${error!""} ${status!""}
+
+
+
+ + +

+
+
+
+
+
+ + +

+
+
+
+
+
+
+ +
+
+
+
+
+
+ +
+ + + + + + + + + + + + + + + + + + + + diff --git a/vraptor/src/main/resources/templates/auth/register.ftl b/vraptor/src/main/resources/templates/auth/register.ftl new file mode 100644 index 0000000000..c65264c834 --- /dev/null +++ b/vraptor/src/main/resources/templates/auth/register.ftl @@ -0,0 +1,194 @@ + + + + + + + + + + + + Clean Blog - Contact + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+
+

Clean Blog

+
+ A Clean Blog Theme by Start Bootstrap +
+
+
+
+
+ + +
+
+
+

Register

+
${error!""} ${status!""}
+ <#if errors??> + <#list errors as error> +
${error.category?upper_case}: ${error.message}
+ <#else> + + <#else> + +
+
+
+ + +

+
+
+
+
+ + +

+
+
+
+
+
+ + +

+
+
+
+
+
+ + +

+
+
+
+
+
+
+ +
+
+
+
+
+
+ +
+ + + + + + + + + + + + + + + + + + + + diff --git a/vraptor/src/main/resources/templates/index.ftl b/vraptor/src/main/resources/templates/index.ftl new file mode 100644 index 0000000000..d65d73f534 --- /dev/null +++ b/vraptor/src/main/resources/templates/index.ftl @@ -0,0 +1,173 @@ + + + + + + + + + + + + Clean Blog + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+
+

Clean Blog

+
+ A Clean Blog Theme by Start Bootstrap +
+
+
+
+
+ + +
+
+
+
${error!""} ${status!""}
+ <#list posts as post> +
+ +

+ ${post.title} +

+

+ <#if (post.post?length > 50) >${post.post?substring(0,50)} <#else> ${post.post} +

+
+ +
+
+ <#else> +

+ NO POSTS YET! +

+ + + +
+
+
+ +
+ + + + + + + + + + + + + + + + + + + + diff --git a/vraptor/src/main/resources/templates/posts/add.ftl b/vraptor/src/main/resources/templates/posts/add.ftl new file mode 100644 index 0000000000..de036cea20 --- /dev/null +++ b/vraptor/src/main/resources/templates/posts/add.ftl @@ -0,0 +1,164 @@ + + + + + + + + + + + + Clean Blog - Contact + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+

Compose the Next Viral Message!

+
${error!""} ${status!""}
+ <#if errors??> + <#list errors as error> +
${error.category?upper_case}: ${error.message}
+ <#else> + + <#else> + +
+
+
+ + +

+
+
+
+
+ + +

+
+
+
+
+
+
+ +
+
+
+
+
+
+ +
+ + + + + + + + + + + + + + + + + + + + diff --git a/vraptor/src/main/resources/templates/view.ftl b/vraptor/src/main/resources/templates/view.ftl new file mode 100644 index 0000000000..96525cc93a --- /dev/null +++ b/vraptor/src/main/resources/templates/view.ftl @@ -0,0 +1,152 @@ + + + + + + + + + + + + Clean Blog - Sample Post + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+
+

${post.title}

+ Posted by Start Bootstrap on ${post.createdAt!''} +
+
+
+
+
+ + +
+
+
+
+

+ ${post.post} +

+
+
+
+
+ +
+ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/vraptor/src/main/webapp/META-INF/MANIFEST.MF b/vraptor/src/main/webapp/META-INF/MANIFEST.MF new file mode 100644 index 0000000000..254272e1c0 --- /dev/null +++ b/vraptor/src/main/webapp/META-INF/MANIFEST.MF @@ -0,0 +1,3 @@ +Manifest-Version: 1.0 +Class-Path: + diff --git a/vraptor/src/main/webapp/WEB-INF/jsp/index/index.jsp b/vraptor/src/main/webapp/WEB-INF/jsp/index/index.jsp new file mode 100644 index 0000000000..61efbb9e1d --- /dev/null +++ b/vraptor/src/main/webapp/WEB-INF/jsp/index/index.jsp @@ -0,0 +1,10 @@ + + + + +VRaptor Blank Project + + + It works!! JSP ${variable} ${linkTo[IndexController].index} + + \ No newline at end of file diff --git a/vraptor/src/main/webapp/WEB-INF/web.xml b/vraptor/src/main/webapp/WEB-INF/web.xml new file mode 100644 index 0000000000..f778a0e779 --- /dev/null +++ b/vraptor/src/main/webapp/WEB-INF/web.xml @@ -0,0 +1,19 @@ + + + + vraptor-blank-project + + + javax.servlet.jsp.jstl.fmt.localizationContext + messages + + + + org.jboss.weld.environment.servlet.Listener + + + \ No newline at end of file diff --git a/vraptor/src/main/webapp/css/clean-blog.css b/vraptor/src/main/webapp/css/clean-blog.css new file mode 100644 index 0000000000..04a94f0e0f --- /dev/null +++ b/vraptor/src/main/webapp/css/clean-blog.css @@ -0,0 +1,400 @@ +/*! + * Start Bootstrap - Clean Blog v3.3.7+1 (http://startbootstrap.com/template-overviews/clean-blog) + * Copyright 2013-2016 Start Bootstrap + * Licensed under MIT (https://github.com/BlackrockDigital/startbootstrap/blob/gh-pages/LICENSE) + */ +body { + font-family: 'Lora', 'Times New Roman', serif; + font-size: 20px; + color: #333333; +} +p { + line-height: 1.5; + margin: 30px 0; +} +p a { + text-decoration: underline; +} +h1, +h2, +h3, +h4, +h5, +h6 { + font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif; + font-weight: 800; +} +a { + color: #333333; +} +a:hover, +a:focus { + color: #0085A1; +} +a img:hover, +a img:focus { + cursor: zoom-in; +} +blockquote { + color: #777777; + font-style: italic; +} +hr.small { + max-width: 100px; + margin: 15px auto; + border-width: 4px; + border-color: white; +} +.navbar-custom { + position: absolute; + top: 0; + left: 0; + width: 100%; + z-index: 3; + font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif; +} +.navbar-custom .navbar-brand { + font-weight: 800; +} +.navbar-custom .navbar-header .navbar-toggle { + color: #777777; + font-weight: 800; + text-transform: uppercase; + font-size: 12px; +} +.navbar-custom .nav li a { + text-transform: uppercase; + font-size: 12px; + font-weight: 800; + letter-spacing: 1px; +} +@media only screen and (min-width: 768px) { + .navbar-custom { + background: transparent; + border-bottom: 1px solid transparent; + } + .navbar-custom .navbar-brand { + color: white; + padding: 20px; + } + .navbar-custom .navbar-brand:hover, + .navbar-custom .navbar-brand:focus { + color: rgba(255, 255, 255, 0.8); + } + .navbar-custom .nav li a { + color: white; + padding: 20px; + } + .navbar-custom .nav li a:hover, + .navbar-custom .nav li a:focus { + color: rgba(255, 255, 255, 0.8); + } +} +@media only screen and (min-width: 1170px) { + .navbar-custom { + -webkit-transition: background-color 0.3s; + -moz-transition: background-color 0.3s; + transition: background-color 0.3s; + /* Force Hardware Acceleration in WebKit */ + -webkit-transform: translate3d(0, 0, 0); + -moz-transform: translate3d(0, 0, 0); + -ms-transform: translate3d(0, 0, 0); + -o-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + -webkit-backface-visibility: hidden; + backface-visibility: hidden; + } + .navbar-custom.is-fixed { + /* when the user scrolls down, we hide the header right above the viewport */ + position: fixed; + top: -61px; + background-color: rgba(255, 255, 255, 0.9); + border-bottom: 1px solid #f2f2f2; + -webkit-transition: -webkit-transform 0.3s; + -moz-transition: -moz-transform 0.3s; + transition: transform 0.3s; + } + .navbar-custom.is-fixed .navbar-brand { + color: #333333; + } + .navbar-custom.is-fixed .navbar-brand:hover, + .navbar-custom.is-fixed .navbar-brand:focus { + color: #0085A1; + } + .navbar-custom.is-fixed .nav li a { + color: #333333; + } + .navbar-custom.is-fixed .nav li a:hover, + .navbar-custom.is-fixed .nav li a:focus { + color: #0085A1; + } + .navbar-custom.is-visible { + /* if the user changes the scrolling direction, we show the header */ + -webkit-transform: translate3d(0, 100%, 0); + -moz-transform: translate3d(0, 100%, 0); + -ms-transform: translate3d(0, 100%, 0); + -o-transform: translate3d(0, 100%, 0); + transform: translate3d(0, 100%, 0); + } +} +.intro-header { + background-color: #777777; + background: no-repeat center center; + background-attachment: scroll; + -webkit-background-size: cover; + -moz-background-size: cover; + background-size: cover; + -o-background-size: cover; + margin-bottom: 50px; +} +.intro-header .site-heading, +.intro-header .post-heading, +.intro-header .page-heading { + padding: 100px 0 50px; + color: white; +} +@media only screen and (min-width: 768px) { + .intro-header .site-heading, + .intro-header .post-heading, + .intro-header .page-heading { + padding: 150px 0; + } +} +.intro-header .site-heading, +.intro-header .page-heading { + text-align: center; +} +.intro-header .site-heading h1, +.intro-header .page-heading h1 { + margin-top: 0; + font-size: 50px; +} +.intro-header .site-heading .subheading, +.intro-header .page-heading .subheading { + font-size: 24px; + line-height: 1.1; + display: block; + font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif; + font-weight: 300; + margin: 10px 0 0; +} +@media only screen and (min-width: 768px) { + .intro-header .site-heading h1, + .intro-header .page-heading h1 { + font-size: 80px; + } +} +.intro-header .post-heading h1 { + font-size: 35px; +} +.intro-header .post-heading .subheading, +.intro-header .post-heading .meta { + line-height: 1.1; + display: block; +} +.intro-header .post-heading .subheading { + font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif; + font-size: 24px; + margin: 10px 0 30px; + font-weight: 600; +} +.intro-header .post-heading .meta { + font-family: 'Lora', 'Times New Roman', serif; + font-style: italic; + font-weight: 300; + font-size: 20px; +} +.intro-header .post-heading .meta a { + color: white; +} +@media only screen and (min-width: 768px) { + .intro-header .post-heading h1 { + font-size: 55px; + } + .intro-header .post-heading .subheading { + font-size: 30px; + } +} +.post-preview > a { + color: #333333; +} +.post-preview > a:hover, +.post-preview > a:focus { + text-decoration: none; + color: #0085A1; +} +.post-preview > a > .post-title { + font-size: 30px; + margin-top: 30px; + margin-bottom: 10px; +} +.post-preview > a > .post-subtitle { + margin: 0; + font-weight: 300; + margin-bottom: 10px; +} +.post-preview > .post-meta { + color: #777777; + font-size: 18px; + font-style: italic; + margin-top: 0; +} +.post-preview > .post-meta > a { + text-decoration: none; + color: #333333; +} +.post-preview > .post-meta > a:hover, +.post-preview > .post-meta > a:focus { + color: #0085A1; + text-decoration: underline; +} +@media only screen and (min-width: 768px) { + .post-preview > a > .post-title { + font-size: 36px; + } +} +.section-heading { + font-size: 36px; + margin-top: 60px; + font-weight: 700; +} +.caption { + text-align: center; + font-size: 14px; + padding: 10px; + font-style: italic; + margin: 0; + display: block; + border-bottom-right-radius: 5px; + border-bottom-left-radius: 5px; +} +footer { + padding: 50px 0 65px; +} +footer .list-inline { + margin: 0; + padding: 0; +} +footer .copyright { + font-size: 14px; + text-align: center; + margin-bottom: 0; +} +.floating-label-form-group { + font-size: 14px; + position: relative; + margin-bottom: 0; + padding-bottom: 0.5em; + border-bottom: 1px solid #eeeeee; +} +.floating-label-form-group input, +.floating-label-form-group textarea { + z-index: 1; + position: relative; + padding-right: 0; + padding-left: 0; + border: none; + border-radius: 0; + font-size: 1.5em; + background: none; + box-shadow: none !important; + resize: none; +} +.floating-label-form-group label { + display: block; + z-index: 0; + position: relative; + top: 2em; + margin: 0; + font-size: 0.85em; + line-height: 1.764705882em; + vertical-align: middle; + vertical-align: baseline; + opacity: 0; + -webkit-transition: top 0.3s ease,opacity 0.3s ease; + -moz-transition: top 0.3s ease,opacity 0.3s ease; + -ms-transition: top 0.3s ease,opacity 0.3s ease; + transition: top 0.3s ease,opacity 0.3s ease; +} +.floating-label-form-group::not(:first-child) { + padding-left: 14px; + border-left: 1px solid #eeeeee; +} +.floating-label-form-group-with-value label { + top: 0; + opacity: 1; +} +.floating-label-form-group-with-focus label { + color: #0085A1; +} +form .row:first-child .floating-label-form-group { + border-top: 1px solid #eeeeee; +} +.btn { + font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif; + text-transform: uppercase; + font-size: 14px; + font-weight: 800; + letter-spacing: 1px; + border-radius: 0; + padding: 15px 25px; +} +.btn-lg { + font-size: 16px; + padding: 25px 35px; +} +.btn-default:hover, +.btn-default:focus { + background-color: #0085A1; + border: 1px solid #0085A1; + color: white; +} +.pager { + margin: 20px 0 0; +} +.pager li > a, +.pager li > span { + font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif; + text-transform: uppercase; + font-size: 14px; + font-weight: 800; + letter-spacing: 1px; + padding: 15px 25px; + background-color: white; + border-radius: 0; +} +.pager li > a:hover, +.pager li > a:focus { + color: white; + background-color: #0085A1; + border: 1px solid #0085A1; +} +.pager .disabled > a, +.pager .disabled > a:hover, +.pager .disabled > a:focus, +.pager .disabled > span { + color: #777777; + background-color: #333333; + cursor: not-allowed; +} +::-moz-selection { + color: white; + text-shadow: none; + background: #0085A1; +} +::selection { + color: white; + text-shadow: none; + background: #0085A1; +} +img::selection { + color: white; + background: transparent; +} +img::-moz-selection { + color: white; + background: transparent; +} +body { + -webkit-tap-highlight-color: #0085A1; +} diff --git a/vraptor/src/main/webapp/css/clean-blog.min.css b/vraptor/src/main/webapp/css/clean-blog.min.css new file mode 100644 index 0000000000..faa3794436 --- /dev/null +++ b/vraptor/src/main/webapp/css/clean-blog.min.css @@ -0,0 +1,5 @@ +/*! + * Start Bootstrap - Clean Blog v3.3.7+1 (http://startbootstrap.com/template-overviews/clean-blog) + * Copyright 2013-2016 Start Bootstrap + * Licensed under MIT (https://github.com/BlackrockDigital/startbootstrap/blob/gh-pages/LICENSE) + */a,body{color:#333}.navbar-custom .nav li a,.navbar-custom .navbar-brand,h1,h2,h3,h4,h5,h6{font-weight:800}.caption,.intro-header .page-heading,.intro-header .site-heading,footer .copyright{text-align:center}body{font-family:Lora,'Times New Roman',serif;font-size:20px;-webkit-tap-highlight-color:#0085A1}.intro-header .page-heading .subheading,.intro-header .post-heading .subheading,.intro-header .site-heading .subheading,.navbar-custom,h1,h2,h3,h4,h5,h6{font-family:'Open Sans','Helvetica Neue',Helvetica,Arial,sans-serif}p{line-height:1.5;margin:30px 0}p a{text-decoration:underline}a:focus,a:hover{color:#0085A1}a img:focus,a img:hover{cursor:zoom-in}blockquote{color:#777;font-style:italic}hr.small{max-width:100px;margin:15px auto;border-width:4px;border-color:#fff}.navbar-custom{position:absolute;top:0;left:0;width:100%;z-index:3}.navbar-custom .navbar-header .navbar-toggle{color:#777;font-weight:800;text-transform:uppercase;font-size:12px}.navbar-custom .nav li a{text-transform:uppercase;font-size:12px;letter-spacing:1px}@media only screen and (min-width:768px){.navbar-custom{background:0 0;border-bottom:1px solid transparent}.navbar-custom .navbar-brand{color:#fff;padding:20px}.navbar-custom .navbar-brand:focus,.navbar-custom .navbar-brand:hover{color:rgba(255,255,255,.8)}.navbar-custom .nav li a{color:#fff;padding:20px}.navbar-custom .nav li a:focus,.navbar-custom .nav li a:hover{color:rgba(255,255,255,.8)}}@media only screen and (min-width:1170px){.navbar-custom{-webkit-transition:background-color .3s;-moz-transition:background-color .3s;transition:background-color .3s;-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);transform:translate3d(0,0,0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.navbar-custom.is-fixed{position:fixed;top:-61px;background-color:rgba(255,255,255,.9);border-bottom:1px solid #f2f2f2;-webkit-transition:-webkit-transform .3s;-moz-transition:-moz-transform .3s;transition:transform .3s}.navbar-custom.is-fixed .navbar-brand{color:#333}.navbar-custom.is-fixed .navbar-brand:focus,.navbar-custom.is-fixed .navbar-brand:hover{color:#0085A1}.navbar-custom.is-fixed .nav li a{color:#333}.navbar-custom.is-fixed .nav li a:focus,.navbar-custom.is-fixed .nav li a:hover{color:#0085A1}.navbar-custom.is-visible{-webkit-transform:translate3d(0,100%,0);-moz-transform:translate3d(0,100%,0);-ms-transform:translate3d(0,100%,0);-o-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}.intro-header{background:center center no-repeat;-webkit-background-size:cover;-moz-background-size:cover;background-size:cover;-o-background-size:cover;margin-bottom:50px}.intro-header .page-heading,.intro-header .post-heading,.intro-header .site-heading{padding:100px 0 50px;color:#fff}.intro-header .page-heading h1,.intro-header .site-heading h1{margin-top:0;font-size:50px}.intro-header .page-heading .subheading,.intro-header .site-heading .subheading{font-size:24px;line-height:1.1;display:block;font-weight:300;margin:10px 0 0}@media only screen and (min-width:768px){.intro-header .page-heading,.intro-header .post-heading,.intro-header .site-heading{padding:150px 0}.intro-header .page-heading h1,.intro-header .site-heading h1{font-size:80px}}.intro-header .post-heading h1{font-size:35px}.intro-header .post-heading .meta,.intro-header .post-heading .subheading{line-height:1.1;display:block}.intro-header .post-heading .subheading{font-size:24px;margin:10px 0 30px;font-weight:600}.intro-header .post-heading .meta{font-family:Lora,'Times New Roman',serif;font-style:italic;font-weight:300;font-size:20px}.intro-header .post-heading .meta a{color:#fff}@media only screen and (min-width:768px){.intro-header .post-heading h1{font-size:55px}.intro-header .post-heading .subheading{font-size:30px}}.post-preview>a{color:#333}.post-preview>a:focus,.post-preview>a:hover{text-decoration:none;color:#0085A1}.post-preview>a>.post-title{font-size:30px;margin-top:30px;margin-bottom:10px}.post-preview>a>.post-subtitle{margin:0 0 10px;font-weight:300}.post-preview>.post-meta{color:#777;font-size:18px;font-style:italic;margin-top:0}.post-preview>.post-meta>a{text-decoration:none;color:#333}.post-preview>.post-meta>a:focus,.post-preview>.post-meta>a:hover{color:#0085A1;text-decoration:underline}@media only screen and (min-width:768px){.post-preview>a>.post-title{font-size:36px}}.section-heading{font-size:36px;margin-top:60px;font-weight:700}.btn,.pager li>a,.pager li>span{font-family:'Open Sans','Helvetica Neue',Helvetica,Arial,sans-serif;text-transform:uppercase;font-weight:800;letter-spacing:1px}.caption{font-size:14px;padding:10px;font-style:italic;margin:0;display:block;border-bottom-right-radius:5px;border-bottom-left-radius:5px}footer{padding:50px 0 65px}footer .list-inline{margin:0;padding:0}footer .copyright{font-size:14px;margin-bottom:0}.floating-label-form-group{font-size:14px;position:relative;margin-bottom:0;padding-bottom:.5em;border-bottom:1px solid #eee}.floating-label-form-group input,.floating-label-form-group textarea{z-index:1;position:relative;padding-right:0;padding-left:0;border:none;border-radius:0;font-size:1.5em;background:0 0;box-shadow:none!important;resize:none}.floating-label-form-group label{display:block;z-index:0;position:relative;top:2em;margin:0;font-size:.85em;line-height:1.764705882em;vertical-align:middle;vertical-align:baseline;opacity:0;-webkit-transition:top .3s ease,opacity .3s ease;-moz-transition:top .3s ease,opacity .3s ease;-ms-transition:top .3s ease,opacity .3s ease;transition:top .3s ease,opacity .3s ease}.floating-label-form-group::not(:first-child){padding-left:14px;border-left:1px solid #eee}.floating-label-form-group-with-value label{top:0;opacity:1}.floating-label-form-group-with-focus label{color:#0085A1}form .row:first-child .floating-label-form-group{border-top:1px solid #eee}.btn{font-size:14px;border-radius:0;padding:15px 25px}.btn-lg{font-size:16px;padding:25px 35px}.btn-default:focus,.btn-default:hover{background-color:#0085A1;border:1px solid #0085A1;color:#fff}.pager{margin:20px 0 0}.pager li>a,.pager li>span{font-size:14px;padding:15px 25px;background-color:#fff;border-radius:0}.pager li>a:focus,.pager li>a:hover{color:#fff;background-color:#0085A1;border:1px solid #0085A1}.pager .disabled>a,.pager .disabled>a:focus,.pager .disabled>a:hover,.pager .disabled>span{color:#777;background-color:#333;cursor:not-allowed}::-moz-selection{color:#fff;text-shadow:none;background:#0085A1}::selection{color:#fff;text-shadow:none;background:#0085A1}img::selection{color:#fff;background:0 0}img::-moz-selection{color:#fff;background:0 0} \ No newline at end of file diff --git a/vraptor/src/main/webapp/img/about-bg.jpg b/vraptor/src/main/webapp/img/about-bg.jpg new file mode 100644 index 0000000000000000000000000000000000000000..af6d4d5cd1629f4cd396ced9b6c4302b24ec884b GIT binary patch literal 33097 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

@Z-2a*BRd+m_LKaU|KQH!g_W;; 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

8P(1GQRo*SRA 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

jYdCZgq3z;a905My}?ea1JCc3}Z=Ty_k`y1D3U( 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 z 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 z zxYLO6tzRa+E@oCFc+p9yc#v)puua||T=Bhm{XDg*;dgG?EY@(*ADyImGz95q79-FK zUQ$zXa}2SRj~02^q}vfkxVQkXw}DgPQg~X!Af74MWbTe&2kDdyo2|ozZ55Xm4!*!j zxeL|>t?nb-7u22=H4`aV*uc<&w+;0O{{SwUiybT~hV^@7xTWx-ju#hxocW9M1H(L)2v)W^&-BQ4r6 zI*FjT!hb0y0-^SJ0d(8vz>W+V~fJUzZO zsmPh1a6s9nsS~7lRBIf7gL7+EkSwxa$ye_~Xy_r;! zNNGPZ-%5}tGAxzPof>H1ad8p8)pW2Z>gPfj8+lf<8PdjX%rDa>8Hh3$TNMH}*i;UD zHK{q%SmT$e6D`yU+kBZCg$lfU`1n?=!KzF~k7SZf5Q-yp$8rPS`aeEAO-%~Ol3Ze| z36JU|xiT%7ZMDz8`BlwWt9N{<k_#rr*$bij$RN%Kre!NhA^D9EncnMu|;$9c>Ag8F!rwI7w(){ zA~^lb4x2_6EQr(`h^A5*Uw<0|z*cV!mlx%M@(jJXl6(!$CSJmVifMS=*to|5P4Ly7xl9vxA!T8nG;3yaWMxuVj;)3 z<&c5Hc;{_vI+&y6XC}az7{5mtz6h1WJCHt5ojz8KXj^FfTmiKtT|kxxAhebjw7@A07<|??)pWn5D=uqi#tLJk z>SEilf`Er(sx^-bc-L9aglWf@A09)GHc{Om8?oBpD{}{Sx7M+FRl(lk9HuO-tZl*W zI5cM797RhC+m7t;WJ#;oC=Lg?i1}EaM%9ZNg)U}8;==L3Zx#Bp5(>zG+#QGUEnibx zA?^cprz$aYkhml=k@B$~9%84FGUWDrpbNnpIDMldYO4ks>KE<3U7`j)JiB_(EQu2q zibqqqP4`_J!=0+?tZ=bq$d@B70g`4*O&a{Hs!3MyEC)Ki)WY&VZuYq_`VnGv(&Vh_ zPt`!CJB#2~9PFc!AJ zcPVZlk;nL6h*V}{0taC2C&=ZOTb%;|^0$peGh|ThMw&Es_ehH3+rJSY{G@Z_X^E!7 zBajwDVl8f>-EVJ>o)lJGoQM?~DTIaCUO3jw3FXsc#QN}{=jF*VVyMH#GU5PQWIoxW z{KZuJjk%HVt;ikwbGr8F)!<>&k#t0qks%i1ck6!(Yg4I+*z1O`)ybA&A`jC7#iQ3- z+mHLJCNDNIW?3=vav|6((cBe0>=^j^RSt$ZH|}|4lXdMVI_*4Fg-rtDq|qI&&YrS z0Z+7O(s0+nRP}4$$Acru-8^2+@j|v#90>yVrZ2mt`%ue2ayw?|m|N-e*;*1qU5^0M<^1AOtvV;du}0Tf-s-@xB(zm;;H9XYQ(mX>8C+}ig1s(4qY zmmi`Kr%l5)q-ee;!ig_}qGG1xTyVFoX^BrsND6j~gQty-m76>|O7=gp@|s7?X>5TJ z71=>5SCzo$UT(R@`nw(6sJlSC`K<}ZgoZ8{qk?%bR@G0X97~7jXTur&x);Qa{fU#X zH@EuJ@uB-_S}EKzJH&88y}c76X%^G8QW#fOu#@ua@z(WcF-z?!-DDFdbI0g_z(*`u z19XHNhQ7C67Bw$28r`7w#G2_Z?db6F*DtzB){A!04lIDLka#gYVYAjaHEqP!8v9Ip_p2i|H+ z(Rr1{?l~QyCHq5X%Y~msSlZc-s6KcHMbYw^mGQo4NNHF{6Q@agPxv8c0)N4nY?G080a{W^p3g zF*|xT6L&V9@$#ZJWRVrX-T0MM?liafN&PMol3_MRQ)RsS+9uCexD;vonu7sUo@AiEGgbM0Qdm5u*?e<`!QN7#(VBCJ~Gz8>9pP zbehZs{{Yp*Rh2Qt?w_=E?qLgUj%{!53G(`i)T2%wXvdA=e%i_O=k?bS zjKp}m9oHQE>VDA4yV=Q0_S`wLB#%JzMo=gs$8O>cO0qfK(tg30`Z<_GBe;l_oWUSo zRv};b)s(!}tUUhTh1=0{x{xYdbYydo0uy2Gup@6VQr$gkUJN)H0dg>>42}-eONgGt zh9DhJ8iJ8v_qZlvhZXU!c;k4aPznB_^J(Q)L~6#yUZ9p(Vl$takQ5qoR66`<7}*6F zmr%*b$Nj?GE@zfmm=gmQe&zEvkq{kR`F|taJ4K}$t8oQ)|HgS7$5YjrnkkncPRo1k{S>An%4OZ;0Q-d~&e#|-KKU_Xkg2+sTbuZrNFer} z*u_|3<8K@+fFBCBqYg$6JTr9SmPi#2=Er~s1fFDRYUgWlNU^ejkff3*B)DY=M&HWg znXH=5dt+obP9M`o)@jjpj-L`P-z^oNBe%x6alCSLun+kz) z^I~~=RP{Bh6)+xW3SS~q?lOROs5}CbP^~h+&UVJm1@$G3w5B23SXh?1=GQf35~|m@ zYhHp#Z<^-Ai8RDf_h>=Ctuay3jIm~n79z(%{3s}x5e?-OBEJ;^#8ntF{{U{`%eaMg zBw2QwYvZLQ7%)F?_iSZw5+LvL%IsY2@~e6sIQu&sQ4UDm&OslwPnBg^@;_}t>O>NV zWNkMv4P@}QKU&o2rNh{}t}2M(m`fP>OX;bpY9c<<-ZAnFry&|gw*B4!($#3o@3_4t zizq1rKo?PeAyR11gO}MI35YH)E8A<6&X!T2E-Sa_xovf0uD*4ZYQrkKgByTv>qJgu z(OoU_-`#3aW>wp|`vKq$MGK6??nl*s4=eap#7t9Vx#>osAA@e-JpC$;2XOAa`x_=v zBtel)gN_<l*Vn?AoL5(LPhuO|+$~uZd?egiNx9-^FVYG$ z78JprS#pv^NTax8Yx1Cf>TqFW;XoGKtw9Ykm7OgdIgMMmNHY_ZA-B zH}R~7C_>zLR8&hb3P>6b6d4k1=^VD(Ml>hFsB;;YLJ0iE^aN!$T-f+uN(Qb!REv@a zJ$0yyeFI!=YmRsDsuv_Oqguw?i147JM&pBDpPfZ8WlErR7Qk~}HBk6_jBIQ)w+r*D zrZ+*6yl4l)wK`_Q8zMC}HFYs{l^caLP1nMxq>O-Tr3NW2xb5LlQ9%}XoA$oVv*k4KtWHw%2N{J-A z@Q-nGZ~@>6@ucuBn3C^UodbyN*OASURGX5m=WZ1(S7r>Z)?22K3E_>5f>kQ9jmK%d z{l!+fSynpHoM%v&^TY22wr*D1r(JGA+pTlPnaZ=c8L^YF6#^o5aIn>{ug0W8CC0== zf)|krHkM`$GPTJBl{#9iwGz-lxz#cLsb)U-*}x*)J|D)fv12YrZ)j|*7B-`O(U?CU zaRR_rrPRSGju=eK5MuTx-F92@1Ne%8fs%Dhs3AE}WDcH8L@F{c(_szvi&JoC%x>9^ zBZVP&-s17VND9Y>;m-AP(JKNZq(c<1A}El)w>~G^eJ??A9tsY#Nb7qxw_qCn;bX7c zQB9H6GLvF%#kewVwwikUy78zkBZf2d>l*K7vM>aeCywj#1Hz$In+GB{aB!o^$Fi4_ zCjvmj+)#tzZXOk+Tc;Ou#2v0nHbg|v+Bde~=&NZl!8(lwo_>|CXRczo31xU!$kIa5Gs1jsQ>njo-{BOHK_Ee5>nBQcrXsi6hcg7PYo;*LIw0&KFBYkRUly zE=D}JDUQW=hGWHiHLXrU8YgosDuI^Un6i&)0{V|1F;~E>IN2|aktm5Gjs;m>=EarH z-(WvAj~@!QhY%$S&dCPUuwp&ila`!rI8>qXw9%+ZU>Oi?-}LT`s=@F2(OcZNKYdMH zQ!fq~abjF~1X#@CMUBeH)*x>&%1YmEmqxLxJ4+V8AGUGhFv>=5WX`Iy%&im=0j>1A zHTlx*SqSd2cl63^9H^xO8Ltcwp=eZoXzVpx9yMf%wR4pL$aZh&cH zZK_p6#`ZjqBU&5bj!|Qgj*=<%!+UjXH7o5t?sd-jFo-*bBx=ztqofIBVs#DqHrR3H zYM!WT$kT+56_f@`&y8`Z8k;FQh$B&IvMwtYf6~P>W8@6zWM5-j-yagl<4#)c;ZI#= zjC}IseG?dFAQvt#WnTh*VSn(apyT%`X3WeoP7)$6rd1s@aHmoL(*Bj(pTwaqB;wZvg6+p zexQjg6+*aOIA1~(`HIDseyl2NKJc=|m58Qj{kz+0>=FTW4{M$r$hGUFl8v~zlU~xZ zVX)geC>C22?p8**w~ebAjTt6>G!n?{lgA4HPfZIbCxb8I1J;;1oy)n&lZZd#-b~HN z+w8k0j@G#aH7a@6PGVMW&54yf_~gNm$hLB%`wEd_%1;Y;RqF`#jS-1ari9E2m1m8Y zbYSo&f&Tz?a?vv5+BqbL8>);h(?V5&JPF!Q5zksmIY+$qU#@IdiWy!=#hyfEb8)Ov zU!A;bbDA#(ehw=X!-FFoMcJeQrh{91Pakim3YSc3nfq)wqa|c!O{Q(@c2nXmN4Lwy zrWD`F$O}TL$m^?b-0Su+(%jwhl3N$R5DD#kg}2kFyXk~&E-L6VL%biAmxsoJH_r+_{E*fFvasL>H5bx@T4qNiVJ3AdJ-d}i58^Z?*Qh7y z@B_sun7pO1raF$P4vBwI!UU_+rM&liL)JH%+7hI zZ)QFAfo*oF2mb(C*R6=`q}cKoSlt<%U4t_97u9Y`n#iotWyvEParJXth+oxM4?0$*;xNFj*hSo!&7;e)Y^vs|-j_E)M#HB=X2_tj<^ z0tDVg)M#onEq`%35#i3%SE&7xQKpw4tt>J!^&*ul4Y)dyV|$wO{b!d;d_6XAZS9@X zC&g$LM{exrwgCWaaQkko715a5#Gv2d#9Eyx(#1Rzk&hY! zDsJB0O@=^!5+}CgelND5Y)#xFiB@A2!LB4Of*qP^V7J|RTDZ3OQBX+95jP~NosH%{ z5ct%hSVxhKJSif}9KfWz8qH=L4Tj)+D$9vndH(=y;Adhw7R-e~{Z=K8qfk^hJBOWW zbgjL&2Nw$sF(LY59RC1yqC4E3F8j3HZBo=<8y~nulOa_7B?KyTV_n0DF|=fV^;T8O z?%C00I$$(qB*;JguBgjzndBPXD#_)nVQ%3MZ&inKr17vJU|y_pTzgH3vD1j+D}T|- zObjQIIVQx(C|RE_N8cQ3jjhqRd@Ea1!Z9?HYR4D{;58WaDMYmlzPE5&C1N zX(fzuCK1OCcGCsH`~n z{{Xz=$d@l6q0OB}$RkOLMx&k4Ksx&AS0XPQJ=Qp<$eJS4IVMbOHS1#9+J{DEyLqU+ zW7qsOv5s6JB#k~6Ox?C;Si0Dbp$kL~iy8MkV4oVZz}NeRU)&_a7Bb6^I|jc;Ye%pP zlO&{u+y^ZMZ#9=bY^2Nmz22HQ-LlM)L)3OwX&ka@HWG<*;C?lkGPQ2J;K{}8>$N(0 zUD*Lukph^YEJAL!;95~kJ&5PT+4_CQ< z+MY~-F`EsHSkeaD3Y7>J5gL+Yd3YT-o7OCl-|%bb6cMu`UsYYkz>YjCnrp~sG~MgG!aHkEG_www zl64WRY&ft~(NqJibmy5N*I(i2yC-kV?U~BmwhWAnX%lWnOw5ZEjl10{rON@OmrZLu zCg1DRh{2VdZe=rmi-9Z$=>b^F*W% z)O|n)%G|uoG&NmiPO1iI$hx|V+;Xw2p<-cheqMGXUyVS;kdb{w`E&cKiWx0-TOr^a zi;?A1M-ls8L>;-%001?3Ac+|_*BJZ{{V=^F^-IfR@@w3_vQl{si}((xg>`oHjgIa%_;V^ zhX6phy)ar_oQybkl(FwR8%BIw4$CI{ZTP9edGDrQlU>M)XohwqN6g$UliJC(= zQGaY_=GRR}D^tqh(f3SAJ<3Rrhf$7)%vHAxJY?dqBtGIf9X`QLFv34gU2M*E+k4o0 zifUn9Wg_CtgYgYX@)Xs_Be;I&gAXI8yf)MNj75U^4?44(MR5NBaOP*^H_=2I0ilt& z1N`Y`4!lw2G*`)%&UM;{+6RSX#V5$ff;C9i?D_#~nrNmxd5bY=X5W4y*0+_YHM1E8 z!*w1bO42#A_F&S9F{hCv2KFaPgIsOh(RPrM5yO@0D-50f7-uPyj#0-OkWKum$T5!N z+HrvfZom~N9WXVsNYxC8mGN{wIfk*M7qg-H1p_qVAvF*PlXlFC0*aUN8~HJn2e zG=}Pe{4g@BZzgGj^lka^E|7P ziMys;6CSobq8b)MyIXLzR9ZgtjqiAjDZndePo)O9vhk!*XBRxKDx&U@FybtE3WAM@ zs<%3xRK-wZ+fWa!Fh@+^Q?DUFbj1PFH}Dh_(;l=7F?+8;1wZS;ni!bq%XZXq9IHOc ztK%Uy3-PJ!xKxPo4WQf|K&z>UQZ}Ann)O6)xd@OA+_Oj{cQ$>m>9`H2O(^ZQo zgA+P?b_=L(epRkf#~s@t4cM_zeZ#`KdZV#}-UNwj?gFu94Xd3K>8Lak$c{9z`;9@0 zSaN|RdxtCWs;t3UJKR|Fkl`g`g*(GYQ-+;yrFLj$yn8j3GLQURc#iEqw=S~5oyLBsC7 zji-~Wg|`8y79!QDM;>n1n3o^;6Sx!zO|^`nwN|psX-D(dPe2!E$-f< zRXXY6T;j4vj^U%7;a#pbAzN%0(#&}uD&45xEDt6sv{8tsX$qERva;<23m-b?s!mF5 z>6s*BCBPeONI}G?^Wjwu=|Us~D;AFDuPTK>ZAq~9=yaxx$1gTWrhqD}kGe)n*nlnW zxFB$=kr}dKXjNonEszH52OFc)M;m-=a)&NT%@i*zgR2^Vs}Hkwx|agitk?uQXK^z1 z)y0vdVhZ1Z9%r5CC~~?-qNo{{+_pQT7Cde^)y)pc&4Nb{l`}+NRK;LaTc5an)h7Vc zKrFu|x%gAJ)O7?!npZ6z*CEcQXx-1&+^ct=1EGy9xf$55QDbkZgru4~tMwH?(CdD6 znHDj3GJdN!VK6J@@+g1G6OpnI)jYL!ex?hlTcD)O!rgpRmNqBu4?%J3ew zHV%wQ8usZsMo@{Fk6JMqb2yQhd$%yzw{IP7T^JHSV>@0;5ez%l}Iv4mx0q&?lC-4G5-MWU;*yxEoVm-C6w6f zt!ppwb}1e_SxqXYOnDg2ijqLAAel;$wWCP}-OFojzwxc_@t3IVIXL~Z_UG1TcNWOS zVon54?2(a9-J3nlc5N-F=UneQQrDL6S-sD`xBP{tH)!0gI1u|H01 znG)*@e7iKz`4;;s^UeOVTxdI+#~iJZ94cIv`o@Ga-$T;~blc(K<6FEglb77_a-GsV zSfevCnR3Dy*;@Lts5bzPDowm9&T46x@yNL{W5C@>Ba-nk1N9QefjR~wh3a&&I~Yj^ zU1r0M^WyF)^$Tcy<7*>EcsHT9I_GXKE8HM=3l20fln36C`(W1AF_*thhcS9+=*5eg zSYWL9nR!tvePm8rHf=qj)Z8%w)<0;h(HY-c*KBMoNf#YJ>Okm2BMomGYa0(ci&G*z z_D^r@>ZdU~k%iX#;cJP5_*m=e+zoV{CN|-Asg45AiUd#zrVb6)I z+PKFzZD{R08Hqe3Dawh2kdb<%yEzI?^e12AK}LKq&uQZrvL?bIW2ye6 zzqom>w2*RTPuuw+$8a{y#U?jv?RyIWa<*3J*13OYk3g z7Bz23%OCAL_KT|zaWQ6Y9XS2`P8#i?zefe#Ep*zV`%ei+>fR8L+!Wqik=a&Cdqt54rFSX3P@*-I*~9xD_Gmx zej=qA;>}qmRmg;_@ExxmuF8aH!G-rJ`>Bdz%Dc9|PkIYn6#;?#Eyw(-2#FjW+t>%= z6v2JPb<~1I_zR9yFrMRqo!nqJ)AYs0K<*Q6{&E_j&cha z!8%+%(8JQCftdz0GRYoM!+6PcnIu<@g|DKPAa3v?iyl|FcKl3@z1uQr;KGqt^_;A; z&gS-HjN4+4b<>(S@~}cAU)3%BgJ20kp!P27eYMtBuCqEy%zDDiH4&|^bK(aI-niMn zs`S_meY)Fk5=~UV0Jf{j;1A+yR!36<9utK;aySx74(5N91sVayXU+kP7HsMA_O3*#1qZODLbkq`aFzNK~K zIaV!ol2-o!+gW1|y{{wC_tMM}A9xaX2EtfcY0}Ei5MY23Y#*qm*0IzZ8VxOxl(I4|GRbDz zU#bDxM-3C^9I8qXaPeo5Nj&)z%!J5}B{9kh>19aviwd%pOo)5rj$0SGtWjtgXT?@= z>c?j9<5d}Z#vF4`i;p<^p77ek8a$D~8eiQc(S~5Fr^co-w)}RAu=&WFk~}jcNu4OAUm!ZJt4$9brrUcI+wrjnf_NJv7E6a zn7N(LX#FE3eI+3C3W$Sm^%k{DOl|G>U8#Fq-OoF-p@;%-AuGCR@2ECi0_r((`Rz+(quDtOth93G3*j{;}%q7klcVP z4m?!TQOSoJ5>eA$?tx`Pb2b~^!;vaj-(FQ!NWW|K14$lyO0igm#EyKHAnFMU2H&== z=|39GU6(1WTQ9rh3!?}92!oC+dUuo58qTljk!L}MqZKeBhI^&GVUYdR zo6TxtritDsVDBkhMYE>K1N8@~QDELivc4R={{Y%Jxp|MBG&3M92h!r7YYXa0Z*cS5 zTb+1gX>$I~#(_`QPdt&a0szc((3VmIelA?;?6PSwcK-m|IJuF_0ASIZE-`4v@Oelk zZP&km@TKohS92dCHq7X*B{f3xnSko7kV)~Ji$gEt&EOIGMKIH_p{RK>2Ye_Y; zDc$GzSImkcWkr@S2I8J6r|`CwLNbON>X7BZ20&XXLRlDt!&WBa(wjy(aXS}tOo;N` zh8J(QzB!p;K+AoXQ*AgJy#AIs-IE8m_b$zyiGdOA-L^@>{X$+zXN`5ypPt|>ZNja- zLOZ|h49U6?#gJyg$54p@M22Mc>8dL$6K-O+&(OYO%bwjPD&<4n5wWtPMKFnME(y@8 z-t1V5ZX7GGwx=>X9jm(bj6TcUWy6kW=i6w5Fn*h`3a+em2YMdSt&2J;BKT#v+Mk0BCXXMW(yV|J(_v)x@%$Q9)M&UXV|Vl* z4~0}FM}w#mNeohv?GAQs9z^L`Qj!M&mRzYNSqI1!SyXuL1NhJ{6CV=}X(V2z`EO<{ z&MkYLgXLd^1DZz+5-3ZC)W}HCbFd%dQB8(GO_Vx|TyElg_2E__ZyIzMW6l~t2~F;# zaL{wLs5tAF+_9m7yN7YcN!*i@0~Ic}0IGyt!v1u{)@eU@KqWB-f=68$Gt5c8rv|$pDj_q1XdsdjvY2In=Ok$L=^YZB&tDYkQIqYzHqZR4|4zjEN*JNs$@JjJsI0sqMM@8(QzrMk5!r_r#JRjS*IC zSgDYf{{ZFGw=F!pD;_IRnta~>03t|5poPtZQEEvwWQpa|?F*d-GK`4JI}@@X-zwVL z)_Q6)=4SSoRG)18&%{6}B<6&1vi9_K90jQt}FV(+D{ zc@lY6r5DD>&4IVb@kSTrcH$3^;Zo6e5xlD-WVEt!RpEYma;T;*H06B1xlj625{c^jf~apZ3-}W0Z-4T$a>agX4O>!<859T#P;QiPR_u zbGSS$iXZk+%*Ed3joZW0s?G9R~|* z@U<15KH=R2n`XzdANz}?yo#Er+ZIext8G#W=){X_;3^Ey+@Mw{PT2;V4u+zw_0a)y z%Z(Qfj%1N;4OCc~3NZ(jL7GW(gMk%!!&y>XsU_Vgu<#s5 z+gA;01xPmd&`?=PBjG^B6EPcnE&<_F5DudP7+84GS+cO+c-a)~U(4WpYQne~-LEbn zS~G3D_};s7)Mp67%9j=TQYiqPNY~+7>PnH^hcX@NUc+B%_}42Mbt7o+bs+j0z`IVM zYC&Hb1-OPzTf8ZvlVXPhODggjRnd{L${UL_9Sz4Sx+V;+gWdOS{+}ASI}rCQc}113 z!^)daYr0>~!mff`9B1PS+sspFBFBOt1ZWoAElm#JP#3BT8Uob> zG1E$-gLU}OUZAP90ddZPZagR|%8kTcf^`Di1q5EG2-frgqAE=U5GW#oC<+fNmpl_; zvj~di!~i3Zx#SI4GT*i6hIK^bBJ+PgyOp!{5jTV=uDET#IjEz3m%F|VS8}3xcqBVk~Vg!UoK^6W9wM#jX)j*ma#j49yN}p zcvyBmaLAe72C|jfP@p$e@m9W?)^97Rbw*`@apH(LKIA4l+h3R5yN^97A|?oL7>{=4 zS$8llLI&ZqHNNp`ma5R>;|7*iiOi9aX-=BkO}4fDDri&p9P~1#Os66uqiM$>632?L zvjBWNYg3&q)Bm4YcyBybm7mAK3+7>ZeRs*e}z4vfxC88AE}XzGDJPh zjb=g5cd)k#XtowdXvmJnCChnOgpOSlp9Q{z_||fXe%Tq8D6#UwXMhn4G-fM{*%$&O zjjv&*?@H9@WuF!}GD>%0E)~FC$OClb{1a|Nz!7qTUUgvG+7|BPCc#VA6#FWB&kBSm|4pF_SkpG8}Zrn84yDV6PU} zLvwvL*m&CFx6DF5qIN=s2#vrlgq>}`rS-jTa%m|c4kd|~aNxg=-(`(l8Y7V=D6Iry za@I5H7y|szTK=}I*sWqYpglp5vF>26D-FP{^aA7D0j$=ssdMIerfB7SdCKgO@s8MD z-y>}EwTP_Zl@m*kjUj|T)yfbwiq|}KU=J@U6=-{gbPVv%mKe>XZUz10McjvhKZp@h z!JB;Y#v_Xyv#XSrR7*NIH_=9-)u{x_ju~Dz$P*TDBzZRlC6>!`#TgCw+OFY@vv$Dw z5=6Oh%p#AdBpZU28W3y=SJUI;TD^EoXzv-h(r4gD(rCLRCCY@9 zc4-ZqM{-uy)QZ+7>#y8q`YZ^$cWlOH?a{G=GIeg0%RTNx{vp4Q4Mzi0HlxiX?Ur8x zd|7funLB(DF^!{_<|OW4)Fg5`+PZqleV-8kydlm8Ed|a6nHcPCR zie!C7&}c8^TH+PY-sKp8LXW|FfIc<0R@{!mb8cIENjd}IYL2gAm42!Iqyn2Cpa>es zK+zw7Hu0`MM^0UQT)Y&8oMxv1`Z*szi3l@2!Y365S z10QfDM|+?_f0jagQHx zZ>G!#Vq=v6FZ7%41Rg+rm4&Sb5<$A@BNg^Y$i*yI^MlWwWl!lM6_MGuJ(qj6?pM(9 z6b_NxhK;5V8w)Zzf=8GvHlK*8D9!YWrXh@v5;4Q z*4#DH{3wOwV!rzpdd@Y3=;^HK-;f|Waks89gdAnHI zlyS1_Ra~CnJ90}ebjpnPDZmdKJe>#;xCMq8F47?Q*5{GI%I?z7A(CbbAtaT7LZaM$ zA3EtdboZFW*Jph#9B1YuZtEU8*GzJ>4VV2ONgD1y$65hQXc&Cf7iQC6559)AVK`iE zkN*I05$z!8d`FFQ>Unng-}NpS(S-4pyDzzX_VFMeLr#;Q*I)N$Ot~WrM#z}IO1%tV z!K4cq4Y|daVYd%T&(HOaxyP9n(2>Ty4lvEuWpTg_r1{iUw;{&}K@&#TQ^=!n6kSYm zOByV($O9u^ZLWMTQpJ_4w`GX?o;G75ut}Ariq;n=jfJ$Vbv!lA*U|E%lQhW$5p?qr zgQ>^}V%l{PzQ-~seoeNxNS9)``FR_LEcm$?xi$pEip>DFmPtak-F4f;&Xpkl0F=X) zc<>W7X3lWN6bE2$CMq;KaB7)qhscGDYoq2p;dMlo>$LlUWw*+Is-Ub`7~fXY7~_*6 z6W=4`G}!@DLAEof2KM9YTBvNYsb>*LMT+$lG)HMV{-)!8T8rM?D=O3+mAKx;*NC*M z;dD15nlg6|1PIf}FvZ^TN&&t;D_)=Y8Rq^0X+0-UzUnWLVo0X9&q>?$| zZBEtXtEFr8mYj)J2uYqzvF+XO0F`e5cprwf7BNYl*)e0|wn)U1RcDeOk$Ig)nr~JM z=X;vEmO0sdzID#WB7CVaRWFTAr5HPY^Ym19i= zQ@cj48fjwJWU4ks0pMK7QONQa6;&l^ro0j9v^A$fU{!t<*-?0$P;zSo_$giZyhwI zm|t+i?VYMf@@DO-aN-~)UO7Ewax4|qn(|-N`chRt9vn=l*kj2&7>{Dm#{xqx`(2Vk zV_Ske8k>QNv18#|54MvASux2Bc;Ouw4GXNS1&HT+Q))BAh;XKd>9FR;!BEMU4qG6E zG4}~YY%2F0``@lTP zGj6bLGzPDf$3MLO>BPXrY@B0_kt>iE^OEGAKEwk-;#*q0#j(uE?tQ^=u(BkN=%>xx zMm98UDUuML*_{g#%ni2R&y8yEbBvOH?#YW7WA^N2#CV*XiKA7Cn|1H)ecM>^t3GA1 zueW~s$O2Z*WN6aCVss*Bzk|jVZ|2o62ZwS$+~2omL_b*jn2VwIfH|(aR>HBBF}!z< z*Dl@iV?0~7tHj+#EOgtj4i@4`wKXx4Z`<9H9Jx2)Ltr|QsI+millY?tW0gONg)Jj+ z-6TvjWH#C(;eRV}(z9z=hG{X=sLp~lAzO28ARRAZ#)+<9cgF3x@K1^V04BKcx`631 zStC}tAl^$dYv97H`gvbp4=8_T_u$(UWBn9l+c6}K7GOyHUhj8??FD*0f$lTaW56u|Mgo zSUMs}8rF;>fAN+U^$feX`cxF24zzK&V+)21H6gZxsM>Y0=TimbgM1P~pZJ1MLo`4w zt~jaTf3~QOl%p0rZ>l7vlue*=2Alu`UrLlP!ySM&xX@jRupG!WKzb@l*+QKgO9Ou{ zbO~PF+SczLE;uCI*#NoopqS#sM-I4=2Di2PW8-5@MdfkrP>N3z>|H(BD_uR8`KJz zX$y(nW06@V6RKzws8F`>16_RSi=$>%Ooyp2)3W@w0^c9aS;3n#w|BGu0Fu(A=^ey) z(UJ*Y8*@HYyo{`~mW4MKNz`*z-+uvEv8E2;o!!D+ln78X>$gZF2VHsFkTtpb zm&-3~X{X6hsk&COhtMi7=GV%#)kl9VJ01-EStSk#u!&e3zvl|PE0ngi;mOU98!ka8 z*s;5N*#QK6d79}iMqTdP*MT00jd;2>e=62yg!YAZFZ+9k>&F3JS=b@!%ztMxlVP;>X8MRaI#FR1BM^ z63ZtrSb={lTS|dh%g`M#1ZWoQP+h$*NHD{b-SPIY#}O>QEX{Uf<+O0UZz5|`b&flX zoZ}RrTq=7u^VjoMRf`?_njm;)88ZglcNMnw+5Ya4{MfvsVEC#J~ae_r``4nDbdPxU&H4?SCD{gEGh*V z2?TH)yy}H)EG>OJIMqUB!hxG{Ro!b7ZZ&jde#v4SHHGiAbM(DmV-fUO(a3sI5T{bN zw;oiM7-lS4y>;s!(+Avd#*}tLqOX7)EzY^A6K6uA?7%4V=T`y_bS?-4F+aktDqt`= zl(F1(Ji#Nvt0|FEDBGnW-+PTLN83-)XnTz6%C1$9;y2UnrHJcd&Lu!@J_huG_6Ln? zSt;Vza_D?&=+7?oB>oY{U-7Cat{CaBr3A3#MFlns-h#46yju42pv*BD8*=M@BKH1N z4pBcaE$cyNTk)W;MNb223k4&c=p-L118|@y4GjfKgQch-C=?PAEy94>C?J7B78C{O zAc_d83J4@o6}Y_sT7n4_6}Z0|4=s^4L~gENR#WUDn^SYkg=!7>xY9-z7etCVF8wgp zH@^{XItu624{SUHQ@&M40FY$4Q*&>_S=uu!P>8^eP3f)5kVc+1)K<2E&?txk$4$Bo zek9XH4EWJFPz3D64TJ&hK0N6qMIJ13mR)9#r+cg+2OD^;g)~c~I|DA^AvX*x0rjM! zk|)$av7?x!jfn+~(Sa6i#2fl)N%}F#+ub4^M@fCwSmSa+vHVOe!%FEo493it86G@! zNgib}p-ZC?avNy|!r*IC$$W;hM2Z~9Vnk3tus7ML94jBAR2c?%k=!aYgNoR&vEnY? zwVM}OP978$2&FU}9OpHIbQaJ2RV z85R;ZPb?4{9G<9TkHDxLEy}}MPa?48;>6D)E~DdC^F|2}2S!IR z?)Nl|#2cPI;acV)ohb7CxfvZaECaeQEJ4%6Y3FLYipd5X3o}Iwmn4mh4T&I;yK?&T zt!O_-9F>P8B&x#2?{Y=2a&EkM1M#cK+OcEhV#7N^>pQ^kJWwH65>%JwBw0aWeaJ6Z z{HjdGA&deS6Re9AvP4K1w&S-_4-0Er&nU?t4$RCE0oKiBV!xOVFB;sTA4!uY-K=B` z#9c<`1vs6GZ)(=2D)`u&5!t^|L3;)PZ@}&vl{IA#?YJ4a4&O@?WJ?kV_rTw zYgy~4vO11Co(yR`m=8NaaPmwyD=Upv)Q#If<}5{X*xhC8qNB)grN*7T@rY4`YAwUx z#ee8kMxNgeZ*s;5vqLvr6ZKg^g4wO@RxE69#=@oWx_)eZY{@%z1{-8%;l>2nN~jAx z#^XNlRlUOC)9{r40Qj}a!ir4yg9{o|3NuNOrISNul0+#L_X~~R8k&wWzia9yBugBI z!DMpNZIpsR4$HFE;tt=9Z!hZWR2{Z_4B2LfVqzByu4a+R82DDeRGyj^Odf7kkH>>2dBcu+>u)O9Nt2ffr@I?>g0=;PBaG?(>lr zY;!EptW%7XDh9#&Z5)6{`on<)jd|3c`d|EW0R6?=a(WO6#%=cWW{5J{`Y>W$J|Nn) z;-syR_H54Sg7V283{ywDepGieDZdFLj^k6#*AIz%@aaarC` z<_6weYhUzi7DN-4Zg&6g8QwzSaP*g^1HbTzjsPJ1>+b zR)-)aJ_)po3jrV~b@uO48B1%oZPvNK=n}lKh+xk>pYML3& zF6^1-1;}=h8KYHy$jZ0ru<-)N@d}!Y&GiO21epx;61K>MBx2+6$}R$uKN7XiAyZV0 zyi7MC`Y#x13EjJ>M5jxFeb-^cH?JDD(m9g;-^grku1<9G;im1e?In@H)m?6Mdk$Y^ zYEevH*O-ac?XgH9A2bhm=JuUK20r2WO1C}+mc?w1bFyO)zANoP(+JK(Z6IFkx{pg* zv!a=uw9UOg8%sn``h!b@Lx?e)tSXpUGJ*))L=S&Z$`7u!m+e~k3;^TJ`_fD?pSh$f*G#h8!-|i zt+@s}K@`O&GA{V>xq^4ag%mzC(VeA17GWm98`N_1t#e{mJ|5rQa*1y0l7NG!7Gyt& zHIKQ)_b$2yY?TC=96JbOaA_7ozqoo(F|=>mxJE(ZFJh6`Lu>=CWlxQM8b@ns1KGR1xKB4T?7WMND^62(|sb)+^#KdLq!xfegWB$~cn9*MYJ(fE!Dy^%ZQsq>5nYN#DB^ z{nBhXU`XY8HqSFl?UQb*QfP;^+_bliYtYhrm*t0=n=bvFM18WC`yAR7CRxcYffqavA= z84z1iNhd>Y6)b9W1GHHX?QP{5U4{1o*T0=JNpicAyHER9C`T$QVozs{l!*)u*H9mZ zt*+lHJ{lScNepL&(CEv;7$ipAcy4R@)+m2)#(CI0^EwC#=srARIfHm3 zGPHm&()+z?N);P-bZZ;=UEI!(ptde$Ixbr@s<}BF)%&=s}K_u!mfwwZ>mY`F@`!9`;oXs=k zqON2IruZP4Rml513o;2cJU9x?Sl%)*v87xW%8MRiH+?a6Rt$ND z0YiEoHJhqdUS1|5f8@OD9HfoNB`_t2&moPL%1?(1u@;U-`dFl!Isk|Jd5t4PB?EwA zA!Eaiw81%9W;haDqL{EV1%oA6%8bp!V??89K4zF|(_thzFO&)-OjVq)nN%|kyUzFN zU;Uo6(1HH|CK2SropZ?{M3Kjg?-LImoRF{ENewA6yU>CxS@ZGJ++;E2MiOZa$?5G9 zvfAg0nq)Q5?by;JQ{!dyexD(Bg^fgDF%~RF6Q4F z1kdz61J+cTTsewfv{8Yf{?iv?FU*Ru9BBJg86&6MyP=G1WR@A`#gifLV!KJ*v|E{L z`c}ndnhx1C?~RKmZop9-SrDG2Oza6%kjk;P(mCyGH|D)G$1A^M;9|>!*plO9yZxcilU&-u6}J`Pi0iI2Nvj!&XcVx{PL>BWASQ z+A_+#$~~2Ld?pY+pHT{P}E_?QaVn`S%Yj#d$> z%sY*_tuK1* zF~kg+3n7@6ho;KKl|{)Ug-}m`u70(o=jX-S;EOIzfe9CmQi&?YZMnj$9;Li5dSWY; z9NA9Un0?0_Q z-O>-#IT*zv2E$nY02+{xTibTbGUvtIEnoKM^&-5{OXUQtIvVQG55?Fn4+xPJkVHw zy=9bG@bPC=zO3kd$JUdRTJZa{u|%I$jXI$N^?GEWKkDWxSi0E{a)L=VC^4rqCY!wl zX9K2(5D#z{la~W;<3)25u*n8b)Zt69kByl~@Br2JM$CoJMI9Z7C5DbhsyXoEQVl)1 zvkV)u*a;hgj#f0a4;*MAn&$T5z#0ljifyLucRVPmjxsF6HL@dk8 zTb?w~N=p!L!+@m}Z8+;{f>U82+wI|0S)xbzNxvgNsbG;*>*ecH23ZE(2)X5MbsA?@ zyL))>w}llVR#rM`!1>TzKIRwuD2qPbN#o&CD>*N%jql@H7FJ~%kB=&pHEkdQ+&o3< z3cM&A+S^ZnxWC&#mySjxDbREAsxz!vNXLDaKV2%TpOcXQlFzu1e*XZrw;~|rqI{zN z02;oc@OLQHw{qoka6M^xHN0gcfkEToIDNI8#6Tc1VnxpZR9-3Oh?Y}f&3O}35z)u) ztUwR#Jp4Wevqwq?E}^e+Rw6P=ZL^B@pg(@G)(IN~TLe~lF&si2K0CrSz1KoBS*)Df)(O$1OuB7mSQ zO#oDi3Xm$IEVKavf}~JZ$9D=04cfEWov`GKAaG)gE%8?4SoUe3C$&x0j!cYZR|IaF zD~kc+dylf7$Xx8v$r3KsMhpPsq0`;xR#a@o?fB{hIJ@}+Go7|$#D(x46`NF?%xvfo ziNchWVt}w zRCsaosiMn=mymjK;>aUn0v5R3$IDOSPiSHA_J?r{%=@873KmGcj@*CNKEf({t_hEC zmQyTgvp8;67F#jlxpwh3=SgZP&_R_LDBEXME~Q4o0OlBJpz^1+f~U7h^y3qFjJQ@u zW9@qjTH}Gfw7n}-UqumEk5djcJ6dM}ppbAX&bHWC_={FlECHlwniFKzEYTS@7$(ICXC)SQ}Sv*2^G1BoKXPoIOUk_Tz;?`*aD=3sI|8J^r~7* zD@MsIVhmT1BC-%A-T}C{A2V~fpsd(M3ZCN&lffa0gJ`xNs7358@jfD~=sd}p76vLL zipV6HHnR~CjEMcNpp7`x@uHAp!;LJ-nIgol6udCqTn71USl^gxTB^vnVs4Yn(nP2X zOjPv->w7^q7Wh@vE@-4n#H0*|MUni0cP0Q|*8Niz>>yk*y*<@^0xX?#sC4O5Cc=*x>_UPq;d1cH$ zPc94+Nr&69$&4vr0hBpAcK~j0d(zadG(F$9$BxOBi6qiU`{qdIXybFq*Z@Z1{W?~! z1gB?Y_Q{hO;_BgJP8vDjjggLo6>aui>Q$}o;6W7TVOb&V1FT||%nLMR;z(8h09NE} zZI<7)h3r7Bb=-*~el9m~!O2V>NyEvFV^R&!y zWA2f*CEKA4203Od;^9P60Ji6Evs%UKDY-It0Rm*pjg}EuG-;5rwb=V^k?%>MZO1^Y zYDlq%xvVCm$rY#VQ})$_gvpdmDJW0M zWJZm&Z|T;zZAj=%-$opR5sX)9K4*K z*ECa^vRZd=dWJF~WtZ@tld5hP(EH7GnwK2J?K2d|DI!dnKr$&Rs$20!?oE;XYkurv z`Q4`}K~n1TFSW2v?z&xfe1r|kKQfXHJ=fL07BP#Ss@=hlPBXDtWQfO-z-Z`yP^)t) zE1haP9Z6!sS+Zxx?k5@ASdB+n}=28${Lk&frrZs_^c8U}1#SzyP8PpCi{jNpjb z4z~pkhy7Nj1ZK~TpN3Z{<%?#?!sbB1sVdR$iJ(Zwu--d?*w!;tttq8Y_!#oH=OsCf@TjPe;==0DzD7JCvkXOMc$>!2-H79R4Jx5BWMasU z$sAI#Q2R2FYP<)`WA)*BMWMU5c9La{Fqq96sSmh3PNMhP&2SixKT)8oW`(rOW|Bj? z2^&m7%n z8$OAP$&78xA!cH%Jdc%9M4XP%H1UX_!;(7~zLs!;+J0?}>*Ztctov2;i0)WlwdTjg z#RZclAVTCovChb#Tp70eo-xZy*5`FSUSl8j)^zaXN@b1)gs@m94IGkLOM;45gCMxB zzW)H>iz|?=>^2`YzUu3&n46HDIS=uuuo4c0YkT}Czp2SX6rh1%z%uZ)3o&+#G-;5p zcP7rKh$EhyZ&9yTTeanMlPk64mHHmwi`SXG-6sI-m33R$wYNW7#aqc)-?j4a@&2-T z(eO;G8s)-7s8PS}Xm6p=gU^NP&h^jL%5_NPl_QW%7$hXh2n+$xfNOBfpdHP7T;Akx z`zW)^L~(T6tF>m1#FSxhLDKqI{A)J4bIN{`dn;n5_}F{maxH%jNBPv%^#1@2-Mc^N zrb!UX6UN`E1Fq$`wbVVs4LKU+*E-z4#{>x?t^{^}D}}$=Q3J^6dU1f+5^J@6qzn6-+-+e|WG@E`6B`k6 zp;0mxGB!YDk>z$i=@_;5H^#MVB+l#Bv=d7zAp|U_1aY?m?*Uyna{CCTtP`}7W)={U z6iTbth%AkAeplJLMHk?95#vnJpSX6(@?(=6Ivv2pEYXOhAYXRIQk#MEQ}C-gu*W|y zx%Ui2haIAB<&HEWcx8%cfFLI4TW%lKvs%__7XJXbrO%Yd8itY$%=l|5P5U$;7eGb4 z6pBu2_&*E0&ons?A8J#JGKa|hTO(UW++<#vI#~0mm|S3vKiksFD~{Wci1!@`@}m*n z+*AisdvF{pSw}~;<#r&6k&T6y*FT8RXo2jX`XQ-gd^$ zkKK!#2wl@ON|8y*%Hwt3{{V#31@cNo0$ruX$5#PL^rOG#47mVa{y@-ZEf)C?#=$^ zWh$PR9#jeLJmDlWX8(E>Es0dmU)zxZ!=ixtC^jj zo}I%dwqwZ5k}viridiI8xhx_{SjV6M-$n4PPF2Lp$XvX+GIFGrNZ~}de2T`* zu|iSW{{WPNYUTd`Cx>GvH@1TgLv~!AgB6IJxXkx%2#DDWAPP7DvM;4`^0O4}`0?iV zS+Sq7fDu3PV#Q{}kwHG)=w?(mXBda<_emosGqwc_wWB#KN&caA`MfKB@qKHlKkY078bOEKGBX#8_YbRtNDc30 zk9SOtTBxkfq2#Q5KKa=J+uNJCv>+ULSsZi=eBonK$o{H+>R&9*xAkoA-F?d^DjayA zTsWouIkGd9!WocVl)uUs$X0XwwX^ul-R3-2og{o*$;nvP4m4MV?7r4{M@M+&t@ij< zdE;wcbbnxzIw_`^p^`k@zx$EKuCT(VNYoaxr-kpsL07o59b99C`Dwmfn6eJ$Tr#BZ z*XP>mO5cdJfby;_6Ox#+=BQXP^5+DA!NhEqI)k-Z`+57S>a+Jg!`pILMInb0<9e7$ zh_iTvBV+pB^{#udFD&rj_a5Dk5bdX@DmZBqqahL!EF_Suvl|XWX!Nan%lgNoqIPYIIMp5_}fapMwH2dWE~PDRu?2|#;1^+ zp5Kp|8IAPtHnG2vq!=UpvyUpW=fWH*_Dl_%Xy6!&R{iQ5H)iaa3Ygs_krO~8;yj66 zYd-aHXghShyR{5FL~M{HGHe3E#NNd7wJp?!Lmq6?p;!8KU1W%hf9pZjOO-50V1F0N z1yNO&CPr?e?Op)4KuEuL7QdOG!I%4n95%ZlWnD`FeGi2PGb{H7E?jQ1KJDKmMD4$Y z?N`>UdCBtNN%pj6TOZV8%=&p(Y0EaZc6l=&x}Ty;F3{2@hiDuDJg-^np99!p{e_SoE-;}xZB=R;xVR0R`NzMeD+W3&>gNF2{PfDy9*#MqubUX;O~CmSK7_BP@T zz;6%dOc}r71i^Zxkb`?Ewa?pDP|PmX78c^GzE?WT*4=N)2&J@W7#OXq#vV)VV8Z_Z zZRiyyafWTOMj}(BWRbvle}zq4Qf~9xBuNm-xFGi;fvEJRQNZpU^RtLda70YN=rszu z@fYV?oQ`ar*E&fSS8`7Ujft@y1lLbUn(E$7K+u--@UC~2*0}rlA*L~W z#?~Zo@T~eSx_I5jEQGigx6D5ky*bt|G)d2lHS`I|uVeAQ3Yv%+QAscx%7d=nWcgKt zO0d{nN4LhPg>ZNa0Yp}1B{yE|cn=CHcZG>>$I61KFHoJjD)FFfZU8KJa`CE*v!%e} z;wTxojY9FNh%#Mn1*mP?)NH*y|T7fLa)Vn`YeJ~YMB-XIhk3wd*<8e1VhD)H2E zH58tow3a7r`1#ROuA7&f0y|MJz!k_wc!@i=@CUnMq-&xxEB`$Yj8Fl0DjkRCI7dAZS<%Y^bg~u0_4S+Jm{nw8VDoosv_QWLAumY)z*l%@oqH~ zZu6jxc;14#&=;Vo<9eXKg%LZA6fravB+(T%6aZjo0!0OFtp}NkR>wU&dA3+u=-OY% zUao6e(HD5`$sU<)Aq%=kAnjiTAI`Ju6HSA=W-(PBM8{#7q1B<_*NGXsri z+h+Mt+S|>oVr*~aQ_)*8aN?Id1Z9Y6QEn~IMN{w~)W|XAWr;F@lOUw14^^AlAlf((0Uvc(jLVF%D=ZQ`n?=j~ ztap2?MfX~@qgD<^3|UaTZzG+zkT!!sb9)^;>m5OOqj^!R%=X6{{WEz zCCEI-3-LPG=~oigW+=q0L`f2oBr4mPLDy5Iz^XN5b{^f48%r#*o#SpZ>9q*d9SFbK zQdXIVYn95hdFr_WFl8$kWosKzI&;=7 z3)yFj4P+CTawdD2_{JjCDw5n7RreKKQi~K)!p$lZ(2!Vkopom3r{(^W@TKTosC+81jDtPNsR*Fe5L2kY%?m0>fH_QQCFA%Eej<@h9hmESvnQx0P z8c1S-KH6I%L(ps(n{;rhi-wxpR^FN)T5YQ5%?Z!Vh8M`iQx~>4Va8&Xh}}TB(0QH} zeX(LPvO8pb&Us~n{{Sr+QduM}u(~pvox7#>a2B<=R4b8)?#A%W__8{>gb=BXV%u^U z0Lvoq94}ohsT=XeG`pwBg9RXr1ybnA7&0&fA~&V)YXkAD+f}C@y7!*pCP0WrnE2>o zn>KsSS|?+6jX+c&?EJdvOfiV#!xXp3&z-U%AV~<5r#o1G@XlBgLDJ3ezLj?VMUI{} zb4oXMJUJMV(+-lL3Aht%gmC6Py4%L2mKLz@mj@xSd%jcVz^F`-<)M*bm6zB-ZCo8k zu!^_LBsaF;e(o5P<@VDS93%$EgnZHql6pxYm#2RQ_*If(Ta1(UlQbqQyg2f^lf==< zG#MQ?bOz_Dh=wM&<#DHlSrZw6#ATKa(yg5ov5CYHhZAB=7#o=#hq!Xk>)}*#qJ}(_ zo#dK4W{80wRE^H(jmh_ag>KQ-h82&u$(4f+W=2JZ?D$~`4Ws$Bw3?25FXLFY+Pf6M z?eX`SWXX7PbMlRkRsgWZte{v*@9kDR?RvJ>ZaXWFH)q6(7s$lzaOKDq_p0RN5Wtoa zH~|@V9%DhyvsI@a3_Y{S^?4n`q?;cp3@H>KYq}IAO@*)RxIT4}l3d=)lPpKOWtpah zkmKbXLZc!gNhm_It1bTkrEGXsu=2s&6AnJ(4o_^@tVK#@F-(md)FTn^!plRx}?{k9-AGRq9cAcw)BkSi(XRPh?xmLs7c%EsBygozg6 zq>;CzMY!xgF!+0GD$Bw~MlaPK^7aZ%_}yawH>edVv@5$tA82x>{Z%$`;bl57^`NYB z$9;-AmIas*djZT6LHKJxZW5zJ+h3>xh}^Ky@=e4Q^t}+g%pTs-B!v~FL13kK%)lL0 zm5AH{)E+f-YM0w+&r&5o8)!jk1-LtEwmk1|T7v=wjon%LuP`SWV~j-QTIFpqaE)&R z#;gd##`?w*XZFZeWeo;Xhbc3-18ap-w1PbSD%y^YJW&Tz0C>b;F2f@e4t)p&slM~M<%+_V-oF;12VLy6W1-gySuAMlh>qq3+sJg72B z9H54L76I4^9hK#ch|_)U8ZtjI8VaVOd2^wQWRWytebI$^Vk;(}_Q7)|z(9K6S9lSan|pSd2-k|84O2=zt2yz(z>f;$Ncxi_I4582vkRjSHnlWp zUfGw45yg+N#nz4WgWyBp^D~AnBaYzTxj5{IgOO) ze}xM3a_3_iIyn>lOcn_ojDx5^Km3v+u=v+ZYns>F@m@UD$?a_@#VxV!N)4m&77Rmt z29=xm)N1df&5F;DkXI8d7M)C;R4*3|ftT9eYHL3`PNuxe;1tGbSdf5)8VeRaeiiB0 zJH{&In3)@3&;kL_@~VY7R{^XR;>rgLi)tv6Ho=dO#Kh^jV;5F^HfyH3dR8w^+;hLJ zC%3NhVjG$?4F9+$$5OOT;QEapaX_ONfosYTn)2i)wfptSIk!(hQa+413vC z%ON87Wd!Me>8m7XrU_(rk)&=ri6@AzvB#^l++2LDhhvQtvOH_J^pvp!#O>whS-nM& z+(9ha3lvBiOP^^wPMV*XkFuq7=C-B`=_IEHcJIo)p@_vE|B*vKpum!kzd}@w=?oP**E)wQqtDLMjq*RPaB(gAT5hBRVe{UVN zzF5~g_U~}+3LXi>Z8XuWv2|W(y}o?hDCUPEEST0_oN-GE zG|3{Hm`Rb9T?ym6USg3gb94JVF|h(P#fJ8m8foEM%uV`nNSmCckI2roeTcR;H*i^c zI6X__rIHnt1&FuG{{X16SX^*#wxzL1Oq|D)A$yJr$k8wB=io;ilB}Hfz1acRQU&W- z{u5dIR!d=IOqi0)Fv6Q2j!? zVqRKbceoMxms)7YFzz_)^T8hFE45>cM&WLBEhLPN$H-h!Wn}t(Toe6hHPADvm^e&n*~Nm4Z*K{ps)1`>mWu~ckVsT zII(gv^)CEDccdv!M z%FfD-84ud>yJR^%<|rl4ORq&{c;+Vd>C3#khSKAA+A9~U{Ax{c{{V1cVPS2X11>+K z$YlDC-5i1BiIf6CxozV7>$f$FJi8eE{{X(v-6HMSz2YQ>WgQlH)ENDvYBt#8UB}Ae zv((j<$nQPp_cZwV7}?W4%y$swqcSeyPL_-+Hq+y3am-uOk0kD8M^*|-?JE#(XyI*m z{404Gwzgp}bunaP;PnAeI?AoIu{;z5s}tZWH;z|bKEd02$8^Yrch4Lu#7mi`$klkP zPIxilWi_6%6RPyGc5dm9gFZ$kV`cq3rQ^ep#gOtwga=lY;{{)j3)_IXt~o1K*spHQ z{ne3?BDA>pktzmfj7c*97V5D@ysI%5;6K8yChzf&cIgb}V>7XP>6!~$Z8601C zQ)Prnz+YuwRcp%1#8Hj)U}SX_x>+p_HeNQ=7ho9{2LV97pj4e%__v*Ak3aU@!1Si= z8;21l6XPF)Zzlef>v1s7?=nN$nBc<`z>%;SSeefVMsNQBXL1|kdYu0GTqm{Vc7EsE zBZcMeqF7K2gAtX%HrC+-pcnEUb*tk3Czgx|`xi!2+xwPUst|H=8YGcHJfxULr{TV( zzxcj?%X2GZsp@wK#6#s~#FZ66@N|`U^R9OmYcpcy%Apf80&II0MQI*8o<)^}#IKg> zOj}Kd54*w;E+#HTzIieFaU$P{Rc7~}0>DQY(q@qz*U zks(#T#ZBt?!KMW6Z+DYE8y~?K1b^-#^$KoGc(cSJmm(l|hIY8Q=eFZ_rCnznv)Dgv z$&e(_C`qRm(#DNW?i6aN*+Aa6eYHIuCSHI!sRBBg=!MPi)sT^xa z^Z3wai?SqnYmf^_s&tLMTlo2!nlk?4?h#^HW=rHf$`Qd& zuZ?Snw!G9QBlrbCRAg0iK z2s$51ied(}h_{Fpq)Q}qEOuhU@~Y`? zjdPt03D~kR$Y_9VbPa!Rm>|}#P<4z_v>-a@2jbTD^R9R+4n{0-t<&4bOOQXEBpb2w zV4W?zc`u0ay-^c&2BckiFO@|t^RbuO_W^j{nDX$dVVK#yzbS9j-D6_9-u{(Qa)_XW z0Z^YEFXK@a8n_6%fbsq`QwtR&lf!`&Ll$-@cYT^(sIl6>as!Fs_Rv@rJos>`fVx{y zLXK1vmA4)q&^<*;rHGLGO^G~z%AiZeyNIy>Xr$3~2NbFHo?K~$v&j>yZPcGG8v4{# zKw@kGK2;SBJdqnR8+h8{fEn1%H6HEr+etmPRcn;Ly%Af8q{ zeicajVk<%; zLK(|D#=C)5R<-Uu!*DhgJQ`lyp&&1xC7gbk>N&djaji`M012&Fxn1%Ix^QO41PgI@ zvLL@JsjS%-*zA7u`-sTcjIc{+@3KN=S6>~)n0v3p(<13>-sf%UH))3*ZhupzE~P;O zO90lVtp5NemyTtfpC=*i2-=Jg7j45;V5&b3qT;1xrU=@2?Hdz@#_SnJ(|s;(E=WAV ztW{aDq>VtBIAEslaLiC@0k*z$MH@GuuJ~o3vD-4ssC6d9UgUans|G0hdx@S{muyZn z4$Jcqd+@p~Z(}B627@YOkO3@fZklMNo8}~Q(xtIlZ0$oFtxX+*7o7XrYUVMECBSxvr6c)yZcr$r+{t6bof@VKL||71PF1ON8Vu! zzTLnO#ar;!NQtD(!*wSE>T;Qm%d=ZvBqHwI+Hw`Btg>h3!5cI=84VBx#yZCv?P7J_ z>=o^PXIj^U)7uZXtWPdmtO8rJm7`Y^14v%(od5a-;S}myh~%aJGnhO_#1drV_(5CME?M|qQT9EOx)QVjFjIaz!lSi2{y9r zRwT9b;yfue8qR0!{4CY&y`vfOa-_1dV`RQO4CI?BlXxt{hP0CZ07kjHZ*k3x_ZZ=Z zJdAjZE!rnyXjP6!=OJ$l8BCwP%LE zPt5N)wk_P$}PGVB)4#!?CA}J}teirR{yxt=28u;mM6n{{Xl} zw+|;dd0lGBY+RGyyr-pz1Sed+2O@D?3`pG4MZZ;$;0JVD~eVI{ute2qh<-z+H5= zBU;qPa`-lhFro4?nIy)c`uw0F$mPSzO#C~Q?q)S0)eY6NOFFh0k1 zP{n*dg;4l<5HQqHARoZXx){qgL`2m&*-aR)mJ}Cl5w$QAM%e43q+SL&pa>pIAS&)x&2*$#j zj)a1DExFp_ps&=UWPLmfE*4}U?E(@^v4RfhrP|kCdwKBTRw2JnB*sZrX(oMyB%(<% z#m56>EH?wj!roNSsPQtwNhVN<_YfcGJ+IpzWVg(eGcPq8h=JU$Bo?aA0q@v$=b^Uj@>quRm*4tl?bN%OKE;p zyL5DA$AM;&VpAVBG;JnKb1)ljI&BuwsPiOxRzp)FSq3|OC}P0Irg@5PAluvrQJK6s zdDIIcLnOG+N0Et@FtnMGh?FZ2mit(*!=J4nz5(tL;ute0gD!ZRWR8z%0JpbudsH>K zHyX5Wib)8HLI84Zu32sX&>wBZWGWnFWtno~f>QDcL~31;ZKm~E0`$*`O4X?3_kY`1 z(nQ&t-y0$_^314`<;3^kSsZRt=nZOAu3F&bKW&p6K3AIpR1c5bA>A%AGB>qcZB~qH zVj9(|vbJ`K@}SE{Mu#b(Re__9@^vEcfdv|(SSK^tTR znZ3LFZCPa^JfNi}5t44!19{pN!~X!KfUMsh3_dvXMmSkABasQz7#N##H|rZ8iKvFe zQV>=!``w0&M!p1+NAaSevK>P=LBb{apzb7sb=rxS&}wL z^^PE5n*tUKDFWn3?8>WaYtECshGlL2!-474KI4f z9sd9p#|ORU#Xd1J#}S@Ti-s}Esz(y*sP{KLZfmDMt@kE5GP9)WS+{^jg~sB%2qjI0 z#+R+hy(0L|QC#c6$+_UZyOnvYJiWiO#3jvhiHI-sjH>0!e5$a455L26wzZ$tn)8`m?>`?Q(<>t_GOitR zWGtwPMb%C@P^ROFx1g>1M!k)jxPJ7GHI?y<(aM36bcJL?xMi zjgYddA7<`YizN7S!xY>D=Cqj(%X|Cf8#ddJ3Vmtfp4D7$`CLdsWzMn5A!Z?RLlbjw z14DX#aNBoDqOI-jCWzT8O&AOlaq{;MJ$VXLPzanI z2ByVW_;}D%Byl#?P(b-?Hv#??FJKl!ksR#43U3 z&+MS`J;%2keX`05#McDq2d%kRUV507==&dVM(xq>UX()Wk{$#O7OZtKT`99M;s^+1 zxY!@&Z&OngZsULm0(E9QKp>HC8fxLGmyZ7cEP#`z{*==fu~oi+8fk*%g~+hw<4sHq zNFEmDO&t90&x70$^-y&{J6*M4PddEyhCIB#v^&xp!12u<@0;a5y6Ih~(VS=Q9fP^! z$JTgQLZa^bl>LBfPkDSRRu_De8=}TR3?Kzqhq;RQpA%W@h1ajgn;$AAmOZBYuXFLP zL5~FO@|~98d?}-oKWNBZ@>{DY1)6qp8~q>-RPd|f<7YzYDz%G`bUL=9n7s#DCSafg za(J<-i7vtP`Hwr%3doGP48rA4;r{>{imIw`RSRxB=oLAXxE(Oya2^#DsHIq>XDPM( zZb$>f3XnEgOs2uxiGzN-%NI~BbFppcQ0-& zt?$54(w-!805$`UjYZO)CK><;@wE+BNM%wVXetH8uSL?%=4&t@3L31jF-u2n+;zPI z(Et{8yHyo1ZzXNVLg$b*bShrek9CR^zUwJFtZ(CUdcMhwIX#VfyA%*tMz|OCzdF?J zCNm$~8Jn%v_TNpXL-4&{`a>Ep@Url7H%i9DTX@upmg?hPM{$xl6-eHsaq+3@EHfcz z4A&k6+Lj|!dElL(hEdM;se@E`IIMMHeq)tG8n#5MyLbc4=|dTtD$VV=BZascX^nAa z&wEQ70d7L7V@hP9=WF=U4Os!;YKb8jS%vRa81nECuIQ{AmCdNGYhrga1Mj!zo;->yu8nSQdGOYc<@?(=GVz2$OsdcfxF~YTQJ0^0ntWF)bdtB+Z z=Jq2^I96m-sgOp8=Vcz^+MkJ{2?p`FMnSc=iycoRepG^q7!bTo#Okr}0k~aw@t|Ad zm$EtqWjALa`!v@;L8~c3;~cnlNwxr3fiAY%G_g_*iPVEq+#`0`qJkrj4d6uE6u<;$ zQ>M~K&*W`c)pN!(Lo8^n%^BPrOsY0s;S$5wb)mv9Kv2xQsTo=XM;ZB4=h})BrK|fQlVK z96hInL8fGh3YQ&YZMzS(Y`odLZ>XuFI^o%23Wc;gKpWVBYlpD+Rf7&Pbg_@VXyuwl zUCuQhme#$+TSliyTG;X_+P>Y&Ma}r}7b5<31%WY2=*h87l?q&uv|9T|5i~Y541|;*XNn)=3vj-=)6x%Pa$?*Z$0jxtc{|!(A%Nrk8>Hd%0!G*)nzF?rhAnWn`;I8>!J62L)ep+WOk` z@M)j^A2fKwC%EL}U`fw%^3I2f~xAFzgT7A_=91^Dw1ds7^HNDv1%jz?K0>Hu+ge zt9ypiqy3>0ODkk7IddwiVqn2DAz^#kNf|}`zCyEpkz-@GZ0-3N@K1$_7Hr$(bCVQ- zR4}#GkV=IV0yf^>l?&yYEB*trK#$t69$Sd+I|Pts0=Qx zxU8tCEpM9Q+*g|s{WStUqBNN|#O&mCA`DH);8-7*aOS*eiisP#{X|WN2*|}MOyy@( zbS?N-s6ZCt4Qey1ym2FAwo5Wg3X)=xgE?#aSUR1%hp)n-wWPZBcSuX#`hWoQAn>Rb zUmgS0mQm7{O`rq_#IUxy zbs^QaADZZ-5#}f#8IoC_9!TMqEeVPy+z7s#m4X!_+(iOs?Qlq-vP_u<=-Cmmh?OUq zQ@25((^^U|4lH=6AdX3<979gb?dC4W?x2K;qbmi;8@iE+S>81~`f?S}j#f2A1|9^N zMtI^YIyUJgXCM~hOE7P79tW4D1CUK5!|BLmlIB?ig|>@(e8RVnDv)OG-LC>z%SnyD zKx8RAyGpO%kSRXj`qH(yjBVI6;mKUAe&Z~d(5k$6Gs?y$9FpYNrn+ty@vH2unGj^| z5zCBTGC>pKNYYIaZAdHaaq71foHU$vh7^=ZEWj&mRb=U~7y0*lw|}ecr4GB0Bxai@ z-*`k@B^!CR<=d$HY78C6_Vyof&gzb)K1`(AXhdZ~j%Gh=wfx1!Zgw)`e&6m9zSEnD zAdQILdfwB+l3M;(t8A+}vA$l--hg!LVRTpJ$Z;qZ40I|(Sn%g>TFyqj>VMCkSHypmqN-7{A;%CW_Yhb7jpjqmB5LS1kScHgBr@Qx*K&FJ=z=V zT)!H=U6#a}P!35l6CU1@DxyX>dkYKMw9wkKX{E`Ym|ZxIQa~657(fCq&6@t@^r&LF zUClAzUX)^diHHZoZ#N)m=~70oEfdD#NZ)=?>He%I9pjI6#frK&&9~1=)MFVW$HsiL z>E{Uhi!iymw2}^MBx2G30Jv2ToTQl}7^_B0T~(8)2~p-FV}GV0Rybmmw7`+8OCzu&(yAEEc{cSNPS3R#GiG3; z@iPV|;YB@0SW=8jl;9CIgJY%H$W!-G6_K-+Kp{v7QPeRRBuPh_g#~T#sxFyiBF#Gl z4`A{(?WfAkxO!?TN+~8W&P18nnlyWZGPsdJ7CkqQq{-`ZT9jsZFuzY^?~l@Afc-|E z`(IgvyRU63XwTkzG`T&#MZ?KyW)>;d*hITnGXA27%Cgwlin5A9*d&*?g-PJW6YP>n zVT6Xm?3h&zO zrsdi>j%P~0S^Xt?k?go=7{IM)?iCP|%n*KGJ69^Ivy+vP8x?~dD1(`vQD(mqLtF$O zZCplpJH8ms!a%e1@`)JIIU6KZ;`>?mgg=C^^rj7wtcj7E8z8zhmwlKte=?S4B(=fd zECmQoT=`hojr4IwxiSMDC=GX8*ck$!Z?^iGsU^OXjXYcl1p8Z z@uklT*8O!F`&NI~;{8T66MZr^?fHV{L9NVE7Zx`bI@nfkIBTMvE17nMETeRHQZ)Xs zc~sGLeWbC4qI-L8K_qyMgn@dgh{;ryI#Z`n7=jd*V{xcFK^CI2<@WcJW2Qv%1z^V< zuvKMHeUY+-G3(5m(?$#oT=;V2S=JbE*oRnW$ohhkww8>Q+zd?zayK`gSe zhTIBCih)riPs9S{MuIewVLPW zc24o!9&E3qEtMy|^32h?6t##|Py;vmYpm@oW6bUy<{zfo!YE*jW2QdaMxxrItb^Rf z*Cf(OO|e{Tkl6#cM=IhpE527%2(2xwvBek!ZX=(@t>tBJo4<*&q3&N*CO%#?2d0dR zDKfCy$8Z5w;==8(l}XKou}ibHYZ9v0i+Sb#ZUu{fxe`T`zLn$>Tn$fA%Ek|+{HuJ}S6(jNg9IHI;z!1B zenVycv&#IWc09o5MN88%HzUaw*9J-S(V|_cpwpeL>!nRq8Yr`(KU;{it8fp~nAjd0 zmxXKErZWEk`0s59qaHkrL%QmaO37>SxNYh73LaH_Jkb*-6wBNpYusc=6pg%8x(gjg z<*eAUxc$qx!jr+i6v548`R9jGW9?Yo?0^G(MOn*ov3IWQ1_UdWl4k{r^a$0Nbhh*( zXuh?scrAr?hwd4XMzFf!M++GqTzrSQQODR>f%wy@iOkn&pZ6X{3CQiavPkR~qXgn5 z()zJ>QGGdm^@)X!o)cz&#^a}PQZtlVd+=j(!rC^L;Zv+-q)8-2gjyCF>;M7h>rq(F zIf=K36|Q}jdmYD);%q23Vats8?;OyCoL^I@^;Yl|WlI)yg&?}f#$O%^e(n?s4kWl{ z(S9Q5%A%D%CMH4^e|DBS3!k={5&r-i2!&#WHX>>Qn<%%fG*EWTBG;Z7C-N>z+rvY` zu7v00{@jLMnF)_2fO4z0z;FW8%SSRv76`*(WUfb0mfGUPdRv8A6rS1Mvt`JVDJDov zMA)_1vtRJ?t#!sDy9)P-O357RLUM1!d0M%sdHeiCi6Jh>fKm#5qL_>=-7^w(h(cw_ z8XlW~JbnVKiheil!pk&yXsIk_!Zo`K4-zW+)M}5p9Ly(ZwT)yEAYcKJN-_qdd9Jp$sy-a;W#Py|;c_bE}aa%d)(ZcIewG zTf2@6Z?Jia;nPs*6ZJjFHlX%{{3<~J5_j>_Qfi6?-lx}}@u0dn3t`KFppx>B=Ro+T zMjq}yRZ()0ka=E#OJH`6T+Kkhqtx=Ng1cf0M-%)i4Dv4v8 zK9k$qB_Po4)*?#Eq~!m6_+b{1*F?<0`+}EAu8zb$V!U7p&QU{K@R&9#vBfj5ov8am!&eT+y4=Nzu*3?iyWxl#l zOKsu}6-&@Yv_WHP2)(Ex+~_dCxQ&RiKnO>=^vEl(6UMpQbU?_EA&4u3Vm9k*e@Uhy zt2>0@xbPdt+iTD*@(;?(qv{xPw>xvH2Hu0Jwq(q*8NS23;}TKyb=sjJ;>Khrq=jY zZFHQiJP6}*xhLcUaRCLiveeYPur@r=i9Vwl-5phap;(kv9CRL4y>q;w@*~G(n;Idw zT_jf1bYv0ClYeOA=T|iq6LmARR}CT_iM94A7Hi*;)`+_i5{Ti5NaU&|j}pPP2G+HQ zjUdV+oQRq{wpU|(fJxfm9w@pRy9Uh3GnlloxKuieE_Y2c^Dx?i=pxiI@ax@W>G;HDKi4sJ! zeKbt#87EsAK2I@jb#Mg1HpvDuGh_x{o2s(zV_;c`-C@S-K-3e778zuUG_c%&hHyan zN8$kZ-hvKJM9iUb`kM(*s0>7%ECuv#8d5-p$u7=h>b#Sv3R7ymzcYe$wJ{EpGq+>1 zlRM!votF`efZA!Gv+Lq2&UK?A!F;W=E63axADH7fZEx-UCMw~r$O>2;GED{}^jXN9 zkdXyw*gpvg1aMwej9Sc@88Ar{_<4@0C<}5)dtS_xc2@&p(6SWa%P zRGV8vqigQ0+SDsEDoJD!1$SuoUNdXxEN#Hr{{V`tiB*TU#Iv(t=S7p1)7oKn+R>L% zH%7S@lkA-6o2X<^{lrkr9ZtdH$PUe*RXT+HN zuA=u|I@^b(SyHc^FYZ{TlL`b=0wFoQ!!TJUTMu#-D{V9&E|qd3oxM;;0mp{}2Py(X zWVNOM750tH(YrDDipseeGOU?0u2wkx!<^qPQZw|C#mR+Z0?TE-(s=W&q$PV?*gd*_ z;KpoD-6;wG02!AoXk|h;v3&-=EtHxrr?lsHKI}(r!$gC(2-#%CkwU<+k)*v{8QeE9 zR?IZ#pTA(q4i+bKX=B7YNXQD1O!0%cVsmDFr;3y5ddP&$?o($?kCB!`kaps@pB2oK z3zHZ?T0*rTf967&k_gGwGWoyl#1zW)FNT=e~8e#85Vwn;DiZ$@t3 z6qP0H#W?htS({KiD_1ElFE4Py%qbQ(Zp(KO?8?W+LXr*zU1XDMU076-6zK96c=4WT zb1~;GA)h8_hts$On@o@FEpQZ`CWzCK{{Sp8*9Z3gK0Yo4uXC0sLeFz{D214d{j?L6 z+vbWgv*$DvyHN6;B8IB$# z%+kEO2iGS4WYRM2@mE z=%vAqL?6_oef0tK_Y6^zFL@K~j45q6u?FDj#8njs5)vHQQJ4j7)*gYoEVjCX;-lubBS{lVNSsCQi3}x=vd&|$)Lbyo{{T8r$+CiU$au~~fLnP1c8&lQ z(&GAFkW7L}AWUhb5=SWaBb|Zm#BPk~yVk4<82!H;fWgEEqz6VkaypB1?l)tg9Kqv2 z?emrswl_viq-}OmN&f&)E(f8~pov=`I59rSR2!*;NZRNCaCp^McygCub^J zsK1?ELd2PoK9WTUk?#R#F8w_$Zli7QrnMA?=wiT<9F~qYa;nDrcM-eZ#F6gfuNs)B zIprH<#s2_Mn@p`{0CBd3SbEV@kDC)8)0r}%Hby{WSB~GAcyQNGvY3ivcN|$VB*up( zVJ*+<&l(WRZ+Zh{3_0+vWr%XGO@vUQ!|e{TLuk5$9zX!M^)@vXX<9t1E4-1QAeIcs z`-cF_&3tNT$C=rmD>zOH7Xxcth}1YA_Yp%00r9=XYEm#o+B>WJ-)2Wy7Sc9K{2;QGGqDZvqJ-vWZr2r7hL!#|?_dj-#b(+T(uHe;XRoGQ>Kv zG!Pd0!2a)OV;H^2v%4nSAC+urCWod!aa_5~?s1?{76fApt*vbeks`M46tfK{J_vKA z>B%C>A!ib&S75txf5cSq(_axqSN=LCgA6V_c#xvH%NsG87F{@PD|h^*wYBMbBP=)_ z>V3l#Iyh4!*d6iZM<}OT^-CZ>3cd|>8wI0;tdcaX9`d3|SjbqBwSPRbW27KPeo%s465!SY(Cc826;o!v8)_}_6-4!lx}}O1 z1jS;Yu;Xns)6Sq$%(G($_DwPnl1hw#-%A5>0X_zSh>XpIa7$ zgSlg4c2WUd);d@NYU}N@Dpyh;+_~kNV~>r6)*qvVktB-KUror(Wl{Y$tlnT-;BCNJ zJDy4$nR3!xsHJ6eBp+hg6`sp|IaY0Ia_aYg+wa`-V95Ufka%Q(0}_NnqtjJme@jwy zdYdD6Ck9#Ijitp=8%ksg9Do~#C;=j~r>RRExsNQ_C?s&94jOM&NSFWvGwdUG8`h*v zBeiyuk&I<*d?{Wp(~dlN_r$j2)V24ut-+03YC3rtI5@DPAGYL8j1%1P1toWCnl_iVruAe!S=;wiF}~R`#8V3bb0%e%X*!?M zTYa2r`qlMb58jxqx=Y3sUf_ui;58O2y559T%2^vQe{pts@$PdWj9=Q4%ftFCKy@CX zu2yVxqRPd|2(G1 z#>J6mb}O!<+JkMH#eK{x9e1l89O&?};Ex~o7BrA%t1tFM&l?c77L#j$8}hH)Se^%A zaoYn7E(wPd83wVsNhO8ubaxiwYZs-E*bEcjC1IB8Z5)%_Ze#e758b5&%oDH<&Aw6% z)rZ_zczRU9TVe3)s+a&Iu??`d4SrvRToWeHV`r18D6vN*0@w1;RHMs&=FA`Sy)4|u z$L-O>WXD-qcd;6W=?3||E3Y%btkcWip~q=)oJHCoNX!q8Brq&|HnZF}x1F`USI z=ziY)#e)9;RfF8KmR;j|Wo~qjruGIh$7v1d1xvxY^jJN!w_<=hbP&S~!+UH?mKM;L zV|yM#v!)v|;ma9=COF;~C-mh|%ee8eJU$eZai{&C*&1lFz2-QHzATQ<0a7d#8;Sr; zYuzx8;>gH+r;D~KY!O8omWubj?gh|k{a!pTS>12(s}lk^J60&im#z$9k&5hg zR@U~psMOkmBs;>8-u3y37PSRYH!t@a zQ^*1L&@e*~04wXvUyrQ<<&3fwM%S9JJ940022?BrZ56(4-!H2QRn@@|C5I z)@TLQZ{lsKtxmAUY?yy<#g5qBLjY#pks}eX4-v1%^>&!9KV$7hQhZsA= zQr-v)0`|8n=};zSg;Z<`NZ@=bDGg#ot9Il8{#6vY<(Wm=GqahGQYs8--mn%{jf{as zlrt$FwPZu2@12+BIfyTy*Z5YlhD7-Cw)kY~Bzlm#{k4@br3FhKJck+r0}P~>B|?o5 zabrOj13|=4M1fd~kf+0$pf;Ws&{R^$A+#SF3Z44+_|OPuu({K~3Jz{=e|1cPY@bfQ zg?W9ozG7DVdD3XTsc6WtVm@z5%~O}R;!6n;#DESC1&#jzk*BpxOn7RfN?y*Q*CgBE z4?2R$ERDGy?a$ZNg2Y^15tjAOLQBVos2Lo%+OOj5X6G3gJ;ep{nCU#r# zK2+3NIX4^J0yREVQ$veimm+GRZV5ZQd2*-~VXe5DDt1H^4lT@@3Q7SW0m6cerG?GN z9D$%$xEqdRO*FLwG2~Sxg58hey}rRgNi5oPy~PA zN<43Kn>tLZ2+9$|VYsf77PaLA?b|)VXaGprca5rWeH5&W@4Mbamdg(Sb#yj z6=A5<(F-UI1+Fb>2sWas#=?l8m2Yd%SnI6>T;9|iyeXtiagQaYXw+jbo>}p}EHc2FO z+!)Ug>+K-(6vDG*K^vitCNTgmq7GH~A{gW(YUzVBgDqw-usB#qg{DZMp>a%)n;g+VYxv~ z$+TMA!S$=C=;6VZidrG`sVKBapF61ce5d7K8=B3kqs@}r(a!Ub7!kabu{PbeQShV) zj!ugvC<^j0ZIUjCSM9y(;xCCb@K4nMx-cswp@|E9Pqb)l;ZrnMBRU?MmqPMA)){~Y=v*Q6Ucmj7Yd4~ z!poZ>uHtN2R5@uBDN(}AcwdO7qexv92@R0Q$r5`?sp70}zyN*~G;(EV+aclFB@ie@ z+z%x`zBMojFT>0s?PH& zl~T`c1Q2YbXloZ`X|7J=n-Px%nkSYlZLFCetGWJTc{DsZ)rnZKB*!TMF=gUT=W0AH z^(o>n8|n{-g>Ip^J+%jL5@P43Q^TmnX6VkPwBI0o2`7!|)R-f=W6Onz=4?6RmR4gd zktw&h*e3CQUkcALSnyjCPNC>r17|GTh}@&)Vgp*^Uk+8ipx2UR=#wTi0u8oY(qP;Ea%whf@GW+)DP8?5;l#y2R+q`R~n}O z0Fle-E)4K0G>FspNJx#D2_QDp?c5E+FF%b>>G-ZTXYOq7=aqwzk@PS`+cC0+INoIZ zBi?k}y71SPZZlMeGxrqva!1{Jc0PPqt<#-^Xk9`70J#bh#g^74_Np+no$+Fm9vtO4 zb4j}sGCjK`NWNH(&^k?S8^*jVEo$A>JFER4c+2hZN0?Wjzfk5zQEd#E=h|5R07=rf zDq_lV=EYw3H1C%7Y`hY z-++s)>sE_PkNb1}9y#9^ClKT@Sh^A{s>+Avb$yzXdXnG68#{cZF!9&u+FWser+AnN zQfuFG%15?A`3{wvja0T;;Kw&kVVjW{SI(Aa6D*S(sEt!y$+Ycb%ZRC(J3XJd_WX#F z9Mmwzhjb80kj#im*ahJG4gUZiJ{69)PgNxD1Y^aVxftw4 z^sZGDRRF!tEdz zC5hqTL1$(cDrTLfumJ*H2LjveVez6XnTwrh@uAL|44E7i%7r%#qwvTz7PkXbrL!h7 zY%(|0BD}qOq>Rd^+{QEls)6Lfo{3{v{W+1t*SVhB+Nt2VKh}h7+ZZqjG7veE5o@b21kT z4=W=r$&D2mi)zzzJ^wrNuN{9CdXsBNt{97~(`0L8jJyr*OZas|5@Y?{aZcRxDgeHOV82 z?cH*%;s%;j(8AIgSz%tJ+jln`A6pG5X+s(~)#Qy|8+is&Y|6v&Sl+?B#WXZP8bocR z?iLacbJ%D%F&YbTrW#CSWlUNSlJri*$zrU84k#UL#CcFG;>QP5W6sa+XtCC0-+p2; z+`Iu=qVP#9c`ye_nWa0~$R*Lu*WOm~uovS%mTY)3L~>;0oAZX4NB} zwNZGWk}TcW@fbUFNYP0d-zv?x50zVTs8-PHVkx5|uWP~&K4))-9kH2;#AJ}R!Sa-i zj?x(N;Za&UZ*s!Ov*AkwVH!@m!yim4D&I~3n~}$rDz_^a2d$MWBOygDcLGTHw(V6u zH9fTTE;BNqStDrnTpN|X(V%^bc7Q4hPaq|R*LNDLlB8S5igBPiUBXq6#K{zUNVKqt z5Z{g2WF-0NT9}Ne(tzi=B4kGjgAQgGlWJJlqbVh>JZWe6BU_|}RHncUiW}H#t?t%f zeJd)mEXGZbY200%mCpUA$Za?HRSp>r2JWET?{caby9E~aM%Lxw!idVytno=Sti4$- z#!1m0Ag4f=uzng`YAVVzEN_F27As~$HsISIEXqRl56G^!;eTn++Nq~~G|@+Cg`(UdUNM$vr_0Cn@FhM2CANFYGcPElH5BX(O8p%*7mSA}6v*x2%A3EvVwskjDq zjHv@txD$PT6-+o|WHJ!8S7#P-N{a*TwY*lLp%OUe+^oCX*%&%4kKrl@@uV5@u=`eE zOpK+AAi=nG8utKx0B*O}#8pJab(SKLg`P#cSiyo6QR1rm2l}WjlLjtyv5dTM@*xcr z(?r@b>Hw8b^Q)suv641|SGH2f$-zxN~t=iP}-_a$jrfo_ML!@8kEx!Cy7)^5~454VsgV?R%3Bf zMaT-KG8-$BIA9&|_1+mGC9K0^fB1;uhc0LNX;qf#Xhf}${Z7v5>5(nIp^%gd1 z7RP!G2-k_y^{ES2hq0LZguTHhS!Q-DLq@zvvir`XZ}iovrOk~iUS@bzQBLlx2xJ8D z(nh}1SdqVH4o}+nxml7*-Rr5G6l?`mNE&ThsZav>R{STmTy|gGkY+>%WO>n;*&GSV z5QjpbHNC@#HF6&9Qup~VaN))7coQVisY4ShWF(5ZU0UQD_^_;AY2nS2_dJ<}VZp?9 zmQB3^(`c#=)4dR?qK;Jm0H675OvUZp_ab1qSzrw?vP_lfQh6LJZKajXz9iX1b$-Fm~Ch6rG%-wyJX7UMg3e@r#qtqRUX~9 zJ|?Zj+V%Ljd2uty+0*4DfCP&oHQbAP+j?qi7DUq)85%{EVjV=fsS)gOx8ZBr-Xzvk zpxJWFlHko6k-tfhD3MPV44}WX)kA~iBx@Ai2qIlWEU&fA?oEIUHSwS_F@|A{8KYy2 z42vVFltxJ98DJaR&8p~RX(&*zD!q-#asyt*=GP@#$Z)6#^0R`Sn6j|cq;fXGHR9Jl zbp{8MK1`7d!I>lxw^OQmaYEZTDKEi)jY-Wl(np$jl41fg`-r~rW1z8LX*zPNf?5dO z8aGyGoNZyC2a&hp6o{l)*w89s#f=ch2lSy-8&=Z9SsxkK zX7$yO`F<*Q^Zx(@>wjLC13w;UezG{k&kFvO@&VM-hU3Rd<90WWYRxR~B+|_7C(a#> zh5T(n=%9~kM#x%Oq)=K@aK`?;sOFx8&c@10lf{VE-1X&G6gw(4p37}42>v3Vp;)(W z+k5j~bQX3dJ-;pZ0mM)x9zf*C+w{=z0-}{5$aw^yj+ZqWeY6Uc$1D;wJuaX=@DWs> zR&8p^xafBG!RUapq>>=_h{nVO`3jb%HAo_{XW`6~rA;x9CJ{Q1r$Dd&0L;LEJt{Sh zZ2gV$qgbSx+YP}{&(8d7Q>3P0{?@>Ox{oZf%5S{iYMb)Ym2cl!b&P(&9Dk;xMG80p z$W+u)NZnM8qxzVgXcoxcKMplT;wCoS(cJj8jfbToHHmS+4`46iC@ylBOKLo7=%eK- zi|sb&Q%oXUr`TjpAD5Y+&iQ9(4laBM;A$$1*ZfWG)I>IFmG_ zHsc2Xd_7HD)TTSwGj)&*fFa3HH>ZKDDXkbJh1Xx0X;4(eP>y5Df*DC*>HxPJ>p^gB z#OvYCfL(>S@Z&+7EoF8+084>k*8ak9pm21*NyjSj!{&Y_B~Q{UWlZ4?dwdDBd2$C53~ zz=lvhZX*5_txQWc?G#(fg#}1!jzWUVbiMRk*czM(jVsz(03W^l-CxuWHyMGfw zN8zFLpi3l9n`MkR^QMgRcD~&+F7zlDKosd(_7e|l#*N#i?y7D8Cx?})Xg-~S0#2iV z@uI3j4LEsFK;CW$;mUwz7tjwnp+u?jB7uk)=$iPN3+&5eVI|CVuv-gJ7(SmQ7ASjC=}fBu-5fLjy6WX$txot!+sxSJRp3I=@h|c`HX`vU7bFv}J1C$`-P&U8v9x&@j@pDfSxG;Es?HT- zl=%@OC7Kk_o7vEgS06P?$fjJgyGFy@SPj8gt$^joR-{DasE-^%{{W>J{aGEP+SVVG zE~M0+Rh~ZNBZx}|M@@y%a*$op`q z25EZkvPU*qV#9c4HY8f@rnco$@S4%}F^I~nH!Jv5gkgPo=xaFFvd)areN;scP+iov z##iCDYissX60VuU>E-I(Bv-g)P*p)1Xl@A7rHEU|Wt2+Fjkn%LfHn0cRQU3$h9s~6 zv8wHsLQ4e)a2D5T1Pv=HL`FdUR_b*kVHndw2Ag)B2|TY=4VxwQB&_P2pQNJu zX5nwXf$NQjB;QjuI^-XeO$wNm)lP)~JZ<*W(5U;YFF9O1QyC7-0Y(9s3jm;a@Vixz zOi*_?;6@V+POiUA^H`IsMi0q<15sCq?wUwr3>lyaVFWG zIJXk6NeaP`4j1FCSt{!C4$myYV9$@#R3+q4#h9*^2S(e^!k$87!oZWLP{);usjSZX zZDYUyEyVGwZHbLIxIrP@`DvK}VIsVX`e9Rqdw>i@OVe1pyz_SlouleT(IiJ`y6$a# zfQ|}z)YAkVu5FI6B(h5-gv{3~el`}hz7+OMV(y0*0z|@cI@#86Wd~$IbOqa1Ht-d` zCFn*6b)OKJ@q4MBbY|P_l1O#8xm4WS%$mJJTid%ym6VvB^RnZ~y|tJPNDFZ$>u@K| zu9(Y}i~C2r#5T*3+hmCQW04u-9w2CRCyBjYdN7QC+r8>MxHEC`6D=TBUbZxWC6Wm}4W^N8-DJ0#?6C)QTF7f3^to=eYw2TSbZSt_;S0)pusqFdl$&CHM z<4ku@B$KBS%QFYHi9Twic<{Y(>9eNF{kas624*qF`rxz3liA|&Qu|Nov8_Z-e|7AW zzCJcU$->CRl^ObsYPNn4J5nYl|RN%5tUCy+F7PQ6BmgY0X0 zerx*HyqaNRCsX48XmB`k~#LIJ9x6+^Kz@dz}zUX zd+uyA2+Up1CTXR?k)P>iRkq;^AMLgHfu-v1GmJU7Fb?O_TwJ_FRc6VLB2ZdjMZzSv zv+vVGREUQMJG^&E+aY3xY-9pVHnbLnK_J`$08?$pj5%7_icD ze22zB`lrZbXWeD;6|2fi7L&fiK4ga{Jt2Zfwn#B!6God&)sYRX#PJ|jeO14-$D1yB zZrrj=%%J3*p)r&W1sCO&$kx@HKgq7FeY|e!%8t1}ZZfM#y-5kT>PNfUzEyy%)W9;d zz00733)?2ve`U?~Tv*)OMXgOr=XTcppB{P2!;3F2c!7{e#Io*d>1MMxsjXc{Lq99C zcQXV@6g|phC#8pGfz?!gB_7=^rDsUmJ4_Npt&xuwG(nIE5?3mT9rmjgHe=$oD#nJM zLn`7#&Zd3tjEYjsID@niesu+*VqgXkk-2STD|TYM8(mo6jRPPIyTp<=Q*#!O+QV@9 zNCfTlHA3Stw%BJ_qsk$^mKBh`@64)h2cFufN+w2RCmJy%5IVSgrj0$vgC@(6pimim zQJ_Nm*Yx2oj^5Q#^Gbtp7Xp+#ov89n(~b~!#_`HRFmIImxHU{P#FliB2h!?Fy0ZK( ztH;)&m5lievN>m&+>*1XNQJ?%jEkRj0`jr&av}@dF@B>MHP#o_#1ENlcU*H6mke^F z{j=D|N=$r=oP2^^+%|FZt=_dAK^8(n$v#WI)MPnx1yamS_OMg8hXe4g zYGyMs%6d%c3FOxUe75&{&X>0i6-2C2Y!ThBasxlVfwjpN=S&QeDCAO-Gc*7j#*efQ z>TU+$^SuQlia58*?jwcNEu3yAO+%ePpiAOl^yEn4fZ;jaXqr;Z;y^=Ve_Fa5FxvtF z(nz)hNQ`g#egPBwX+q4{*pZfCR#=G*kQ6+i{!*iJsPN@MPL4xEAJRxkmQQTcYj$v2 z+W_8#TS{T3cIV5#P4aQwOBqW*#douxaFHA4^`K(IX?DizBxp$y0t-5~014n1ok2v5 z?se-V2+ZItfm|>@fNm#p`W`i41G9Aqh7YHe_A5l_1Mv9-F)M8^<5tK<+>Yu0 z03Vc6XNht|MpeK^B54h;wTmv_zNF;VF4^AkGD2m~1en>9$jC-HX?8N3?RAjZH!lX^ zR`6@1+OqO9F=w0U#yDJwA!y`hGJppbZyz9QJxm%pairk8Af6<=uKK;3K+4CTl|Zbf z%2-suvaUpT>E=mi4o-_>YYsQzRst{iSfi1%GbfO++cUZ>aIS*FH9Sf2t8{7W%^o~> zc<`AKEQ}-@_N9;F9DJ%ys$ns{MYqq5E-1KLmIX=D#2r|J;ZnuZqSc5~bA3+W2|i+^ zipm@`jK^fITV$d7rLH(|&<{GH>oilVDjmfb77>l?EHyW^hO|YbN1av#8^-RTDnV_- z$8ZDIff&Odt(A~uSfzGY=XO*Lbrul|ojw&s97HjuX(y8s0&Hd=n1MfsYx|f}2B_y* zk)(o6@LVbo3aPf9)gWu*P!8fgsu>j{RStcw5Nm6bOboIX2Wq-71Tvcg%KGcJ{uBwx zOgW*HPYX$kHnf6deKuH+albz*sHAzA83`8IQC?NFf@r~+><9#I$vSm6|UjG9AAy!60f>{C^EaVae_ocv$I?G_gda5YtI^R&8vmqg~#- zYjQHv6SqYs3JiqMV?>4{XArLC+zA1hnXkC+=X#Y-f>^+jF{EKEcT2I{!11v*;d4!~FtHXr!mLoc zl_G7CB9|YCt$;W3y<62WV~*w`Rf8*7tSq*VaL{gHsXBA#S;b*=?n~UvZ`)&R3F8X+ zaFh*wb#}kXcv`iFw6qd5RsiYl+0|BHRA@I?uCISQ*A65X@6P;TKCbc@npHC!E1@IiBjxp=lNFE4v@r_c0B$@zJg67a2XTr`s;6W^ zFt$QGZLg}(EfL@*M4dyux0!;CIB*)TAB_rLXLrKJ#FM$?%CbPer3*)|R!bAG1N`dA zrm@Z6yQ~m{H)jqQM=6CQ22PZOs#{Al--?YCR{c?j<{ z$})}0jvJ^!;9V_oyIP-$^Pjwo_;7ajMP}{MfPqHn-JAL#X*T1HiR&>PDq{EDp(&B8l^I zB2yT-f;+J`;vKnsD~(-taHYt6PpUttjd9RI27^Epnlfxsv&+6^34IbV?mrXdK-nTK za&2!53sS(eibuYxinG%;VwC&l4@eP%Ou(zNPE-Cj)0jG z6=caf2-G!+6%0BV1BGkuR{0ML)r`}at-vI)928dA21zf&ZBT9AENsJ#AX&pwIJNlI zL@W#m+`1n-=}}N|#m=Pp8liG^R1LnA32EFY7vcE0>p-}}7u~Os<#R!{JTRKO631N) z?NWoLpqrN3YHF;|F58P(c+}Gw*-_hSk-LSwO#_+IHQHI|4o}VsEZ1V?jg@(iWQZLIRAH+|Om2|^hIC3)Jj5{jrVSS|g zfbgu9(1pyQ2qf5eX6?XKOE6S^g*wUL3g+i=@z)cRs$&d-A{Y?XScx!F#jf_Hdp!n^a< zvttwV-7RgJ>uxvjt)rpad$T|zg2GtSMMc+N6VCO|t{a^_4mNH(MzIp7B3(jq9IQ_x zUVgc2TcyX1(NT?p{MO@scQt^ugBdQVDODEs-%HRjBoU6ES9w1>ao3fofOWS5RJkU= zY6VdL0CxK@uol1gRTc%TU*%o`fncz?CyfO42+*E9s3&;f4ZOtz04^*ItwBbO3v2Kc z5QKxbiSeKqt?muaIt2$&a7_hn2;)IJv;x=ipoigMr-cISd5eKT0peqIJSZiPw8!VvyqZd+}*(FV_mJv+-qKuH8ADPkO6d5W2Y1R>Fb8B@wS!#Tb<}C zI+3oRoBi|_4GD*H5VCpSOVq%HX~D6Sw~n`~hPGp87@Q=rlNlG@2|D;%^_$9@KXJy} zVG9!62?I;ioQ2^CU9R(h;N4dCHt;p7j+}kLU~rF+6mbEDmj3`ysE(TDMDd0W8_iAW zrYqBqZFiRPwFQ6UBfZ3*3aG1gqCQq0RR%1aT$pv+apQWU46@A-xnG4R2EBmnu^pu;}c@9qpdRNl1(cMZF)EmsCe z_sF*|sTR6uY<#PgWY~nSc=Ew9i-eUey;j<3QCJ%jxs2tG2U$`}^mdPRlxk0b6}?ED ztZZ0zM<^#G*fR?!9wyu>bJmDxapF{t74}%)`nBR}z>IP2l@GN1#4+8(+vPl})kDLK z(#D5$GFxiNZOGQ;xbPH$v14z=kch-q&@$`0Wx?DjdPKf9Gr!EPyrtQEIs@EGvg7nNauO?Z#aWgggqVff{!Ym5{Ich~r6~xKF$cd$nL|&LHA}}`E zcogH|Q>Zi}ATaJ-(G-X(Lkm z1(H_QPNCsoI96!1(1X%hVpUa(S1oB2wyo{wtp;<0)I|`o$N(x35T^S{7YB`MQG$G| zj6Q&1trpc;5c|+DH!6f^Ja1d|(a?iBV(jrWb3yo876F-m)5(WA#pG#^I%szpWs(R~ z6Cn?`a)F?8&fWsE1Z86!nFX?A!aG+YSRZj=7}aD|JUDpO^A)Oe#K>sliDN}`vUxO( zn1g$%Qcmp&sc7csH)#5)9%(jY$Xuw1b*zDi-F<9N5$9TxhGe|cq<{YJlevq9k0Uj< zx%|aYZ7QFdtPzUX5QK_8*E9{7+oKDR0uUPCh#jkbRO`ta^E2gimFCCkB9R7GGLO`a zTzh0z8Zw{htWH;4yx!-Q&jQ6EheEs5w1ruJG(d15bFI!+9R?iT#e?GIUm{4t%!Wx3 zmO=79&Oy9+Q*dU=?HLi_WKSgGQ;O>(@mQ545xlMa%6&AgPoiOKCN?aujg>6e7;|nZ z7;woV@*-9D4_emhHe(dRk8H_4NQjk>A~{vnVm{<+e5`p|x%H~uk&TlxMvh+Qzr{tRNpI#cka`Pn~IM&RvhBC z`jYE3g$Tb+KsJ{HmpbV?PgYFs+ux1`JP!%X$5?tH@mU-wOWDF`*R{0Pm|Dh}&_mJz zW{)dtE9B04aypUj_DD8`@)dHov2^{(pCRbs&WJWKcGDkdQOV8s>A+Q=G}y(7-(Zg? z6=055EaEw*k;<7?Lu0%TGgr|xnP0h|s=<)7OOMtMs8GR39{Ya^vl7#L9$rQ(V=NJL z=aF4jbZ{N_5wU08b?F19-#T>&=;cfG@=F~50QmX-;q>^#feNj|7lnPYk2TiSkLtO& zb3Ag!aWR=*1t}b}ZHhM!e{`X~a6GSDrnTkwT&!rJjdLxLJM}U%P^_`2X0nY2nhT1| z;caS8{T5J6A&nV_6l{5>eS$Kfm#YZ`KIgf(HFD}>FKq95^SnKpcw@`OcUV&&EqR}n zhTm}bX-`}(Q>DhioigzIZewCTONjGuvp>3eWG=;=-oXC=R+OK)GzbhBb%T*r^k&}F`P=uCBNWiB%9xjwWv7# z>$kM&kK5+Wno%L@MUM%W#1bbc;;c!OzAoj$F%WP zL#_GP)~{Nw`pMpRbTM(U@q}AaJjj&Ea82xr+L6fKx#-7*iILl9$%!)|%FD@qs=+eY z3Br=(?I&i2)U{(YU7AP2$i`maKjgAxGi77PGX+)*Srsq0jrFFE)($>i6aY;m)3TP) zg7pItauvtSE#p##;if+DVY!xTnEImcZhQRCi&P5kJ;DqKKBq7u#T)B&8-tA(V7KAs zYROT2eC!;Q>fz<%KTzIS)WG_2$ph~pd%|}p-Bzo+qmzwnHJUq!kVP?`?xBz=VQ%_BVDoH z5=r0x0PRrn{4Gyo8hURT6242arP4KUsuxZ~d#_I}qc*@>+|Bq{a5R+$Jgqa#%^XTDI)irLqyVK9ej&76Q$~z@ zc>bI&BrLer)+o-FI)@vL)SKS4EEyR$zV?i(rtmHl4R)2{Xe$|0D{YXOLW?4@p=3dI z8%Cv1i4|aMF_w*5B33rJ3I@ef#His?iexhYT1S46V2lUhW60jygAQVth)$Zb$c)Lh zI|ht_C9lHgiSwjZOpL5pvP4s~!I3Q-(W!Db3vJ${hkbPwX%~+t9rFHyCw`xw@9s#r|5DA3iVC6iHxwhKyK5j$(;Tw7tdoa;qv6BS1x?mI%Z|7?q@q7khz! zcm;Ih<3(E{ToQV6+0{reyguc*Jhp?g)~Auq{lVU%#1X`?E=P1NeuS1$9^dRyfJ27FFCAUUY=%i|hcE(NgEG`e7 zUsO96x~>#)E)kO*+ThE(s^IXtsrIMYS-fiMa`NWxd6C?gn;9+>6~&EH<$==UAP}S&W^tBfob356UrXp~gG(~J@EL?>B(k$~ zB0B??HyeVsgm{XmzRN5~BSW^%Hn1fPxCJDW;d+`IzbQ8Ch2_`Y8PuP4mN&Mez))66 zWRB!I88+>aoH0uSq1ztH7lxxVH_8_kd7G$Gw=oR}lXSVLo!xrBS<-+KbPzC|7+R(+Qcuqd1ArIprc zSE9=!1`1R0U3eRPwRH?!o#>eFJafvV$PgP3ZNOc(zrc#2dVAxH7m=5A%7K-=)&%Mb zdRWj#9x7qRrZ1~VV{MDpn)lv*ZEkOKYG{0&H%5Jt0^okL=vaO|#@mLR1?Y^617k`g z#mN!CMv9?&V*K6YKHL5fw8ho2EPVFpz2&krPAS_^PjTXtbjrsZ2)Ksm(QVyodFLK<-6%?0OD$E$dfdVYZ zL2!3ny`L#tTh6Gv2-wEzs$@~MTE$hDg{)10@urIy#7gqOBkK*;Q2SAs3+yClqWo_} zVGrC}HZ_Y5AEq`hknW+$a7zeneZ_g+n7YyvCTW&9!#rj(vvo>w95+Ti>RZZ~jJ>N5 zKV*_mA)6|9blf(bvBrIK7O@}_2d!tWBJ17u?&*QtaZYXw zh0$ytAIA}I&ExQ{7Gj^ddatyVeYPP*?m3fxx}vR)qjBjGabiHTX>AES=@CI9sR*S| zFBHC(qO9*I77>XHS))ZecU%2mEe9(zyhn%LafWOVMT4G%bsQ_Om3ZBN`A8#;Yn>iL zykmB_zi_{XObx1@W!Kcmg8xW z_WO-vcDIfH0Jk%+`)6vrxRV&=k(s8Dh{~WNY-kwnkn4YFr+n|?He}|BqsfKxBJLfj ztR+cg5lsofmG+oMb?g;mE=^n}5g&_E`Oz+Pe4VGaj-`Kx6$7 z(;^-4&2?f29mknoTGt;fFNTREQOco7{{XomQmR{!{;G)B9f&O>CD7Sa3juE-#Q9WK zm|7xks#W+GV`gLN;Z+P%VWp3cF+@ND`jQCZD5HBBHjN|k9O#QZ_YJq#@mkawrNM?t z7>gv2_`ti=v8^Gn&f*=x13(D7SXOT>dm|$a-Yu{sDhc4~Sf4tcr?Z_jeNOQaIMRbhR#<(#+uGF zG??;@q=0z?rCmh(f|ZMH$0BNgODG?xfO(2&q>rc|e>w=?aY0v%x{+hI!huH&F}S+h zkQ!4%(;gHSG5l$vz(;EXxB5xrO)!^ybwkvZ6VCM)8Kjt~yaY%O;yfvXGBkvnFum?u z`BH~0k^JsG<6l~sth2z&`qy#2zIB=lQEVz=R?MO1Xl6gMosG#PU876Tf#Kn2@G zC-~N+8&E5#D0c(+g=BLwJ1Xb14876o>?(c4cpoa<>k`Hpe`w-|=&nmfTI4a+i14nH z=$@=OU$o@LSCTxHD64fRi#M+-v+1eo&5ezfl2fTJ&DI;#>U~ePqKPsXz`=k!VCH6?V zZR2l^RA`$f1&GS>00#kne5fk2Mbk1faMkZ`X!D>?*5fzG%IBIX)|ecuq%&IHK2!jk zfdt!)#RRO0eeMtRgTQ&vQP`^nQg-wB`A|YgRnFmS@e~2tL1j`eK~1(JO9}u=pzR~v zInV_`8?SN7f{wD3I}Wr~4bG45;(1n)X(lY7D7E;SV6x<(8+>?E0|bSKExrbV649}d zR9}XgP)w6Cw;{vK)CyUB!48+VyPZ)J#2&#VwYigOqOA(Ts?66n<*hU|dti_Wt)U*^ zcn>0kAh5JZbC^(gA2$-fcVrvs;-B4wG^g+CQ!o{vN)YV3}xM0k_`)mGHDyAetF3eQ&9KQNs)O)vZg$OQ% zS3z|bBjH)~(W?N-oLXa+Vs+D|F13p>T}Gd{<3t@~NxV)oxO9=DW63To zN1ba?haN8O^X+Nas5pD3Zy_{I|iUZ?tYjTAQaBG$KL4@{t?ZI^QTr%)s0fe z43Q(q`v9dtTEC@G2J7i=KI`+nW1Id8mBfyCF9Vgh1?6B4+i~N|!ndOX;pC;7C+aor z5CCdP`A?NjONIwYLYpZd{I{j3 zgB&{nSXFvOix5Z=k}q+7DosrpUN^LCOUeQ2NFy7;w>BTb-0M<~e3%jaW5*liG~VBP zL|Vk_X4)&q9l2V%#B9gU$jEN4L~R--kwC!w z#9VA!U)yTu*DAAig85Lc9OanCUUp-!837~!!+~u@={o-aBUJeP!wV2Rh*C!;Ns8?% z9FJLE1kMcETcyW_c$5cu;zJWMsK4RhZZ)Qj+0e%< zF-Xx2j7DM@J)NRsp^dF#bks4axUO^I<*dylapOgWF5R$CbGem9fS+(pIQZ7(4Z_Br z2(l-iHDX+NT$uVnRbFCNHY5{!7r64NdV*IT7;ygpMp4#66!dJnn@bV6TruIMn$(Kr zuVL<){{Z9ud|1H{%R zpCcD@kujDyV#=8$-PLSaQt^SMlR`jHIGWcuH_AJT<~B^Tpm~ZU)9ncppc}TvvE7Lz z@wT;(AH`R>WSLYXGf1&B2HeoyPTe|cMVUqU8cF_5X-}$oVvbnjmKko7$j#H*ZOuV8 z1%EY5AbwmjMGGuFvMk6E3qcHrauAvu4t58XIle;sNGGYwgC7Rjw3oykrg5 z@@;9**y)a$Xz-RuoGgL5g+PCqE?@g)@G2PUvokOpEUed$9v+(k*CC+w{&?x)|3RW!E94R8zM= z>l)dKw=q{4y&nQ)yJHU9&;nL=@C^p`|KNFZCH`#Zwh%#h+IzHnJlx(4Ed5|X)Jj#=(!qzA9plFlNJ5#`XwOBD5E?Ld1K?L$f*_9) z7oRiqt1!X5M|fnYWNHpygEzk_ZEgd9lRF3zHOkQb|#X-F>V_w}Av!V@Sx% zDGZqzY%z-tlt~QW6Sw}{U<;OE=b@|mjGeI{f*U>~{8L z-lfQ##OoSLsAr6^k`=OxZIvV&lpFJFX>n7jJ z7me+4TFQ(q*yF~KOY|}_!pnn%Am`(V4>|Jf`wENY*~eXQanMdZj6)Xl|4wIIk^!w{{Yb|xu1oc zumfujV&;+sD+?ttEi7&WOEI$bHtL@#)Uh>X76~g$63u^m8K*{aWCS16 z7hVJn4XWxiyzv{Nh{G`n9*iuU)tn7|FIp6pu@J11*%mu2okl7E<-+$C;Yb+S5VX56 zBf-%yg8dzszpqQ@W$^8t%)WjMr)oA`A4A@l{MkR3h!qqMY0_h&d3yx z!^h#RRB+R`_Gh0H=yEd^A!m7Z9D;)E%wlqQe-U+d%hG5tYFlgb-S$DDp8gH>JaCG5PafgaKSMF#N2OkYF zvbE(QcE zmSUr9%@K4?8<`6Mx6Z5_JZP0%QOwHrl4%?i@t|JC{u3 z?hs9tEPAq~qa_H`@Y-$2ajOu%-Q1zhfmS?shB$}|6HbMhK(Jy}nEV)0sre8jjmd4(u zh@gx_h%m7TSk21D>h`{aW$mYqv=_>oAO#Bma>YYFtbqRjN-oy0{MVwITW#1sAS7lt z}=Vg@J_>(~_OPLvvDGj3&Z7pkykZ(addTOB%q-kIyzq;Ng)D}qq zeTCvz2XR2lzRmI-t#1w#F-f5tTI@II##TjOLh(B}apg@54VAh_DzCJVlSaxEskQg0 zQV)*`x`)RCn}v)bxeX@rOA;-&hXHO>S2|wV*>a4tt~_gyUu(OWA|S4pUe&g<~ zEbvP#aeY*1A<9@EbS)4e(H_>j5x5X5w;ZQT3zdbOrF+g?_^`$RhZ7bh5rJR@l#n@i zUbR_{rXD|S$L#+AOWZQ2SZ4QOwD``aA1Cu86RL&z$2!K+nc9D4_W4#>!}Nm%A(ynBX)w)g|4wTaHR zj!a*?r`oC9Fym~5v!_vdZ_;g7XiE>awRjz@Z`>H!1?H136@`RhJs&D#6_0Cw%K9yWS8 zhD&6niUyEafF=U&5l<7u*15QJ^YeB%@t}-%#LC0TV(kl-R|O*gkfP?q+*e)y00{}3 z4taZAS#yZ-Fp#juMqRHt0_SNOxoc|N1vkL&cMP7(7Cr)Kc1mw%Ri{0q~?svbw1tU7Pc8pqZz#e83Vl@iZ1$CK297P&f-!5ZfgxdX@lR zR?vFT8+h$wH?iXzn2qGaBy%jnt3tbITlEp^}1+DYj_iTQr4aS0IJ4>hzheCewrv3BhSLJ zh>@lM$@HL`>Am$nfKviKvotu{jT~||g5Zp;YR@MZOeMl68=KXJdT@ zlnR=dv&EFUnNH7w)i8;&p^1Ijs}UU8!TuFtjQ;@gm;?j$&oTc1_F&uZwOkUpv9j(+ z+3a*_Tx#@;K1`;Z%7da&bgyV3H~7-rPn10G)N5Gp=;9 zPVpR)1j=*_P0r^2n%t5lbh{2h$+0GdRlprKV|(kw-;HCqvFXTRw2~P3*Cv9;8DjUj z=jLjmb9VmUHTv;y4W{lS4=S)zxOT+<0FMdUU7*N8Xu)C>1IKrnt13AUgZqac7z22?AVeG;2-JG zUXsIWnICe<#KW5lHx=WWMgYv(1yFCo-!MGuR%qD=cYKJ15ja5@_sT}5+{JRdWlcct zQbJGCByyYG_8upd{cBT&mDb1a(MOIOHqpt+6yIKB;aI;v@Yb_0?mQXtR6h5)+Z<>t zE_{4xes&t`%AKAvI>t183A+sm0an`Tw(&Nr&sbL~9Bi0_M=KjP ztgKCs`FU3D(+!G7$8(a~L~ElSXUTM_h}{?Nd>y7Nh{#es%%cAQ3scgLoB|o5Ng;4i zxG3=RtP8S|c<|#vTN2vn!}!o#B9#C&+s1<8BWso(LV~g`)z;u1bO~rMh|x z18F|$3cBv}7S^a)g$}Agw~n<#BO#X8PzO4KHX^t?%X0_`)OphbWR;crkuW6cR>sRf zmyJvBl22v5?0N1DpY%j+;{S#Eux8w+x-+{n!k_dLj3=IRb%xz)Uy*%x|@o63c6 z^H|(gZw9(6BvQq>NGNp;T^A+q7*bfvoNY?P!>)J=2PnJV%9J(D-|nMm%;@Eq)}QVj`51$XkH5 z^{n1e*Iwa=Fxn5hkRsPLD5lkWjk;lx(C zy3O#}+A{E=hIE{?a~B{*w35g`w!i0GKHPPG9XP9ZES}%oFqJmEb1A$}wLtcp9(vY( zT=gl_lMAjgg6vca+<23&pjWRP&VpPXxyq45k*CV4#y!pEYG8A`GLrb}VX+L!Fj5tp z@QY|c6)>hYMDsfJWkyStMN_n|FAXR$$i_74?)ey`k%4_VYo+SIU}q}BE;`;klIqDI zxe5yg)6V0CTLvk6-+9T&Kw~i>W$HLANh^L54|fhLuC=)kv|Oy|)>)u=Bm`%wvs6`CN<7aRpUHTkzke~z`N zgia=WHHsHhk%=*@1F}mW!6CnawfNP7xDn((aK^;l(`iUEq;AACV^?)++iAA}PO}v` zPVL~9rMR!??TgI_`i%!C4 zm0@R%;MuZi0M*F0*q6rNij%-zHV#+RqRlvmCQ=MxSi2-?t4P~)+;{`Rt*~Xskv^md zRJ6Dc5H5NFr?mmPI9+ zN$d>BNegw?P%ZNKe}!LDRqAD#pD0HputJCgh*?y#*aCpxb6o4kN-Fu7Sjm<3J;oPB zjD?9&*KDrF;bV+)4aZtaI;(@+9xkMUHBf(BGElpf7=|b#P;@@LYZ@~zbIHohlRFu) z*Bc!EjG-8SPM6#iGil3}GC{q{OzuLiJhE84&g!cnHrL&y&)aH>qV}B0ofiP&%M>ra zAV(t?V|!Syr{=8Q91F^nS1xUeGQ`U3FRpOtmb14cBl!#s|S^-krd z$i<8sqB+xZ3-Iy=vqN(7vBuWO$d(y0)p}S^1yWR4DU#rBYj7r-&8H?DX$pNuRpZBz z+9`juTdZ!r@ZRU~(x$6YWaYC@63O)D5W8ZGF5$adfHgPcr97I;AJa*eQ5q-6+hyO3 zs{8nj7%kMAXms#)ylI(>sO}p#zw5p{cVHEWk5%|DI@h%@m|L=AmXN@cnVblvJxM2a zCi_>Y542lbX;;aO@^=^{4%nw|RBg1sPpYw&934Y(<|=7ZfW6bE{an~{${Ql%ENaSc z%-;Tjmg>VI`g6Pg03I!icAs$7l<{H+7xfxaRL46qF5ey)l6+WkaO7>P91cS={{ZqA zKrL@dmZ^EurYs8%JnbooL0lJ_PkIA&WVr%E<*g;Ov4)_$DD<6Jo-ZP4UOk&TM;ew%79VG3)fBTcQs-fR%-99a1i&dae=rt#zL z)Sr19i6h6IUq8{y`nWdqjB#Sbk8-HbB$w3Rdv31MGORhV%QT7g>(2zs}$T#t;Vy|Sl=c}#u7NkMPGA7AwW<_0RG@4@fDdA zg9}YQ5t22ER&eUAWil;^UvR$b^0=yw>?@xV^}B50;<3ISVL1!D_)MQA`GZ{l07iz7 zKOu+wt`f#JgY|fG*>-{~glJ6>&F(nUiB2-*M;C69#FD`lD@cOYA~~jsnYHq*%8l{m zH2I)Snv=Sa&|t@pBtxhLl(}%tv~o3?rcIxjxbH|Yu6kejD9s^O)Qd#KSho%pH5E8$ z!*spAJc&Z?$46qVcRI5WzTF27REtI~H+6~!n>Z`Wdqoa2bxI>z`&ELF!q>g((?}hi zBgpH#`MFx}Xxm|phTa8K6Q_kuG}eQ(<0Ml>kg?aM-nvFhPo3n z^{mL*0I?y_0Zt!?h74`xL{e4u8Gw0`Pi#@K-@I7aV-7alatA|A9DJxT^Gl3w-4vO) z`$H~bh;mrivXr&ahb^_Q{6ZngNU_kzjVE445GB~a1l)J3IoY&uC2Kg+$2UGyXyxgN zS?wN1IYO#NjD;j8f2ge9MRPlZ!eoc6Vn-omgoT|YQ^Xj-+%Nqik_dus-G?e;*mV_} zNXFmMP}%?)NiqB>ngRDqe3+q@J&Uk1g>$;hg@{jWhM{z<;<_ah8x_thDluW-GAq55 zGdAmuw%~UQUgEL)Rhiy6wuy{*^U61(YVOQ6V7u<1DL3~H2Cf1iXWjn*j?uJjv|TiL zFK~>C3W5DYg)nI{tbomu&5t4mm8aPvY`X2$je{^8Z%jjQbH2J0lLQkxMmO}fh=kjH zzTMYb4m)(MLAR@}s{2@7qA{}(ZXmD(Sa8{1idDje(NLhtjHss+?rg%GJCP{uTAVUd9j zsufa8{LUlyUf0%5)yEK*O~9f_Es?XF24_g3jdqA~LV zrr@>sTD9*}6OH>*w80uW!zyoktnxDnkRAafR$DE!)Ly0R#-F4}BSC?TuOb#@Gr5$7 z{K(FrZtxeiOV*Mb9xekBB$#nFRqnEoip?M&fG*w42Zc76UPM@VO7hQ*vEs0dN~l^k zx6Bu53QvirwObUExJ!wjkB<-4Wltn0el!ulRv=EBn!?9U1dG)|qVL#)CLD8%lZ6II z>S9OI1Rgh(n723=(61_C9Ru|U<`xSy&dY5?avecBSc0qPSW}@6X57J~Ae%_Tii?7v zUx&hjmzUc9w-QJ)gLe@&xb9s9@i-&`g@Dsv4~1%UmN|Hle&g+3_iRzkn~9L=6puMe z?JIG+X>Oj~b@Hv;C3f=iF>(5MrNnSdy(Zf09Dd(!-PgXp7rk;*;vl0TLHb}=jYiwr z*CyY6MMu-c9F|4sb(E1bC4#$wsBo4cw(uaMfsh@2-~+gLTA;jX*UdRE0>eBi z5>_j=Mpdyts@iNGUm8NP<^JaF__*(u&XaAOV-Uk|p7HH2@-2X}-%8Zw8D;Nz`5m3* z?XYc{aK;8~gF8k^xjRuAP>_AQm~pLoj=nE*#my(888VmK)14YQ3166_e7-ylW{a?# z>Vk}RXS?6;d)h5t|7<>OM6#%*}e7GO9d)h zPGnL9jQlwxjUt>kUhJkeG2Sw6)^^!;Z|R_P5AS9f{y`uV1D9(!}-SL4Tyt5e>Xxc2L5R!bj)eJ)mD*<)pL#f{0ZNzKkK`}{? z#A_2R?%OV*NbtV?UUdRzj&#Fm7ARjPHdV*!65tkZLRU{4)eOa$WWsV4dP?8jB-xSw z01!9+HJw~#%E0YU9GMeiERKt2olwmp+<>OUd%!*dwGorGcT8-st<#n)hLX}Mg5e62 z7y)hUABneH<4YCMmM|lcotYxB5=(wJHui$LZax(eeX(^IFbgi-uOTEz7r>AT&@d$3 zQ7lXPVk6VX-VAMj#L5((zN$Ih)qAX%nD2#@7ofo9Z!WONtTvdNV7LR)tQ*eTT_Q1B zFbry|ZWgiyJCBv>TChtzeME(x@_-n}AU6s=7Qe=(f+S%)<>r-=MpsBDTdG`YB4xF& z$P-l-joL&gSOIOK7_?vk*6u%*MOB^%p*eHh>>5n=QM7PXH?@xqNTB5RJS6WJIW3is zHZ-`1(qZLHs*D_#0eywe%Yl6@;lj1gg1A5a9Pq9SiEPBL(({bh5paG0{&t%nn;axUVI|H%y zybO7=JDx*`BZ#@i5lf9DIM-mAj}gP#b*$S5Dh~UZ^i#zI(kd|66`AH>g|0S}?Mn?e zajp77^yI5*b~$M7H-pRrt;KZ2+UY!Pnk30wR*MUI!yNG-C#XlY3!P7$ss+P0bXi}v z!@nj*Ax0jQW5~e86KDWX zJ;K)Ew)M(ucNsEbTvvf$+XF}XaV$lQvKbBisWD!B>}ydTcerEaVrCpU;BsAu)7^}& zL1VNn_}}Fs)#&1E@aJwD-!Sta?lGo(1}R=Nk&w&O_MHvM_Ng0fWzbcLtW75QWJQT& zYoBfXtKnw7YYjFWjOgR&42c0y6m5TKTi(~K-XiO*f%~sF8ChjvDlpp%%D^&McnvLF z@5yCVKYRBO9j2LG03jk%(*=(*K;5)>UZ3+duNU_&dfT|<-yatuGZaAB#LS#oRPgYu z-VKhwWc|z9^J7A$KBxU4e#U)L^q*1Wep9&@GW6) zIssjw8(H8)97)vum2@tAtTs}?oxu5;H0Q&MTBW8d^$K)YNGFF;xc>mPYHHyf!!mp< zc_tedX$k;M0X)exR%gx1xf17Z8U>C80h!3rK&U2IGG*A9=su(m)^f*c`4&9tpo6u@ zAEwf#``n}|6#(YU$5Lrk(T5r=azr|@;?1c(Wd8svAd@D~?Ojyc&&<%djB6}Au2Rbd2EsTP(?TEeg?+$HVkf$`!pJN_8Z+QXG=nw6gxEQwiUm0lGe z_Q1LIHLFp$;$lk~X!9F*(_yz7&X~gJk+4A9o1cYhBClm2ldlnKpj^Co_W-WV_^xa! z;<@nUq;jfbjR7v;jY+G5?9sHnR{r7lYy+9`pxY41U6VT4jtcsH)tW85MuUS~+j!Ig z%nHiJulWXsMNPk^y6?5lzBjDmxE;|ul=(AcHW_$J5+);v@$s;({MS0qj_NVN#|PMM z_6ES7H}ItwY~ce&#x#(y1xeJ4^8i!VM{Be9Tu0opVy6bLK< zEvPpZtf=0KH#>WH3u{1^%^gjuEWAs9Dx$LHNU3R;O&^%w=L^V$IQ!8VrCv(YBg+i*l~~*-*%EWtl@sI>jFV&VJ<_>R$tUBFYSC~m5WXK7WY5p z1n?H;=UTm{H+I|zaSJ9hG|M5fcq)(Q=UBB{3nIu?;_LHkpr|DjJdFCAX>Bd*K?}^V zu;6GRT&f)|x6_^IB_t1ZC_!oo*gzpb{&W>KE3t*SUVvZ(MJ#w|^c0F6$#4q!ophk2 zs7N*zQKje;^k_+tk~V>-om~qs$e=RoyI(t1(5Bnrt@+SMTY*#^HE7Pd_*4sEP0?3OWOsV+^;$8lw_A@ZQ{2VzvC|lc(3um3g-dl!lL8sH zZCfxGvA912Q%os4P7{$NvYUaRI@R_t$z#M0s`G+_%GEScvio#$5gYH9m$vIy0!^6k z9^-#)fW1^QD4AP!!bcHHRGF~@F=bu1*KMlGEgS#kV< zLC*SS`o5jpZT@~$(^0T@hkRE_XOVUvWbo;54XnUgxOMW@WpBsM!^#UAv{?-r0+U+i z_SW~;*0bw|swRUa)9MIlqbFJAPdBv9Q|pcna(%G^luWXdp=#Zj1R7CU1j2!`mLl(m=u2m3TVTfjrAzf$lC@ghLMXXxIDOfkCkp%hxY#B!Uvp1d|tBaGZI*;?Ouoj+}GpE zr&23J{{YDU0Q}$6ONAnCL((gdp^l+Cc4Z@hyIQ2O1wo4}!7yxfNRJ&!c9ffuzW)H9 zhMell2TuzVyU!9Tm1Y@X}k)RCHJ@yu5 z9@Owx<68AbLEduPa=ffkWg%ct2rF`}x2j7qzJWli{{S?tJ)zZ7JkG4D$9l$Q0zoCs zj>v3HtUhjBD?LH5M}d|WX&>n2-V0@7Fb>42van!oI00CKaXW)K1u-be-i0 zxBMWo=r{^kO5cpjEP*lO3mTGPU=m4pfo9y23#s(@)N9*Jn+{1}5=ekf!=}?g9^?wg@2e^&4tV;Qu{2EZ$#zHyW=WXnssSKdcb#VWU1*;+2;Fhh9WWX& zZcCY^UBgu*iw{6=Q=V5#?HE}(S&23bX*_Wd&fqf$lKXDz!MO3V?lo&V_4yskDP1H^ z-6JHVFV+HH6Ss?qRSS!GfNPhk#F4r;m$u3=$Ie_ZLy*rOvKh@hC0Dk&Zzm?g$QN=G0MG4TdOBGIk+>p?FrOyB^K?UXSQ6%q}L zZO&TOZKv>qP*y3F#T=3gq8^cSEQ4_u4tACbgmAwO6jaHVilpyU63D6}cP#58No#_u z`i-oeM>A+i!WGA!PxN%thOk})YZ|4C%0z2`>}I!0!l>I1jl z+qRi^6U*UJ)lzI2()QGC|vGS!a97TA0h`szp^x;!gSa2~F(p`}}&3i|Y8iFov z1Z)`p0QD0~(w#G6Wx^6z%0{gujgKP~+)A$3zqZQ0MyKMK^I^QpIDbp2TL%hgX%E}*(;=BR?Z*UV0a?}r*GRpmw-<)^&~S( zFx?(5GPs3NbTcx_Swjy|deSvxLze(pNk6p$z@`p zgE0IgmCzqEr9p8bkmNk6y~zp*RvfIlZn3u^YG{bcqofy8B$1a2?yV((8f_!bjUbl7 z6Ick8I0PeGv!P;n<8>IGYEpi5t2rcRKAKgcoS_sX@fkS-?v7|47o^h zCIUzx$h3Fr>JLyOpi%fv<`sQzBUHI6T1ZMJMpiLKmMaxhEC{wv6^UO zF#StBc)sYu%^4js3u-;=s(ks>7U<ZN==w8YmoaoxIi5+XzWvj%*IXLr5I`wW`_qK?zMj4{E&l*0(neT_l;gJdmkYxzhT4 zD=K0c$SEp_oawa5)mAsxX&Xq=`dXldfhFD5h2+O&WO&?z2p7KNrS}gZRA$EQnAkYx zEMYjuX$wRaXI-VO!rzDCO+xcAvKTSP?zxceJ7S5*QNPLAZ>ODEOfEjx+#^BM?|F|f z(5R6@wwzU29Q-w=n7{u3y&6Y~4(jaiTdf?JvAH3>U5#W@=Xz@5>odo_{CvoLZ;k1kbcTjF74o{ftAGl?ORGQ=c{!$58{ z{3l9-S{U8>Vp7Ch1GL)B$c`u0sO7hL?eR@3NeseRSi>wMg8p zcMNXeu5o5^(I>V!M^04SNLdB_th#f(TM*2t`Y{cFan zz7@aJX3xaz*{2Oev*BbkYC(7sKoPD~IZm97Z_GtmYS`!GcG7`h9nL9n!`>L6>b|7= zn5h6M=fu|KX9RKf+(RT|Eu0&x$sBu0{{TyT)~dgbrWfuK(7}r|t0(}IE@Jf=nD9R9 zghgE}4b5@ui>=IFUhCNVo;)*m6q_DA8Fu5xiouYmwZBEl3N#lYrdXCwAjDb~?s$(ZKk{1_-54Z(o`-L! zuAKb*8yd0u=WoNC7d2BJZkE=cEut-w*U^b>)>bt#t&or1eb=}541t@3t&zDFIhI8m z0;wf!__tivxR?6RILfGk+HW2y?5`dnKDr4q(oXk3bn6dQ2`gMb@Q0Br$ck(N!6TWq)K;3iEW_&0R2P6 z`d2wIZEKS<2a9ZQJ&4tnO|L{V1*ZiTbvppuE-Wv~;Pa~r(%mH`oLsHk8|@ePRc9Vo zC%Mhsv1EztV@5qSzv8~0w)3q?jXPL4aQ4guvj@$cL3set6!J^|02-E}(@i8GBJ8&j z89YzsYQlw`$R!5p7+i(n>2pv^cPP=!B_c!KkTAZ5Z$=tIUx0@i) zC>|BRMs=E5Wyr`fHSf(w4J%k`&o4|VP*naSeN8adsQaKQi5i>7r~`{J=6TkAS53$6 zs>Q}oGI&RQPmRrH@Ve5ukXSU0YXPza($$|;W617}aShnJA8IcWNzhik6JEXyX}S^h zBrPaV8Y14&_IOtte5q}X(j5T`tVZRDw08~W5z zo@l^tnVf(ZmbFni@Wq7+IYMTWS1i{H{?S^4lyhYIn>&7nm%jt2AUIa>lLXg0ca3$^ z?xrg1GltOJPP&bBsRqv9n5i6yhy%F>%uTeeeR3(>ak2ZfeJr^)&QJb4;8^LUt>IUj zWh{8yoN4j$A09z@;`X;Sw}`J)y2>JtCQC;eHug3pdH(>F5Y)hCk%W%G$MYU1;cAwv zZZw(q5y3Q_DA(MQYp;N;SsH8Ij*zowN700vt0jvT@EX=?_;fo*a*lRb;2Yj^wm8T) zu;xk9vDYN6b4w-!(&Ct(CPvj&HC=i63e1XbKXro=1JpetJ)nkG7d)+@rR5BnrFS7z zfa`mJE_`+ItgbXdGI}AQ_NY^LV0m+~@uC)^BHNF@c)Qz9G!roqkc`$M+`Xg9g0jsj zfFrXhH#}~9C>s%D9`;hQ+n@b#pkz|4gF$vt#PFa~N}JB-)p#w9sJOCDAKF|3er6`x zP{8n&{>tPBK?Iiu{5&d!yeT0U79)kYTAB$l(8AFI%BNlab#!Ngw`G=Q zharZB_XgT>(ygdsiDit5cD1>JRNkhDNRk%?Bz5LcdxZv>TW}oLz>gZ3sC;74jRNh| zur|_~A_FRJ*h^c9EpcPdN?I<>WZKJn>u@>L8Qcr)+~9H}_*S4Ih9X@+Vm}dU9z5x^ zQVaxkAtVTR-qyLL=v$#KJCd_Ak1Yq=Q$djw%&9Uk;bzxRYQU9sHV>-~CiO&~>n1R? zXL9qu5%$y9MO*hA%)vq0I2)RO%{3>y%q##5Mec8P2pHl@ZSC{k2r_^Q&Ng)-}0b!k98+#f=VYb>!(suIQvKw3DUO zfl}JRxU=BFA~Z21Y|L#etXK|W*C1AGv~(lP$CoU~7?N~jZKr<@7vbqxyx^}?J35wl zT01jsQF5o9%}f&5vMvC0%9kOpWs)=jRGmt<;%{1L&%A|b?s_OKA#FDw4Qp6~7I0*d zWX21J8XE@%hU4SW0WjAEG9(61P(c?iEQ6mx`kjg!(+r|B)HJaM;KMFv+T&IQ1nJn^z8xH1<&k4$2yXt*#7~&2 zAD6a1hC(vMbtP2aaZo;CZU@HoG)7NeC}qgT0LnscVQm2Br(M9`Lr5DGhBl9TJbf=| zn_!k=NV^ShZFrGNDAN9!l~q&#K|eDB4-$Sn4IqPt8c0iRnN6*cy^_Rgr6L7*e^1*% zQ`2dk{*p9~a?38AM3AQeBOqw^mf_*&R5KWeqC0OCM59I-u18D(xfl&REm^HYW=Iw> zE=i9T(%R`^6p~+>uq>~k^5;zylQSplItjWtUsi-LFSL#->Hz-$*naxB7U32pIQVi( znGm8+G7ySom5PD6z1y|dTaI;P2u?Q`{fv^_&hZ@d!6D~qRP`p8wLDFejP?uI8onyAXA*x7>sF=~> zm<)0ku@J>0q@_jfLcYZw-a`7;sC<3@05cL9BFTm5=urtH~KrX;wGC;~PVGR9855g?!HB+vQmlsD@D^g$7j&_O-pt zb@zE`Ph?sQY2P(sWswvr^>Sy&hEAZcvaG73a}&(#PZ+pXMl3k9%^V1_8}6DI`esD9 z7ur_LeG1g_%_?rxxsj`hI*|e&+Pyr4P1bfrJV5+k!mPN9Cr^&wW7 z_7k;O?bI`P_*0(0%Td+B?j6cCIQg?g@i7q@*fea+z%rLz64rUolV~>T18KY9c z%z`FqFY}`}y{+rC_|y@PkC>9 z<3gRbQ6~7p#v=$hsA zm(%U7e+NYV+Q)43m76v27zuJAhgW$N4eiK?nCpKZwz2;JQyzv(F4a(&>lBHwI|VAX zvd0mvffPI8^ttTint}8JhkEz|b-`XSfm0ZJ{x!hn2mh_Pf||zu!S0 zM)`RyAW<@^9C-)GsvA*l6qfrf<3Sj`uwp^*6ENr8Tu`hG(zqB7wK)#0d5<+53 zqjizuVA5Xt+^`xjvD@t{=Rm=clKpSeSg}#Imy8n|C_0UjixPZPTh4&RITMG6bePb` zWih-aKAMt7&8zG`>eN#L?-ZLSiy|z^Vt$M>Myg{?--z1ao?K~QyvVSIc1c@vZh2x- z$RCfgG`yQnGf-P0<&Fth%z&03r#NK>Hy+>s1;OxPRt(a?gVe{DE#z3rY>m*$UPL+- z)t_h_PdaKd;=>jK-<6v zM{6$bTSntiS+-0csx1+WENdAqtkJOm7HG_c0d7v88eoX~Mp4R&S#rdRTlFE0O#DUf zyqM8#`IP~x6_plbF0(qY!&bRjBLqko>dMGwZP&Gd`zlDJ#gQRlG&ur5z?_ATe6dHp zwyVu&Rk0e23$HOt4L57eBys}p8Zc1+%0M;061WPlZ*f#h?ejWbpnA`d8!ECO#xWO1 zi7zCD2n8ff-g*(jrUvFbo7_AC42_F!nYy!nEud?<+FgFy2gewW8678(`00Jt( z%gXJH&kJQkCKOoA&xoi@h|-oVx?^eWt+x7_wviclnR$KIS)OIaiLuk_U?NuBh{Op6 zk}XL(1t8UxT^vyIGOD@*j*S|rM%f+6HrnL5cF~5qR%#_tUNSc%o&uQhG+7ZM%I+Fx$G1(%Ya>0#ZT9)SwxHD; zNJ1GVj&bt!P?*)d*4toql09gpMK=7F#{x~HuoCJVAU@w|7q>0OptN$akzv`98oFPo zTlEy)<9_DQo;L8RGs!MQGCXBu5+ea5kG3;4?mv|US&r0(L7q@>27q8X~x9~l@?3?0OUMZTq*Z$$Ba1I5*Sdjkg7FecT-W#&Hc9o zy~VSp%Kd2p87q^Hv&6wbu|Xc*nA$k;^W$2bnAh6|1|fLgEaXgH(Idu@%NT|}nw_U> zU6b*hEmDo*JPFKx)RSrUE2(>x(}U}$h^(reDG`c@h18OIwpX?P0PTp?i+n9=2#zkK z^G=S$DB8%4?oy)UwZ)it2NVpBNbWwI44DZG%3XILai#c=K~O3@s2XV@Xu49V-5`}? zEbV?HX+LEFCN3+YG;NWNcN;u1JZhw$aRhE315Fr@?cUEU(@0&8Jb-mk5fC=f!s@%M z#BMun<650TqX!oc0(m+Zu;Pg}G^-qPOxNXUK1ADV+SK-@EiOUKo9XcuGrg~r?1bES z4XbVg=B$`>P{br?RO9j+M=fal!A-#|zp7Th-<4LxWoku$J) zcgXRZ1GQH{_(&j+U1%<$l4g`{a=_SV04Cdr2V&mBfoS-$>;Z^a@6+43$O+|Rs~<3E zE51GIsPegBt}N)S9=Zp+bpUS-YKbwSu$7WB%w)L=>Mx;HASn&;s4wn@A+$J%DGXjl zdjfdwYnyy%5b$G@5J>m2CeFwoLNB>q_XKjeriA5o_-0+bIVOw}I&wVE^9@;7OOwX? z>dGS*vlucM!PJjq6&qw1An*-$HeVe{Hswo3$xE!JJ;<9Cgm9gxY(U_Iv2bm~R01Q% zxuudfi5U&&o>Xnb)BFbX1MUm_SjB?J>6aN6l zP(#Cw-25v40L`CfkNDW~GXDVN%1xGW?F!+$ppFs^_e$4AYjZ_r*NLu~F^zX||B1|-7_S7^vpQ1tYh83r3=Vy@4BmPureLK+TT~e??(`c^5(m5$l7L+ zffg#eM#UB?EzY^Ry(0e_gOAC-@`{v%pd z3ymyRSXr3}+bWweHsSy~Lhj@IDh_9O>?_=3!rzb5%Y^=cx-@ad4fe{8<8U_oBTC;l z5y#K{pWkxwcbVZ3N?Jn{VXlOZ3bGJL(@o4PbG$-d_D)O15@5}Wa+P;aFH%J##4?_x z$Mr3#{{TZ7)AlEJcN?Rd;SgyayBPa$UAeOuTFUn~8T_k$O5?0x13lPkDl&WNK)5xSNjX}N{; zHsi{#v|VJ&?Rhu`HOet8jT*{hz0H{Dt^Hmitm-nnc>)|*rwAfvFVftLCgKmwpnw+K zFRd$0Sd-w#l?;i#%^5~`lt(Jd$9ZB~iTp;h*5gvWlR=v%DwLgB)$Kj1JOs@V44lS3>1JDnBa~`%7V)ny)9H2AaOrn0+uFOHnV9R=0?RUc z9DGHu@vd{}V*0$7e*LXKZjEQek@7KbVhH_2C;cOZdU*Ql7n46|a{uLs)U9dqEOF71Awj0d*4%_%>I11GlpS{NO zMJfK~@L4aZzkuaQ$)h*EUU4jO1SxIXj^cc*YR(f_=kCI6hLR)Gb=6Oa=1ppFYKOSW z><&$xnA|bo2c@I0I8%duBd-eU$2iTb7^yZ+W-?{7jCOx=MWb5BSV(= zMRf@jjejF{Kj&Pz?Q9sIwlMI*%iJ65GC4#E5h?WiR`dHQ*LspVxgF7Qiljs_1Kg-~ zsPYwzX_d2xmPw;xdZ-nG@;v=Axj6jzD&^SRPeFAPS_alG2bxlw8}Ls&z$rGdm&1 ziP`U^f#b@WIvD=|wtJ(wmU+`1ImmA0ldXb_d}}wjxm}*i`*#ipIg>NwPCv3)cBns? zd~26|>d5ZLnjsrxUYjV?fG=v~(Ngy=v~MB-?KW0CZ|O``VV5RmL<4-*+&L>Ne_BYClwHaNp8D8S%~o#jikaAgSPto;)Yw^w z=YDl~xIEtWzv;+88iKli3hv6wknsQ_Hj|v3{RJ@BPX>3IBi5KJ?)PrC=I{fZylb6{ z8K-iRNd%i^7xp()}K9!lwiohVs#gaG4Qp$&LMmGc0UbkedyPd=LA)mL!^tmqvLf>*I18_XFCc?RY z&8;IB_g{2~t}A111OC#6Qb(T}x8`ehSMMi@qd|z#%(f;XN`rBrJZlr?Yj2?bZ&)O*I#_=ocSRmBF-XruOilj)KYV z4|Y5+{HVHLNEP?JzcYARn7VWs@W#Cu$P`nnc{>`m-AYg9|Ulqp|2 z3g~QYrz1pMJb@c+h&*mDr-c;2vaCuGh53&GSp?D%7*I)Lp)?dRNN!l}KA+B-62+sG z0Dz8qk#DlJH9;mjs0P5^`f=CH)@-U&`Iz99S0s)hNHmZn<`rSN3aQbU@z$;hDhqC1 zRE`Hr)kb`U#&NSDLMb{oJJo|TWA>n>4XW)-EwZslF|1`%fH&5)fEcpN89}vT z2H}qrdT7fw225t@X9K|N_tvF}VvCzF8zo*G$g!)5srr?@_4KKRyIDp!@p^L}svrYu z*pS1Py4Ma+h_L3&jRQto9a`xc*fIim*y~!oL~et&;=>r()Z80#nE>1mp5Ge9=}yOv zMwB)_(#Wm&y~Fx;kZvnJMcQ_8wn+*`J&KVXh(XuNpwHYQ$F-IwUEo>oy?pfHb5>Mq z?ZyC%lZKW;szRw33I>U%%YJp9y7IWAX7m{#SQaTr=`RoYI$v=%8rlkciW1I=Qh6$ER;YRzTdDrCdI| zh{*9bNz-D90llsm-I+~K=+S`L-89}JGDs}=?BOL<c0Y1VN15VtI@ojy ziI-xYCdX=z4NWj(dCJNcq{!uZkqyYfug7`1pMVF}t_r}DWU9<@lmgv0g-KM}+(=QV zBHHSFs$kQI5gp*m>cbiWS9Q>kq!4Z|{Avo#kro=l7C^Df_@YKqZhlrs$VR`36=06v zhNB8Y2%uR}}>l+_C+s37;Wb3rKXim|&EkKglMbsRjY z2S^Ffb>7lUiEq(I5zTXZDzF~zceRfy=T$i!%ju?%>EnwYBO;cSi0iR?2N5s2<$1Bw z!kCVq({_nhsLpc|FiuLU10i5^kfT|Yk0I$?XI*N!^5V*2IFYzq$&(&Qy|(= zTV5sGjdfv?Hp9aq@TPZ;HV>I9s3{}zQGO~p+}pymuAWz8UgpU=xx>vrsM00mMp-zK z8=cWP@dB*t6_Yo!;xBT?Z0X(EA`2YoO3fsQ;aEE;_cEgmLhd7v3Qmw^cFbHN-L11T z;LI~-^*#b9hNhn#P(*8#E&;E8_*0hWX zyNoiKavB_5R0ZIIY0IfrAybdHHEJ=}yT>XSQV8&!OjAP1B0_@J*sMVe2=m)|>0o*8+0PQ3IN{D1{{Y)L zD#V7pmc><0?>p4y{{WOZBx@F_u$v#grj++I%l+=R-i2DEiGiSrn^c$!?!W@RIft4?TYB)`%-5 z+H75?C9LZ51~INN0ZptdZ{`gp68TBeg+$TeW=INSM%_N3H`;8s7hY?6qVwbku$&ow zr=oh98G!Uv!q_#+D+Xc9N&)7>iy{%%X)xz~}f_*KA(dt9lMGUa&k ziUOGSEd{|k##pqmo_{#pYL0|>*NJ0DmG;@xSyVFtqU?SEdejS@W)LF0TO~#!9kNLR zt1{ljhf?Ql{#%Ms&dKih*y_^Hg_Dj`+SxA&=15;VBnHwJpX{J?+ zD>=%ncyms>g5OQM_U_$#?mn8uj#C?#>~5kx3h3JBbltJ`6|H1(z6Lu+Df~tHMQb^&|s6eWj}LK9iABw9DU4o zI|F7_0LQtO--}ucw}ZRD8j|2;Hp*JmU4{X`;`4#OyL5Q@PX& z5xpC2l>FDygHefAH0wnUc320aB)~qSTNyu1TWzm!qwS#1UU2b49%O*Id1Q_$0hC6{ zTq?l&5xCeNaJ5|tY-qlscA7a$%0-L1^-kS4D1s@TZD zbL#A719$XP!JKzEapFj($c_a7BQaKKLxX*ax8AnD7F&7K)N~?tWF$qaqe}wx%1gHP zVv=r&!8}j5<3w-9c7iUHQAY+k`Y*`A_HF1E zL?ka8I3I{uZngZWf-y2=$Y0jQXd2u>R*k&Xl{{OwK%p)r=Kka`MEy5A9yDof{Ur+^;CBstXe)y^b{S*p0xxgJxLIRHggKDhEJ|D4 zsx5MU7pp_>lt;2)v7sF%>7fUkvfYDkH!H|_R1#2bJ5dow2L79GsShk&fB*r)0T#UuO>pqdd#rvXWSZ9 zAnRn4+SWc}N`kXIa^p-9q+2E93hIaYSy_mC4?k(E2Qqxl`jSVFlM70Xw8K0hjOv2h zozgPW0Nf419(AlV$^QUy_KD_@wn9f7Oi-l7k%yYb6Ly?6VOjO6>Oq&)kEpxj#!Fe{ zU8u-;qqU8_Y9pQh043SVta$m6yGH#tg?B7$q}YJWLbbIwQ&$zxSSEH7AW0E`5tWhM zZF^jcczOJ4U?Td2R%sNCyPjDHbw1O?kC)&H6vSR!sFq0}5_M%LtYQ)=Azx6|Abr|Z z7P*iDrCvTR0KJL+yW0LW1psA?^yEmHPs~$#f%!#>wzL*Tkx8}ecsWuuw=Oz(P*<*O z6*oIx%2=qq&lO|0?x2R6Q`Ola+$`&pK zx&~GPGC(|HH&CE{Q?)fdloG38%n;eZx`H<~_=dRG;%Fs>(|9hL-0mP=+<;&}AL*c= zC=$xDIqnRhXV4-gRM=jIBj6WM<= zHEIlVe&5ZSd~kugYzlgfB(wE$9yMmB8D}RM**o+x?b9T&zmKo=jJAq=8%;^}= zdrin^c|11lYO?CP7?`>F_^BUsmA;Y{>9!PeHs)Y1-&rTQ@BIUZI+v_WZNkHc9w8n! zG%@3wym9;GkUJahyAUH^Eo&M#0>}c(CsD0%wPNfy?= zhllg3s?U>@xK8+LxlYmT#b62dwws$v1sr@S5#jPbYxi}DS#iFXtLA(ZX`nIP}FeoQ$w46}w_cB<=ptbJJB2 zfw5F5B}Wab$OGX}Dlw3#@iy+EAn)n!RbLIX!F`25EL!Y+p@1gChJ;*etxOPiqq8v# zpE%e_RyX`y`0~9_jQngq=Y=K=iEL&gsQ21K1Ad@meSLm4Wy2hdkJ^2=BM}fz(3lOn z?5GRIqQJ8#RMU~IPo**Cvu5pRq+tz`SmWJ|!56nwkQY|2vW=a-4*oL{yH-nPSO{d5 zgDf`!`$I@s;XJ2)S=yP(hdp5>m8IMyK)jcXknb8Q85;cCUQej4u#d=Nyk z!mW_1V@!s(U5AsKHLE*JDn8GI3I&bIM!REGmBPjey^X$OeNF0LE9_g~_ZX1u$c|90 zZL$rzcn;IZ24p8$r7-YY|5+{0pdXbee|5+?BvP&ceKc;vtvz*DYC9iV1NKR zA8)XHYp1<)qZ7SEozMO}_XU#6=Pz4%2+!y9F|0UW?XnaXp{?*58`UV z!r{Y+IFeapm6YD@+JpTnx>Qpeq?Zw)JGl6tGED-YSuw*12}EOdP&a=Xl$D=8F2k0k zGh+!b7Zak8%ja+@&8uElGYdBsP-TiqA#GsDRVRA#xEHbYuSYk-71GB2v6(a>vSds! z;1HJTOK>QYIl&&;ULmj|yiU}wBj~eIItBo0W9jiLc zG$^tT60f&kJ5-(6xa8vYJcXW6dr8Vo+hUq&I&p#HW2*}3?#4A?e%Z5#YlbIFu3CI|#+e0xV14BC8gLw{doCVdZ1JK-!V)aYZ2;!iJk3lFlek0D zD4?WC^9^@cdGe`-vWIfY%A=-qzlr$kR~Jly!jOnbU@jyeTV5m%bY-n&gB^}TGxYCZ zjsa^9Eq^+tUp9O!s05hOp0gVQE~ebWRZMedKovyMH&Hnf7ausEJ00>Y#PZL_iSjJZunp0c?yGfI(4RBPoc)={JN`E+HR>@{TiH(%d~IEQr5kX+ zZ}$xRgn}%T-1?MOB&yqsTZK#16P5d8KM}+;G2J6=N3ke=K0Z{P!b0$%#fK;-LR_4L zYavl!2l~*xi~%4R4i4 zA?Z+7ELM_N3_``lZ>FAf8eql|Ow5bEBDTHF??AcmOofY*sNkz8@I3idlyhP2S-6hw znF?VC`$0o7Ujw^^YezbKzUu_#q{dc=-{cm$_+OQ7NSenNcFdbOUm2MOfiVjc8iB-< zrEmUet@xk2u?9hpE;ouZpb>lSZ|AnT-ZW`V&l+{UZ8n``K6or-eKy8t8w(Cs$+ zsEq#ruFlUW1Y6lxdf@8#tj=RW0lVB`G&y5621%ott zkZ!BbU$&YuoM9u7)=~xU<5xl@ftZawqf49L@2yHIaikl`Q?PLHG|^BU#>;IdOC2ic zuw0niXt`Vb#9V#0s2p4`&Y`{<16dX7IkD4UD!3}qyq}2r3Yt0jovK+Mel)5WaZ*VC z02V!wDk(g0`ulo1U&l*T_A%%s?C{1*KU=D*Hv*$+Ba2$R{?(i&IAIbE zzQ+8`dyDv7)zrk{V!lROEOIkQE>v2?*y?pPp1Q@5+?WhgZju&IELp;oDlco;@%60p z-j*{@ktA~ftPYkuNF&S;MRbvpa`N(HRhkDdvAykOQQ^wpZC+sXU7NW=F_H7XM>8ct z$c%^Gv|Dh{+!0R6vr!GHrh9{Zd9xjw>6kgXMK+%f%@x6LJUMH41E%P!Uvu+Q$ z3oU>*xAfau>6(kib2An)$Rsl>J|xiC5?AJ1wXbi=brqhom5_^-$O{V3CQ={NjD}68 zm}NSS7x1gPV?-HCk0!y?4KqHPp&bbe6BiOMYn9N{S3vzkME?L!17*!O_a#+br_tCTx7$cKiHRW3>rdPA zW>s(1icl4}THF~OeJxtlbUSZvj~ArbxG3(sj8c}~sHERxAt!5i6FdI zw?=1BUL;uB2@UveBWK@EZk3%Ro@isrnM82OWsV5RbyZ>QVq1>B6rz^Tx-3o8$TnFl zBUM%7cGCXttgR&P;E+Y@3H4E86s(U{7hrKS2_- za!&HOXu_~Ay8i%e%jz{0s_2;TQVzSv(CUT(m6@#I+i8qg8-LNLIr+GK%6yRJB3;N5 z6C{fsUB}{AQtNN&CxvQaFM=JFu(KRw$dVGwI$>kyxL;%c0I67O$kSBW$T1=vJ=iCh zP&_SHp|vq`=5~0-9J*PQyQJXoBYL9-`zxR5=SAGGF~qYOS>eNVQ3wqYjh{wjH@QAG zwfrjHEsHKX(PsA?h*l|bM^aQWMH2-pEPB|6k89seK>I6{`AFTm&4Z8IabA4!ml4U8 zEb)g0VI=L+9?izLvybmlN4I>@R8kFb*-yb!ngse#i=+o7Kq zBOVo&TscZh8ZD)YIWFrE5wJ_{2Z`Z*D(K`#k=vliX|S>8nPG{y#LFVG$Q-cUpjP8y zai^VJ9R}_hYY)`UR}Mr0vod;Ne{!+Z(we7HHs;6$eMJ9@GVoyhy>D*{8DV4}q;tup<-p(#DZb^{DwV z79~U?Kv>^tMtz?R{ONkt*GsqHVWKdPB3#K@(n~pWC725lWDJME?mrsE8sls?5iT++ zsO5X$S+E zDh}KJVa9^2F(HV>4#etjWZE|~D(e3LGhWv8@}OG|*OB_M=9g7fR!nzSxEe0-hpN`S zjm_$dK?@{iY2$Lj;Kvg>^%aGz@ko8Dzm*u!PyS-K-0K@5-M9yT(jSLtUD_Y&psY$G z4o*TMi!^C0WkRC?@{exYk@-zUS@Ln<+{Q!ImNi(z$OJ_|I;#ctg$IE&F_K8}otG)u znPkc+a@-F_LY2o?NLz&KZtb zTuB>aWTwfjBZ!D6+K9nqU=-_bzSPqW$Q#*Vkj&BUyRJifFKaHY8JBV4djnBPpD!jT zQKE&B*s^bx%CeQ?exd~<$7!jJN?P|!j*$%b=OxKl<;E`ijkOEMV+xqlL>R&eWSbsi zkC86HBYeb#9QT44w=?(D(BqL5AflEC4(S~SQFmIv6$F!df-$?ZObDI!B8{@ks@b^O z-ra}p^Q(q8-6i%gcCjiqDYcKCj+B*~3}_`|?;*%L?%RPSNU#A&_-k90iwg!}C(7lD z4c$?;G(2p-F}U)$swGPhNNtX!+0b0@*K+$oYk5=&SY%@(k`$fAOa|q_=hKxoD-AjP zYKy_qQ?XTxSP6mKa&2?HSBrTHfileUK_WCc3nami3DU?FxL>BMx^f5I<3PDx^B_2w zuM_3rqOir9DPlScUhMJM9z>}XaA8jSjyr(u+4wDsoZ`$@R$*d2mM{zJen3{eM@QB-TTr_q#RW-Eg4amW=`k=U;fbwIq?`)m-NqMS0m+*u|J$$MOGC0rwOv9owo4@7l^ zUlqUcNLD8-zYATqBVEfeH@yU@Y>C{YkxQ^{U7(j&(@l@Krq z9xJB6bg&fz5=JP9RYQ++291_I_SV7e&YCGOBqdtSZx6AJGvl^ZGG1s zl}3bFm>D&22eh@CFi+y%pkLH3loY(uPJuv{Be!%+qDyFhP(9c!{{RiXGzeKzSm&Ap z1QW3_ODh#;J6huMCmtLxr8Qa`p)Bt!VlQ68@-nNEtT$>&v0sfnsv>8eNZE!8iq5W4?G9AiTfJZBUMd%45kVLSkATS`= zh&xXoe-ZW?3IdE#Z5y(oB1L`1%gllY_)tU0*JqN!Qrl!Y#&5_l7v1onl8#ez2I||| zs@q6g@VnUC{j?FbIFLotF@bKHLe8Vz#_JxRbrg(#=M=e<;p9mib7I)TxxxnCyT7#F z>!SFrTt^o>z4x5l$uYYyP?)Y7T$rU+4`J-xEQM8p=9cAKkzI^F%yawdD<)(na}uhSng(Il0G^Q|%pxkLF(tnd8c;T7 z5CTi2A`}a_fHfZ|EoLXrZ3Ci_Ws7@lV89NfcTmLsOIuG?s*1_f=`>MDVRK*sZNv^h zuH_>BAl{;@B=MqsK1;UQ3PymWt*F-Fh`BeQ(AQ!V7jU4d-hIQJ{k*)YgL~`%oxhUI zZb{?B*q;m08T*D5dC;iHjVI};+PMNUhV}>Es?MdqGVt)Lqbyy^0}Tcqe2Ix90b*2F zXBL0$l`aV&0mSMmD`FuIBUai>d&EJ?n;tI2fXV182v`DRu#I-eMZ%wYlfjAFT($oI z6#{0$4Dn8366WficipuT*U(uu`dX;fBC(TdF=i{JhJfx09 z)!H#|Jc+fc=(`y@agxN3%YA~!zyVUwuAFm{q1%qChlj6~NC`2Oi*5y&aFFf4+G>Sn zFO))hWAe)V-ynIjDL0tKrB1ViTdy5m{=cN`foY|fhiQ8)* z?UmtwGgB3TvK}cdl`w_W>dmM(^Wj$)Q2Ds-3rN75*>;h`#-66CM{~zvHYxh7axT%x zZbzkD0Pl*C30@YBTH%2I06KaaV&~#yt)nEZtXB51KV@gpbr|u_8 zr6wd_jn1EKW6I;3mD@142_nx`vA)?yANN;Yd#v71?U-gsdW|G(h(&}V>9}*h6HdBJ zcC1LTVk~{$C*xd&zGk(Gk?_3+9_@hB<2ym7N{gxSw=359zDJquk>+LOJXp(lxVjPT zQ+pER@U?a7qtru*kK17Z*u2ayCPlcP=^uu;+pR-bxgeG-tS%VT6_QCHdlu=XuY2tl z^EH;DpIwRtvT`DL-$fh2YSh%MnK<}TN4^Oqj5Uqy&Yv38>ZUTzCV}?do(ZfJ5(1Uy zcGTA8MwlUoV_8}M0Qk{CRT_EJLZ?inP0b>sHv$0mf#RSORtC+ykrN1{S2S+crVAS8{H5I7N zn%L-cy|`Ym8aDz5jjnmrR!pnJ?=H>7NG?wyzYw336y<7k#sA5H#W6B4SESkWpf_n#ZkP>Ec^$24Wmb9Q?KyKxg!y{~_Qux;7ToW^{k5sF8OQC; z*A$m`l6Sq36J$E-Nm2aj`_#tle$U%tZlq8Uc`>_N()YKmX7;$)`0yhx`LIL@?(**>ISx{Ln+D^<}}#EqP@1`IU@uBkHPo=!?%fEtRrh?)pzP?E&TRC`=Dw9q6-qQ*5g z;71?6u83&jHx?*)5#vy2ktJrdaWl7(Cba}~GrD~}hmXsr3M0QSddX`=CO~HcLQ=_p z2Jo&ElT^m<<^<8`ZfO>d7cwMCK~&iK)br?fZ8;`$0{%+r0v~x5S37{>)vCkXH6_l1FF&6nv*WRa)tXqpC zR!3;ZmmJ9|BgU(5dbDpC@*`UxI-GXCu1iIi+0tdhGkrYf(wRtThMHUjxw!mVR_vYr zq^`y;PCjBpdz7$8k}f8iFVdK81R>lDU)p^ug`T$>)=XUZU#SGe8IXG>P&T+1we9jb zuDHc6L5J5#45$A99%4`e2(f#qB=X!VUPkz`yOYY(r$?hJDNd@6A2q^&@iwYzV;=JzjPmzf8Q^tzRt0hH zSi#!XI_=mjEx_)zJ!~B*=fTbpzfi^$EO1F@66`m+k_i^SJ68^8Qo7v08!_W$bXH6B z-qItBe^Jx!*1AV3&l0y){-~&#Ez;-`%nFh&6@~3?Hofa=Y;vk994yELpzRScD}TyV zes3nJAir&kD0c-2sXU>#tZ>>TL2HvH!KmlT=B^7*f!nfsj!gdmQ4|>%@@$>rC6Ke9 zmPI4PYqh;U8DLHzkZ_DA_=e=&VU+xEzL+21YrU(o6pUd5K8l7DP#{rOm?- z-s_7~#UqE@`<`AgIM}i@5ox@rDA(6=mO8f!-u2t(%v#mk`#_Voi6qF94BU`Rv65KI zhvmJBw!DEgj`|&(X(z^>C_;4*#=l#Ce5BgI^!?!g<*kik`BNJp%@k4*3@C(|OAxZ~ zI|M-#t^CfORhbZpWzNaRVIBbFN@PIq-~NpNDMy;8CEw%2k@&~l}#a% z;6s#Pe2CW%>6YB#CWw40# z_5p9Dkky@klx4`m?qXqM&Q$p(C6WEM zWP?=NKsvDJ#@-b=v}kn1d?_&@S*6AWe@O@;BfE0iMh&!&9}3T()|zEVp_oq`A>f5{ z&XRQm`)m}2A)j3}6!S%5`h-Ykg<0ZYqEDp-z}xOsDQ=+qE$dKi!^_9Yl1GM9)eX{{ zSBgMwf9<`M813XWr;|rwOV8V}aJIvZ5r8s0&5scX zp-zR!AhG`dqd{2WUX%L{JTb_iNiXT70X6wLj(2!&pigz}vShMg#fv03Q2~*UCNzVr zSjako^p$UAKWpL1ge@<+IA$9QCGBz;2KM-iny6xBywH{<5&~=|TZU_X zRQ8bGbu=Ny&t#G~l%33_cE(@k8{gQZk;w6&n4RalWaGKr?tx;NiM9CcOQ0Oa<3&bG z5)~66qMko9&{FBnOOt~nlzL9Z4_+~Dh{Sn z%gFx#l@WPFokfl?7H<;5MgV>*Uva-84HZ_(nnI#T*(H~NNp&MZ^26_2j$ZAU29l! zA;y_MQ!*kyvk_+6zmQBeyDbvaA?rs3FvOx}c4~g!Wr(s_G9i{6 zVIYPKwoZzY27$mk#=H)I)V#ON(@Ug9l41-_c7j22Se+K+9p0w1jh8kzoEY-sLmCfu!i#!4B9J}NNiZ@oBIE@YTCtp4A3F;q zw?lG5wpk=_RFBGvNV^m3r8P0GM@Dj0iB%Vwmc>Q20fFaNQwyE9M9y2cHRTONfB6n1H5$v~x-Jx(u@f)sv4N$zU&5hjJ1j>mcNXaHCUF2y&ADl9{w=GRs zQyiIpWcG!~2OZ=_iN{rCUaAmzC4@xV*0=6D7=5oBx8h_5o#WVrBoMr-52< zYk+tKCZG;X48-nLaPi@@7kQgYw!i|hA1S)-Rq_PY14t!^sNAs= zwWI-Bz#R&yxEJ)O6w_mf871JdEFsi9=j6#3`0wOqD%Ep1F zNg-tVl2kmFiCX7>x7&MPZV6t^JYHoqFW5t1d76yxQQGB7D2kb9qS_bL@O8gQo3IQTdbvy5ygASgEPR8TZQG_n{kZ=Tpaea7Sjl1QIF!kZOvaJu*aDi6$A(_~c68dfck$pLEs50eZWX&hj5f9VGfq<8- zARB))d!t9chYF!jhy*)l?o*W@Br)Rzg2eg68))^WheO+N@i8AB7z{~m)_2^yiT6kw z-MF4)&@lp}Vk~y{#t!9I1bev~kG|CfqLegfVvR^!tcL5gFR9fuwFGowl1T)M6QL{A zB$nTAk(q$tzm(8i^--Cag(PTqd$0IKj_a6T=2teLhriNeV|5%@lGXmq}m0?8thB47dIrh?|@ zjRGfe1Z?ikqWrGFlda9Ir9vVzET|@maj*g;jRJ-w+g5wA7V@BT0t#-v^1mqZ_?n{4 z5)FXZ6UB=jJ{}~{ay$6$Zw^2FOR~=#yQBzIBL>pU3H~)^D--_V{lgiIz9LH7io6j- z-ACKRldXkn^AX#^%*e`#mm>m9DR};-s>6@9g|)2Ng6RZdQBX8sHu4bYN&Li(Y6zcd zI+kWH_*U9bXxKQCF5CbdJawR^!V_v;t*IwKKFS4{_Qp`{E)KS94~9D%_(jysspPW*Y@pp<`cZ@`a; zHmWl|4id3KB!~bkpx@$ea!H`G_WVgAc(M=Fz}6cXMa8^GwKOF5KEojCg4Hro7$$wCJH0{G&@>L0Q3&_c-Hu86)Z< zi#gzTUflUr70B+;!s)n(3k~iYQU@#BL3%DMFl7Ox!^r6@->M8j7kTkK&&IB!k0*MW z9!RD!x+4JdI{>PA-rUb1D|3yB?G~T+H)Uqo^%9}^U6FSw94rY2r~K)$NMr9^!Y9}P z#fbilvZzwa%R&ziI$0vLV}9H1(_NVMv+XxWFx3GC*fgQMZSg>nIXkic^Dn)%m&SLxI8{I(aV}C@>QTn z3}PoeLP<6wPjenxXUG!7 zo#`A&F)+8ui#(rAl#a=AG}^x}{_Zu_R8k4MswdM#W;@N5Nj)++e7rTOWEh4XLXu?t z4kba*l02(<5Y?7QEXGrF!AleW0HsSIuS*y1KGV{T-3fTq0|6FG@bDnl3(aa*QyU8j zHs-*Q87CKIPjZDm7Ps)MTS70|arZ*9h2C${Bic_rDqU6#uIrN)P=^fS9-twb+Qy@s zHSJw_hAAAdt}KyB+(t^X1}O;lHNC|{0m80oBRX8(;vvZxNsShY8cQ-1Q>E?(o>Y?q zv>aRnG<3aRuC+4ScsdQkCnAGWE}D_ zg^RE{>ZewbP6wf>C9I<^TxH+lO)Lvu1LSNu65^X=ZaoD^12WRI|;F2q4X3D0#|K?2IH;x zY2!eht{5Vr8!xqu#|j6D_9%DvGw@4ox1|GY3Z0BL+Ux<)d};=x#cyd0ybl}y016_B z1|J9y0!{5;55|FWVzg|94^wa@k1PBss?K0QRoR0pk8so5>s1{bUV|YH>R5sX)zYAZ z!7XCP*t{%A*W*wsOl(zV+-=}B=jl``R9K4i>{Z9L38J#RaWX#W{lpzt{Oahm5Qvj; zPG|(`02)D34THb)@kQnL$o;(c&V-GIieZCy8@iY~Z5D8Sdu(2HP@u1FQWlQQU zT7n{id8AC Sk3UKZ`)&UK?D*cUEC1P4buf(p literal 0 HcmV?d00001 diff --git a/vraptor/src/main/webapp/img/home-bg.jpg b/vraptor/src/main/webapp/img/home-bg.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a4d2108a3fc3c20414a6065d1a019d5bd788b8fd GIT binary patch literal 172779 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�-L^x4&McZ!dP@>a=XL}z6y<)W= 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 literal 0 HcmV?d00001 diff --git a/vraptor/src/main/webapp/img/post-bg.jpg b/vraptor/src/main/webapp/img/post-bg.jpg new file mode 100644 index 0000000000000000000000000000000000000000..21750a49b05043749df1d71e2ddcc3ee933a02ae GIT binary patch literal 140909 zcma&Nbx<5l)abpqJBtMf?hqCU5@dm0++p!0xVr|oV2eX=Uwm6)sk)73pab*kpb{La7s{%r$DRTWhf0chv|fX(v&{QC|dgZNrI2LR9j zm;eAk>RELGAeOUnx3UG;e0wg9&8YVgb2Ms`m&J4nk!_=|#B*%(iNh=kiz-}J;xv(Qod8x~aBW&fx28>kD zqe@3wi$KW!cTe^YYxCN_kc>N3j+?JR*T<)U0# zU}eojpe&ZF205R};YelmwJSOkAC}Y80;K#+-PR;77=q6g-VKxU_jDEqgS_~l(xejD zV)osK@3}6~BeQoS`bUXgAWJ;gxKt#$BMfVWor+T*8x4Yd703cpU0n6aC52(=90gWx z;rnht+?(Fxe*ge7*IM^Phic)}O$55=Emyigx+YUBf`P!Wn9(LLsh@QydFM4vKZFCz zpR35bF~^yt#f_))Fn{UaNdG;sfOCLhcRGqUSx^p3ol*EIis_PktfnJ2G3($$xx2UYkY(91NJJtyklvC0b-jTH&&)kUvMAn z#cu&DmA?P4nwIczgA|evaEWN|{*TEAEw8doA1!wtMFP89Eu3w?47jmKqgDARM%)+r z5Ae3o`($Qo>aE8_Hb-q|;|^;v_fp0sZ$;8>U%I~mG|lvATmq-8=0? zrVUuaz2Q~-6Nmn})UpP(6_=ndBR`v1G~fn~zF&rU1Q@h-2qSGi#n;|x202W~G5`xX znvd2}zrTosb2_4|5%3jD)bfe%;(sp5#u0yz2LZi5X#FoO-?M6!<9nN%`c(^`$8#LP z1_IQK{Da~w$LzF_*WPoWt6#a^THakG+W!FT#~G{*Ha@~`)*T-~dk=9I;sOEf@uCv} z5<;TvladXs!==&%ddW3cwas!-g>D9}TZC&L%5C9T00@9e#}E>v_LSv%6)(!WY!Cfu z7os{!z!ujy%dQUIOj6xoo=Oub&u0Luf8}cA; z)ocB?Da0*blo5C9H4#0UK})I!~PV#q?1HP!+jb9&e)b zZ_3@Qq<7oO`v&|l&^mo?ZcQV5elXd8A3gV?NNQno_xkoMhbocj8Y)fQ3nqpyWrFkT z{~O2u^lbikLZ3JqP=uqgN2jwYXitK}mY1OZE$;G7*%}&wq&4G_g%HMC=X@)UOehQF zvv$L;wZ!fY?{OWA9xWTn+nn${z5^}W3uMcOhx0pLswP`Kt$K)f{c*CzxCby3vjmeiUED1eH<6i1? zOHJ)Lle{_j2jH6Krg5DXCE)iSs|%PNJCo7XRQa;wlTPS04{+2qRG|h=OBH?CZBK~% z^L1es_|ZRmS42+=xON%#$83-0FrGq8pzFH&IzMcr@3jjnD>)n2XhZiLO7&N9dZ;Wz zjECPyffr@`f^+geKxXor{jtsMDCAjsLbEMp!lv~pd$t<~tAHP zXuo%JnGy^>PxYAc9((Hc-Mn*81Oo`LR+QLHb0&7BOAnCq-k+{6iwuWkd;*sQAkQOiw_8$YH59%`A;6spkm3G9#et|lOP zVDTzAfJVI&SX>Eu=L-tpAFyMQ?^_xJNoWc+>yhc7EtpYGkes4wCRwnYhtjO2D#5a( zIVdk1?`fC~F!3t>W+Gaq+0#vyH-q7iejkzGmB$1i^P>43zOg09)1)Rz_$ap)Xv2!_ zQumPAB{b#RIO+f)l5bi(=c1`H$HyD1{4M8^?YK+%L=fvpU242Q&NKQpjY$^O5#Ot) zVc@T@{SEP%sv}yRSx4##qpc)$T=k(OHJnmizZb2{N86BTY(`s^Ft8fh^}{XRqOA$T zTs0IONKcE27ud6c5ccSHxid$A=gEc9yllDA}zQmFtF=~&^{$c3ISr5sSKnp`Al| zQ*uO7jw|0N2CO6MYf}XX&?)p_%A`)t)i5yDa++Rzh$}La0w8@>b6Sb59CVEvmCswN z4eAoXXUTJfRyNZuCL?eR?4iDK0^n*VS*$Iy-zgpdlDr6sE@@pnWyfp5THZ)tWm`+8 zR*z&+QmJkUN4V<6A6N;9($x(=CSF3cQ4K|!h%(P6LZZuky%60^z#XB+Y&|V!#|%SN zB1q@WanZ-NBh*5x0nW39kzkCAZI=jw1qAy0&+7oB0dWV(}6o7TOk+4^um4Q;q9wY9PIw3k7`#$)zVZ7ujVP*h*;oRE92 zR#kD;vJptB76*BKjfr3Gf;6EjGv)C$SyL`R^LGsfSO)0 zr9=-L6s41(&r<^-$5>25vA#{7VwOO6Fcc_bfaVuOYQ8%yfTSS|Gaed}Y6a9VX3fmd zz9mvp?T&KK$V=8;>#hb_wg?H1(#=5!QCC54mI8Cfsiqz2X--}T0QZZ}byqoGo8RmF zXB;GcM1St})NrUXeuH!ht=#S%&e=Z5_HWa>>p79|PXl1(W)8qyjNU>K3C)KbwPHC* z@7O6c3}rHV0AkR&RY`kHJAgY>gyx3fi-kb;f09A2spDh-hJl*U>7+9QfoZy!lI^-Y zXBh|Fy)5;L@RlDlKSu-H+503aAzCe>wx>r0K8K*)Y&Xrl3WK#WzJqi{NV))JY8nOk z$nr6&VLW~~KYU1awoE`dV*Q2bvI-vAcnNx5rqfCUmC=%Lx*+53kVTrCFfH-1(O3Pk zi1WB3D?AtOH`7oEX_Sbnq3329`zak$<4KW~ zSx5c&A$Sf73l2{+y0}|2YpJQ%{vIE21bg#JnG|6!Xep1ufDhI`Oe&Z_-_pHJEt}@Y#ERd|sox}| zO30}8S}x_>y1YVZw{s@K<)?yk{6ug|4QF2A^^N`>-eK;2dh0IFCF6fLNdo!c@{9h2e`HuHdm!^dlhi<_RR>m<2gE9-#vz?QP3;souV31uhNQlI7 zS!Lr+UEt@k=|2FAPJx!-if$!8Ie&$Z0ckw&B_OXPw&s*FtJE*vJenWh$ZCGbI5^qQ z7?RF<+|vUojnO6K!5=;4XtP=edGWNa+O_YFu#)USr`C07Ry18I?ik#$c7^Vx_dP~O zSj{rFsTm(8vIbJI7e~Lpx4;B_G)4R}nH~#Bkthzy(;nyeM1+;C`R=bFeZW3hi8cF@ zPP$E`N+U1;hEdHK`CqbD?H#I#BQAwv5bBOE`r-t03?GYI_XCwuR?$YTMC!HqR)=D_!@BEhr1gazMumZUh<#kng=_Pj2kTY_ z+dV|+mw%v>^;eh9!Ni^MSMDuhIM7WCt^sw?du_@TNgRHAg1T*<$fmRcX`zKI$z z+=hr4J>VauzMwJ~(&-h|!vG{(3ab2G*4{i8Q3qT|^XXH8asDh~EfhOg>e=#)`LWF6!;o~_v=2BO%-HdP+MPWF^9{w6zhnO6cuQzbwo_%aB$`DPT^FMHq=;q zlV96Ved7DniA*)+BBRoSLX*(759H<}I}*F&$hZatUVC52qE66~)#U=K4tP6TnMR}~ z8r3~6#N;v4_1mK+S(!uE595Z7W|eRAqx`P=-HsJm?J$jz2>%KOqh>Vkk2;tI3k5Cj zs1zGbmntCR*lt(=V-(yLI9WUE1Rb>@K)ly=O3Bj}2?|T#j;c2}u{|CmV@ua8pk%_T z_y_3KNAu_7*Ti2|>LO))A0lGhPRvF=bJ%VuU%PsGh+tzlK`~`}R3gixaoKie64s__ zgaIZoHE~!u!dnYa9ED4R@CYxScMhpBa`vLQ6pIV!*nlrmHAIeF7Y3PqklJJlrIamca^_fRj%4(Uwu<;T#^lrAm9;d=%0Ug|L zZD)T-CH=a)l}j>88nO80r8|;-@1mki`Wr_fs>vU}mGiKe1%3t3BoL|M;H7cy80vl+ zZ+&tPwWUdS9(pIe5#ZJQU2vZwT*@#vV;(JoKH`p7Df}sW{AOZ;0Jhq>uo%3WTG?UJB?wO3LEZGAi;|l?8%iULBsv>A4e!-0i^L>I)6&;v?!G)mVlaJboHZ$d zNYoIPSZ^4kD!QHn?UW~LPl;iUqpxvF7yI#q5NIrFZ?$*$rCt4xl#do(Q|Q9ezafsK zt>a-awgG>pmH6JPp+S!izOZ)2n01#Xqa6valP$k#(c(=SkQZ-Owv4t-&d8={9P-+8 zCYShtbc87p&r-@YxH7mw~HuhVYqGwvxz_Q8J` zl4+j#@SglCi?!fe0OC2Q`)zt9bNIeb z(5swRdzQ8!XFx)nj|z2XqHgjFpt}}%;k4?~P}EBLh_jv?WJ7f|De;|$8A|8}w!?%? zV(2008e-;cTuZ(-6#&kXDl9!CS$>t-5TimT3f7|`6`)^Gjn~dzzzp|vhh!0&<~TlK zts|Cngd7ns|EeBcHFGOlV=zk28S;dExc42T8eu*38!BebC`yR!xwEhG|5Z2mRNyIz zHGKWoIE6J!U?@ncM}9&~LI;x}qlOp)kMK>*LAB!CCIbPq6iO zwB%~pwRP8Cz~;8QI=48RA}OPpN++M)x+}p?9L6#iYX1N>@32CFp;DZz8J1qH4xIz6 zUjZ9SL{ZCF;Q(&i)Z(OXQ*r464%J})7d~>_5YiF0GQJM7NnT%*zcUQQe^Xp#snM9E zTW-lkmf!sYw9K{F1oyp68>0Ckl;|7lN#-o{@U5sbw*p3Q%ms$KdwzH?fwn-aH8r+V8cz7`SuI1Ir!_!7^QeCf0VW=Y zQ?+TaD!p)M#q@+sw7K&LW$g~+-_0k-rd*~8yLYGh&zY=3_fOBg+lQWtr)@S4A88W6 z9z2&KX-8Kx@|Z-v@T#m_WXRT7tsl*Y@%AJwEOyFInY?mp?dPX3BXE;i1a33Z=tE&# zSA9UO)$Vuuhv>Xa7vcRxb)_$Es6jtU#1Th;4a%l~e}KsrKiBeW z<;6? z)fYqiTf3CxB*?dx;$Fd3*^?>M!9)%C1?PT8@r+@w($;@iGG{O)EVigE%r}hfXNkW! zucXoH#a0kdTaf%~)?Y9`OzEWM{nPZ$b3|BMaG=&xU!rkRkMu`|V4$(1htxRhkX-`E zO(>F1Up+?BNNPac)9S4fZ}xKjwBJi%`iOY8n(LpV2jy;ig4@gL_V~uozi5JnQYjVq zEj%^zk@8$0;&~=eN2v*coV;4L#*ob&3Th+++V z#Vo~*NCU@@y#TjcbyF$`qL8vKA292N%j8?{t1quxYqr_VZU&B8z2{}smhcrE*VW~d zt788;L;P(^6_Y?M3*4fdK9hjsooXD{^FerSt$K>>CLFdb%t^mjz06D&l>yOXdkG`e z&(kO7Rn-&^S{y`6dNg3c(q38&mi6qOBhAH`}9<)Kbk9r6-y2lQ-IT*cT`o=&Nfi zyx6&EouVU>cvUw0^NcdebaR6clF#*FoXFU;t5_Ki_Kvj(2@Gr5bAs_l#+je94JilaUP4#2 zmhBmP_(D~)FukG{ng>z@jWA`Mz9Z})%BN-(eHgiZqBg7|Dx-vLFxQvfL^|jcS zS_X}1Ba)2(wMSHleg;`SoAEm08;a#3kfT;}-bKikSQ=T8C7sROsL(QucaW&TOqaQL z9`pS%f(PS!61wNKw1En2@=NUktLWHOZ^Kgz(`O@rf?4Mx&na1L0czz_^GuFOSg1NJ zD6XJQn3#FU&bNk#BGrysg_?|(kJcn7+qbCPsa&zJAppZ<)VeF{O_8h=8ZFxhfw#Ha z?i(6^PixleX-zcGDOTy_w{U9BcXq3svjI_rN`xdm{?ATbLo;AC`$KQR#M0(!%_dzZ zF&a8%yW5SnaWZ-~$9KL=eurWg7P73+qwuvf)Cm;e5pIIoV8afeR_dboFAhS0wy1Q{(M^9SywjBw#cS~wlVlZJBOy{ z_WRA}49iSLe#(V6$``_U-GqOdE%<=#Sr@F9jFah#Pg}nvzaNlmhZ zt@N-=E0Az;sFu%QhnQ{Xr(?^%Cr#)>{KUqDc_1RvO72gfxYEX7I#i0He+8-z)Hl&n z(Td@eHKeatmz{KMtUfI-%Q4}2cnCdpDVrfI;k&vH!v_^V-`el6yN>4ASBI^EAoKn7=adT3Y+aLP(vSZO zl!0Y&@>i_+AAoaeC%z>9g1u`CGv3cfVddfC)s9V3w6^Co%rHnkXU$9~}0K z5-GPo?SUeOoP~jd9}802N4cT7SlYn$cPPR{{!0VgX4ZI{`05GlBa5~YYByX_%LwMR zghGWZNzeVtJP&>-w6NK-X1lcrQz$D%FuhKP_{tn4U2Bqa>?)Qqnl2m|rCD2SRw;cO zbG5K($#C>n&Z8?>IOmjnXBnT19V)NQLWUcSlm7HYCuYS=bqf{NsI)^=8rr z^EO>vpwGj+$X_G92N56EPX%%R5|)nS2gyRJp}ek2npnK`HZo0bFq|>^wI#_KK4Zbx*VHO z{nYMJw8|ok!I~TEA_$&X!-lw~YdF^%BGRKf1# zmg4D-d_rp(nEx#OlpHR{aYw!grG%YP5YH4=dW~3 zG22S;)?tt!6%j9FvE%uHReeRp&AtMTUyEbOo zwc4Qq*ECxsA|CtZ3>>ObdRbe%40zKozOYP|?YOe?7bQ=_Tr_;WAD&r&%`z1+>8gCK z%_PU?!gXwkc+o8aM&jrK^{|S~Q5@_koHk{gb*jGmjgH&F;i(DvjfLlXyjjwIgoSsT z9=1y9AB9{eT**la?#~<7r@7mmxCUaYs#MI}G*y2~0&u_rr_ob8G7#iyCp&q#8&M!j zudAbzP7g*G9hD|bKc>rwM>(cWP9NQE??(cVz6l zFgX!wCt%F8#F~%>KqaPwK|ZsD1q0FP9!`B?CtvL{Mq0gc&tsK2q9wi9L2ij!)1b3n zsGZ6x!+muU;lJ!S+w`%x2V?910U9m~2Gm}A|NcaI%{%$X=QDY4u8=WfBgWL~Ww;BZH>J_XGF^J33B4EHH5MQJcK9(R^Px{_6 z%%{u4xNV8UUg+g^9j4V$9uDYV$kM~j^LVSUFdl8V^Ru|i4vLkr z^=0DtC|_Pd&-Q57)dc*fk1W2s23}{;JT(0u164bLv~i#qNC>wB8$&(u8fO~ieqJ8qYs5vSHQVP-^g zqDjox(r+UrSqwKEBl<5i>s|mZRIvLgsv&`=B#ZC&c8`4&MPe6UoL%Nv4W^)7IEQfP z<_ko>1|o+;2osCV_PjCnm%skk4HIe_>GS?or27rRS z@kkDvE!xyy!0ZJznWXQzEt-rRR*i=&_?8Tz&6vw_T=9mHc-OX!Jn+FIDi+8(CLw0OkvvL0@uCI>DP*@&n~w=<`~#v;-+<_=1KpWz zb+V#v&}k1QF9-TWLse4uf_u)vViQ{shBnrk5^-j(!E+%sZ=Jc??3XIq-)a`eS@h4p zz(X2()Mzr=g4mtfDpBm%NCcl=fxon>7;kph*l#z~+LnO8BQEBpvEN~LYdrp$lO2B* zv;v_l0EZDfNt5YeK2+4`#fL3Jl*6z{{i*F>p6I-9j}htwFQ_3LE5)rWJ#HAubPW$v z?4v#eOqj;n>Jd!R1l*z8uaSu*I^MM(a2zRtdck=GmP%GCcf2>Eq4T2`x4EI;#4|X& z0$E7qHtN^@UVP75wdlNbroq>VDIJNw1CIZ+r0BX#nIsN17k$Aee2H>SB~HG zUmh`IR={eRg`927;ZbtBJoR&->nqe6ZvpDR5&mEW+TT3n;SouoY>t1vZJ7U$#k zH*k3)8xm=Qfw9sxIcsWq;4-TQ8XYF?OKpK1%WQjP`84#ULlnZVn-WYlkRTb}t8WPN zRO^lcI$A-n-9)iS%RvD)0Thcw-QETE<%Sl=b9If8DDvE z(hSrdUC)8wQfU`s3Vc)3qkq*}ANmce7FR?Wg+ew*L-2l{;e8iRLE!eqmHMF~VgMMS zQZO|18=q30XM6K#cz;~LG|R?8;prBLO2NqEgj35TZh`qfi(?lD8HdSQKhcF_{rb}% z5b$9A)Rz%G8r8B@ez1LoKL5-7MCuKcDbmTsAqjUQDS#>4v8yF=M#xcrSv9lzf`x_a z!26+GM|vc_qKkhHB0D)DdTmHenq{0-!?U|f{mSIHIu*Sxk5%C*g%XiiZZ2}FozsFz zIu1)9r5Qw)B$L}nR5tV$$vV-AmoR!;7-oN6X}b0t?Ob==>x`hIZ{0OaJ})coou%N2 zb3i}?#Sik0uI%2k*a~r5^phpFA3bIL1N^W7MaT3AY>b-+jLXO!J52kw*3`B21Yq?4 z<;I1D-HN7A>ThfL_E6f@KZc({0dLegXR*AZCqxz0+I}CR%6L!Ty=U1l?q#3QQIld% zy6d#l!H9-?_O;}ueJK8eKgZ%J09Zv>)meNLgBGf5(Hj??I+XcxrUG=2P$x4q$&B9% zzwlv2o^)SnxLoMSg+|-l3jye*Ja7o(C=smO*7HE>DX_1Lt-dW=6ju)5^2E{&bpKPR1J!H%rW{2hju zbQc_hL3*_8F;I(L?IxI2JCHz~fV|V>DABt$F4L4bdep2L=-Cpd0&X{&a3HzB5?69FX#pyDfPWLRizdR61ttcBj*81x6_g+LzwCyhXA3Ov%Em3MI-)l7Ri<(1el!5J!PH z-x|Vu?$sL6bBr+4Q~@x}q_wXB!kOaY2glR7leZP9Fkm3jMpwPrmB7R{x4)^}P7T4! ziR6tJJ>25_=E@Z?C#Q)`Ir_{N2ux85e^XzX?Q`o_?QP!q?TQy3pZWA1n0L=u87=luzdYR$=sFMjKZ8=9zh~ks+nk*~~I&~%aMr*>K#*&^kemYVlnX726_?FCfd{Fb= z$*)&7Z^Nz04_AShh?y+3yzbZO)Sx}J?+1#tv#)1|5=(xMF85x3d-0rqO5dD9oG15= z!aKI3I6^-g(q3%Es*J~&J(iMM5{VL2G4}sb^NjIM^D^uCt-^{c(K)NH%!sj|Mj6kD zMA#8@+%u!AN$^UmvKC9^3cN@!@T%Ki_W4K~F3uL&@;0hAVl@7xEYy`jdcb@JtQb-| zyJSo@DR7c*^We`d12h#Jyf#^CRq~0wXuq+$N(+=!qaC7)4U4Q!tuU*-#PEFbG$tqC zjZ4kwc+YL0sZ2hP%A^`*Lz-pgVu>c0{NifO+7`Bp;C^? zd<-F^4%1si0u{E$7FJ&T=I10Ng457Ia#Y zY)s12Ko$k65wops@cY4aZfA19oAu`lo3Cm3IaB8l{>i(~<}szth;hvkl}A_KZ&J(X zj!$q$!42QTa1lye)8^V`EcuJQU|?YvivWM zjethk(7*KzT0}cH>k@|(EQ~te;}1{=L7n@aVazm^9cg4Y!~cm8Ykb;5Zt@2N9E~CX zVV(qA^RJh@uk5`wG!yy`EwZ+xnh%nVvI^8b{?e-%pr$_DnC31x3~I5JUQ9m_|45ts zccDauYdOxEg^V-Ttl=bvH7PM^|Lt}~J1o)j)zETBWyj9fF?9lLw7J?8_)3%Qnl<{j z1mUlSr`6}yYoR1VZhmvZ1sL7=O7JR2#2h~P)^VpK@EKyDDO6oL2imNq1{tqZH5*s8 z3H)gTTJ?B;SAl7{rt0g%-TYQ+KocU3STzZPiE*ODBKr;1UeX~tg8s_b?)n&C{}@w} zGkivedA(bYEcpgTJgW5%3(DDTy;`59CBU#PsvK#)cq0Bu%5!!U z#G0{el`#SwrGGi$_eqDd-S@ios7ML3`G7h1`#>x;T%xWbiR!uxD~fa~+=$xO!onaE z9fc{Y0pubkU?4?bX24IC1dQ)i7cu_>@F|?~wT6-p)NHT4k+Ofx5pFE}ejiYqeV@4Q zf?Y9bdJR3;Y54M&=`c^k;lUW1Jh#TB36fjtFi5=h7K5NH3Wa}rb;)kf31 z@H#7{?Rp2P|Ekm6iTj2w2?n)iU@&MW>14sd>{Qc~-biy+TqD-hx<4j zh&e?o6{+90U$|~5oNEB1wLh12&i?_h$Jh5djY(eoCKZ(WtPH8CBM^R4RIywUKf zU54IlQPwBi5Gg62tb!dtwVPulJe^+eWrU8JM04t2f`-JljZXTSEMC-E%|PekkxSd=vN>(X5;|w2 z03IIYJB6C#yg1sN$-7mVdiYvU+nXNdP6_RmzkFI*a=BEKG1jQD>J3)p4X&W~Jdd^= zwf2cdU@P?m>QC}jPj}7pbq87gj;_`(jf;!nJ3)H0G77)CSl~=cr#TW!qeg9>(EdVK zAs$vT-9-=*mIIpLGH9=E2HD8m(^DPS^O7`crNd%O#mFwgIdy#Jg6k|&8?gpIAr;Ke zOh~hPY9K?uee+nk{sCYOR!nr$7U!7x41v6urGVuQgh|gJ!z(v6sxoybad~ti?bTSV z8G_{#Y`Yziti;|=nW`UJC5u(!Pcs#r!a!MO6Qo@JwpcXARLbqt$Qv@~V&&9*JDF1U zZu9dq$u$~hX3d|VsvH58x0qrx=8;O-e~Z|k&3-EICgzbd-TQiNY;Gunw{tV&1rJ?Y zYa-#{HvJ+^&ThRi8@(FJ0=k{N=xu0tKOL?mnt)xPo8rMXh?N|-=7kH!KJA+GJ1%qY zoFCX6Cnj{~&Z-E9_gr|2q@A`{e7)n(cCn?;|4QQ1C3)X*{r&7o@)zi!({xhPOJG0! zAn1>IL89*>UYgXkc@}VLhN_Z`ZlPLF1jJlVTq|Dw%rfYR7h>JjEznLtmU`hp<7(h> z9Vu&m5yNwyXp!5Grh6MHVS6*IxTnc2^|{%0QtqK5O5Kaf9hN|()zw<)yI^;(-!u{O zS!CI69wYds>Ct9$l`*JN!h6CpEw7KdHoxwh!MGsHc&>@nXj(>!tL_lf)`B`DoWxIW zhy1+x%PEgVlrIkl2{LlS+o`w4(gfs2{bsTrG{c5N-cpNMH_d#@z&(n&$6-u`M*`() zVZT0Zz;@IW^_67-pN;a93!&xfR_#+uZK~^^2NlBFF(OU1QQY$!IO(BOp#4-Q1Xk(v zH;uW1tbH2e1NpX+&B4e@)~db8EkeJu5$r$INU2RSk_FmNPWW)RuA~<@A^&rU#?NJD zqS#;RfX)kD6kLW!4~#aCoSWG)!kUY;^TLaWvXmdmf2-p6AK} zzlhQ7o8Fo@s>cO7G&oH(B)1{UZuEkYp3K96g_KRk8* zH+N99<;%!y%8|;C)E2F& zaO&@r4=Iy&@w=N7sxA&(%^|uC4bSYNolZP|jnM;L{06z~t+7l35~oKutHY!hZJnIp zGdCf4&x;%K$bn~dOVLPK7{(qq4PZj&@m+Sl$PqecvQ#CnyICG{DU$inb2i>iBkW>N zC+ep9+xwi|wnze^A6P$^hd9%#0#>MOfJ%9sDDq{pU|^gwIN*DTQyzv%D<#f+oB__J zeJ7wqKC?NnheYM>;yXH;D8cx}&RqYuaSwI?p6_mR0_l~}zy;?^U_h5r%&#Dp{Rkb{ z_un^5jS|dj$}8i@8|NAV*+~Ew&GJ8h4k1?b+3!M>Mr~qb8HH^4X-4-0Ulndm&zmbUA>#f;z?a0Z%Vn3o0?KLnC=z#vM~#_tO?fJZ*d|XPw(o&jAsy4&Gh>wG?~%) z2vr@e(VeowJ4dN9ZAXpEx643W=tfN{S6<^gD5BkA`KYpeTHY_Q7f_+Xu4`qZvR+qf zF=h+Ri!`WGah3twINR29M%$D6@15qYpg=6px)qpe{Vx-}T)t_(Pqi{Bp@=quTztkF zT=rMq6S6=an!D!KWtgCb4fJ~e3u#vWK((c~|1QGHWz7>eXOL0Z^jf#oYUhL4rETKU z$opLtuabh&54agr6c1XY>Bj{|0Fp^a`SO969_4?@J-nn9@)w!l(-9rjXzsY6#QeMv zrJg56NT_fz*WW#!z*i)_^XjW{8!A`(QYz+iGIYuMIqLbpdwwfH)MK5~wb(-qaUtp0 z1^6)$st(bZ|MhDqAuVus`H-{%qG)yEwW!4KFO|s?c;bv}6&U)y$Y*y0L2Q)kN;!ri66G-Ar`#8H6=(E;o`CZHxdkur9iRT!X%_8yQANDnV2EIqo=CIv9@Rn>NobryU4DvuLf`i_ zJLRJ_8q>!7NQ%c>>|5vY55T&qDkQ$E<$?mh!%TCPgvY^Cb_!~ZN*y~4{3G*gue|y; z#!k*V$&;Cr8Eks?3Y^w=KcJwZJZ}lK{IiPfX~S-nxnz22tp z#7j%{b8&&%p(F~ZP{p%A34OS{;GT~vw5-@ZM#qzYwGm+h{gKuHF-#!VPSkBsJ+0Zs79eQqB+d8bE z9$Byi9$?j?ptjjdN<%K(hUq=k4>b@Xwct#;j{O`mb2Vw;E2Kr5t!Q@h)7vRBlJ+d? ze*i7^gHvPU<}>DWAxd5oC*|syRPqWgI&O0DZ$T4(`t0d7G;80qcQX=%WejqX_tW=4 zv9qsX+65;g4pc~q$Ce<(?_Yv?QDnJ)R(eLqa`xhq6p9Gw_=W{e0Q{)=Fx)}U*Ab1- zA{?bpKW-iw>Z)*a-CDFK)>tEV9_h^+@7xP4uHJk-oaENjl6c02)ej_3-e>q<^DeXI zac)ykCUx;*;@%zCmC91$oep88fylhQkw;dgEGqoRom>iphjKFCoW=TJpU0EQYQ>kW z)}a!&@*>m*o=(lS)7&ciMkm1aB6T$?wQmR`Q3ZCiR=8DyrqZ&v!uu}#_X8}wrs~Ds zguW~ZlUvg|^H(&z!toQ@n|{~VJABp@6C?7x$Q>onn2Bu))?%@Me^y<<4og6##D6Vp zW=yGUUu~&y_-=c2nC2MNsi4sYPWlmIjiQ))>0s@e0AoWX54roE(S3&)hg|%IcLE7w z-;wo+HSW+fLC5(>@K7VRwmRu?oT7u=A`V$KL!aqY%1dxUu`)jqD_6+V zqBBo*gpX@Qx?zsMMF32$e<(|zHo^ZgY#*g>lsUArl$udX0zZ5DPI@Gj8Wx){t{6239CW zpD2}rpG&s%FVl+;JQow$Igra|_m;i(ySHx&nnz>lt5_{C8pT34Ko^5ApI%S_gaZKV zvge=pPy055`1u1j#09s*V`y-}Mi8Mfp2 z;0`q3fjEB?$jWiMv#$M^V7tyq^e3a*Z~qg>&hVdC2$gIdoPKwwno6eKz-opctXk-i zUVpJY^S%3z$=mN`beBd`J-P|&=1w>_k7iRl8iGTZv6S19o@8lKE9$JR$tq~?P7RJ) zCUQo5E;Y3r4tqU+sL}WRmDDMD$$ql82C^AS$DW&RJLNN=FA4)TNspmUQ)}0g^a&Zo z0!yPeOTin0B?1@PoE9fBukSX8h6`ZDu=%fZV=g~$WjF&b8IRat!58=5%^T#8sjR!* zhphAWN%{TM?r+Tv8CfS>=jcaAS9_D&7xU|U2WvgyvP3V=Dn4Tklxe`wi1&>PO40bN zzr^DTI52#lx+lyMYpB63+8nr%l*iFlFp(PYoqUf_v)3@x#u(3sI>`O zQ&QJwdz-$MsY$#wN?F~aD86l@1ua+_rTGS#)_X2;>YZQYP)k-BQZXu1d0v`LR6{zU zJ~i@ay@g#^zM4WGY;4I#Hr3c6;ejts%L%PzD&Q0})rU`1u1`#<=rM_NqTizjzwVzqw&jPk3H>J$y9tF=@N(K{EMq}_-7DiwJxUV-7$hN0jE)f z(2Sbt_X0kH@w<(sT*t|iz9}d=EoNiF7)*huW(%TucokA?%ly3OE1P<03rETDutY}s1 zZhRyT2KF@w+st{Xb`Th~X7_!)mwNMZ1hf}+?-e<0z&o_{`sOIqTzS4rQ$7Xu+_8Xv zSak7scLaU96)8XvE=e3MLoIml+(v^gPsZMzni?@-0i{IqXN`UHQ1S`~{aPx$RGWIw z09L|kS+by<2T!5X4nA&J{!&wM2Kl^ZNJZ69jpr}=UqU$YMHgoHpElAxT6Q%uJBsYOkLr7@zwbS}vb;8(p z1jTRb)%`lYDZa?Te(oG89yEWa5h$JYO(K}Be0ZSZ;T2Bje(|f~fP(TvQuYHn@`3C# zEuv79;McFmxk;NZ>LIsYY@b;6m+hB)zILnw#u5E~!RVWn(UDQ4_=>0|3u;s;ctjs{^XvF)d4NBi`dpRP0YFl!zJ|tVspN zUvCvEZ0j;@Z{dn^?vs`1@f_&_<*v(l;5QvsN*a%DDFjZSRHw*^6n~mvjai@7QlMO3 zsf!X5XRGs5AXCpi)7o#vPo~wMEZH+;FA{0RZ|fRWN2zjaTdITmt5#4;4`@73^HZ|4 z#$agGs93`jiFzr8U5<1CxrK`ibo@-jvVF2x8w)Q#wRvX1VF(u3B0@u{Bw{O0Qp)72sF?nu=cu!u77Gob)fIt_r zh@1#PU?AGdC~;*x6vYpsQ0h-bn+-V5K)sf1)r}apbpWhcs@;b)C391%#tVlKR8)me z0xYwLlttc!tga~#ODH7L3=QtCA|#f6B~?>7(}^gI*)lQbqD5ofWoX{KR^%(0l4Q-6 z;zWCx)T<(#W(=5EopeNYJae^H_>O(M5kA}WU7mVW`KQA)Xy?^H5CtgQ6)+H@h6;g( zl;Y|k4Q=}>(e~Nz$xBfC1=LucJYdPqmU^vn)fkW{xjMwB64t8CY0KWkRDTYvY396+ z7kVzdtgaqGRtEYl#@XfxEn>8>M1vOQs-airs-zs0MBJJ=1qFco6hUCZ{Ln7z8$PO- zJH5RB0A$Ex+x|cJ?tdqrwga;e{{YF5*ahPD`)|ZZ`ZtO2+dmnH?ck5N{do`6R|aj? z;y|fOQOoilkZksJC%#Ne4ojcj--XAO^BRCg27%Fa^<-<@>Plj>p;$Vh8hYa)>(d!Nv& z1B}a>)8wWY1dEXVseygj*W|7)CHH0YxUUUU6C!cXCudo_=(Zb~1474&&s=y#gMThA z2AV8iRv5A#LQi@YSiYgZ9{MIS_fc@`)UvFO@JNX9sb!z*O~83aXWx=OWS#?({tY8`+-G|>`yEeo-;b6M#tOfkfc z<6)+Y7XJVPEQfwqHb0`=s@FWiQH&!Gs5{5yN( zGsiaS62r5J?wq6>xD5jHdwudx40YG=^gob!j5|yb*ld7?EMvAYisS3%+qKS3d3>fA z@tpa~$o(TySEHHyHs?#oOm_%|eOGU%hNmpqGi1tr(sRvgnT<%Szxwr86!mT#)V@-Y zXQi6_)xf(AIBHQ^&hIu%aK$MT2!;W3`o=MF4Y!dLN%E1;HF`U`=;%xUv$m-zDUl!m zXF4EJBooVCDWD?khyy#_wM8K1$e_^z284XV1|;rJs8BBALleneQ1am4G(Z}x4PL4R zSliY5)m89jL4XFN*{p^UChWi>VURVgZ_NSjE@T{)0eIXJcpw<|lFh9(Rw*72N;gHC zhfrx+(dd>9J6+!66q+(DJmnW7r$x@ek8y%g zB8hAWou)qEdQQ zG*d9Qz@p#b7MO;tlvKK2bfUQyJDw27ykw9c=J3$K4n+ ziW0a_6pFS!Q**M&3?x_@#cuPaYt!NUrW3~#Did(H-fUwXJ)ZtMs0KG#=&C&QHu$!a zoXIU4B$-;}^ZI+F>?*wuu6FBj?r5D?emMNn)_0I{@BEi~LlGri5j{Gh;u3ndRx4jBjDcqsDsGypQs67aTvbGX;NOY_B;|>>>WhT(cd^wx zhZ0HY^Gp{;V3Awes}x%q00xItsJ0Uw!md|45wmHNvn*z1P-?mL&xW<>{^T=l#IEA2 z=hAT4ZiS@ z%QcG|@nwvK>a&%L7xfILA;20~Rb;6L)8L4e0k2gv&IWI8N)Q^hv;Nhb3?T zYM^w}=773tm>#7-zWg@xTh<6`y+Q$pX;c`f_ z+^X}NoNXcp6}ICf;K%rNsajJoVk@PJ(G_av;Hy9#0p@~n=9r0tL;58|q#DE3N%BG= z$8LhD`2$wey}xANBlI4_VYk@rqqo5x*hEz7PZGXlbJe-CLk=@JmH;}PcadayAIQHd zhxp?j*DDzSWY?)vj&E1XS&t!`b)Rxcl&e~=ZQ@Fns)pE@*0mKW*J)P_F^L5AS=|uH znh+$5xLTa)8S?K%8vIvIePa$y%*(O8*LlQ?B8f5Cz{B0{Sdh+|eg`G_9x-EzLIM?-JqW7-_+ za=iU|ab*~XW&o1C5EaX%eI8?Z5F3=bGLpnBrxjB z)5pDxakpMFQIQ}XE7!-kmCv3zz>y%_S7~)oy*r2Qs-@jVAP?1D3YH%f16BSVP-)n1 zC5C>}Nl>m`^WmPO*!Z2;kQH7o`E##Hi1*@ScBci#_(uoKY~AG5IxfDugT(m^Cl*pm zGWYS;$6i@Q>r!mXqd)@SiYZc@nqRvf3aK+W_@GWfr8z1BNj6;n1bC=$b{{U$qEpdD-Ws|P3N_l13+Z&NmqGG9G zmt(VnwXGuo*)U79{1v5jc6r2zi%?K<3Xt0kJ&P){5>2SIW@#An$!D7@}G4{py zT}rM#@V-(R!D}XZ1Y6X5GwBw1C$*|F8qRz>B zDX|k6J*;(8>}ssLc#^;;*=0cOB5GBg8ick{&=%ESzm?Pu#1|~D-kPpk77wb_?S9KK zc-TnQnM>MUonIf|c3DX8kQJ#bpI*x&H@fz|AHaS;u*LpHU$-g7uQsQm@^{^=>o4RV zmtc$z-(^y02(r9-x6Lu+Cy-+Yak@1&8n0J8{umbJ6}{pOP3(I;GmUlbNi~KZX<3!h-eJ%z!CZ+#9NAt=hbGVY0Lirfa%3& zJfjFPEI+iajhG{Xh)h7Q)%-HF(j+iq{{YPtr~%iKVS2pB~sL~1msZA8=JR8&>99lglZKCFch_s zQUa8y(L^rOeicjz)ayzCWmLVc05_p0ij+1NexVAxZ2>LBBXistbM{{eYv~_$dku)3 zC?yK~7w7)JZi?}fe7ngOb0X{N$(*IG(34|`YJp|rx64t#@hm$`{$5esF+HT?iLoJc z&klW8sPq0SZ#|6Xhzxlm9xX@Yv6#$wQIkJ;jG^unU9vRUwuVApO&If7s?#YJjA9rr zcqbSL$GFSU1rt5;Cym`)Rz1W)$RH|KxkjQpaZ^FjLPmG)iQ;uzg9b>n`DnV!;}Ix9 z?y@cHewSIME1Uy^b*WK2ISfdSkEioarlVBA$sTJ981rBt+KW<(B?em6DK}~07UgA{ zru5>vG`b85#li(;22(2|!G{;}V`8ndx7{9Pp zbL)b|zHiG+aLJFD7@aw<*1fwKkA(MHH4Rw=)Du+luUtJ3=vLA{s0uHVCc?x zDS;EE-_an6SMnf!Jh&^0Mxa;GGs>$jHKMq+OxR0^NJVG3+Q`wgS+qK;f;xeJ*<}bd zN~&P6732_E**TbjPHR3PBSt8g+=^LqrmlpBnpFH&F`D!~BRpq>z?y)(p6-0N!#A4S zi9@`9ZPoPk<$8}jF;W_*iuX#&nScX&tMZEbYWiBsOQ{0X8fb}A5|m4m*P@xH%VyIo zqvs!{VkIVgCTC7?|KI%|k$Lt3DL_ zL%+pl!6;-gs4u~0@~s%RgfJ@>D`q{+C9PD!ahM{DD9w{2xX>$ApCqc*>a`%rpCuZM zwIVrL=H$Pk={ZyY6s0(;L}d^|vn?*H+hTl<-l|+qo|j{f*c$qU*O>Er8rqE3TD8WP zBhfUY^i&S?(^Q^RIrLKqeawIalgomFPED?*B{3>7^i5Tm+UKgrRlZ`_KoaW~w;BTh zRnPL=QIjK*1z%kj;wjAt_L@~ZwH!_UFx9%$SDfEttcy`}YB{nDONbI z`u_l5e9^&#GUhKTuUCkT*zoqo)m(b(%Hn>=f=va$Dq!dC_uv!T z=)D|zye2uhcN3X=J=de2abm9L4o^j_@VFfIu^}NLHG?*)nsh#>6{Tux)j)SU3%!oN z6;}+lw?swg{B_pop!-^{M71pdcOTI-)A=^4sSr&`{((d=BtZ`PrUgI?@z(08MuLHh zsD^YP_2hx;O)K1hE!+VvIPgHen}-KpD5u;*Gad>eaLq74eonJ_(;G1P2?8r?E?s(} zH(~NLB%VQe`t+LLhjkf%39BzZUcakSv{A=x^(&TRNy8xr-K~~?$g$n^=B%bE&$f*2 z91yoVtk~vnd{B@Scd0AU$Gx0!H(Lyt3$--pz1;gHU1n;s=o|p#THyd92qEg8PbB15 zfmL3E!fwOHpq1qIa_3{(c>LgiynRL%c^$CHjL2%IJr5D)_Kn;?au>7H(_Fmu0V2%3 zZie)&8p@cBsET4P?PF9lm}pN#6Ty$}WrPI`k8OFCp09*=JhU-l`*<<^7^1J202YKJ<99ho_sBOkT>k)L@J~z5RQZBwv+UpwfMp1;MTU+v8?C>*X zo5-D4MO0*N)K>*^w*_LQ3D`Rg6F15&86AKpYxS^CkBKb41Z?H3+jB)Ot87`C7)ZvRR=QiSGjzErGg z=Izv^66AES=7KK8pXPzz_jD2@H)%vbL=Abem@dZeV5LgYx*|JwB}wv}v05UOe~Q~> zdpnDu9+%-=LIKM@fyh9+iQyBf0-d+74L&F%LL3j^EPzR>9+w1uisIq7aATzv{{Sc$ zo7ed%2t<+zuo|FlNHub5+z=qnS)JIrstF=LyD6vzLyNTv20^zQjZ^Rw`$HCg;m|M% zB)UL=0+(%g6bv+_YVj$B0En9oOr~j?=zcwh8GOFl5)2MN;M%Lt`&P~_74Cm3d|Np{ z8xjCt8}+>Oe8-USK+k;+;YX_azV95Pw~(;N)L=+n2-}Cb-)Gw9#g_z(azMB%-|F@3 zV>PmWoB1s881vhoQ z68f7jM=@F>G6w~l5FC+mLFyF2RLLQhxl)L&*>0NZZQSD;i}PMy)+pUewnPGW7h3hr zTFMXcqVB;S*L_t0G4({La?wDXzv`^{2pZn}QmQ6TqM|Y^+;mSX0g<_>;Fw|rP(HdP zrmD%>%vF(Ml5|x}J-q=@5daV5ia6>N(KvPj99rj^lytCm5kXQH3n((iF{^qjJfAA! z2`64^qod<999iP_E04FGi_5XR#4_QKI)&us<#ewvn*fC5`WmmH#n|S}I8?o~C2vhq zBO%j8sX^F5rPa{I3mP?2L|wO;`;h>bD>hRd{jNhOfJdlaUWKxW2a=rByokuZ6UlVf zJIcp!!B!Fke?=-J3xz)laV=IsB1W310@hi@M8xy{OE|KeXE>Jz%PP^2b0-dcR%we) zLTZ>+O!&bdn=M>O=;_FCpHp%$+-dJ8Ccti_I2`x}B=qSRNO-{K+2 zs_Dwd7I6TO!MH6qs%8s1(9a;i@ZuF|67&sEikgHRTE$gZ3s5&yF)%M`*)>qbbAM8*g2F@! z1rzXPn33~9N!qH_0BhP?RKPr0tObQoe_)-#SM$g9=#M%h4*B?U6i1 z09pu>>J-td$L>x%!$B?!pL4@DJ;#UKj@XBCbzUC%$2%T`HcU0Y?6{-M`MsbnKwbTI ztazQ?6OSpDULUM4ufdCYv5%lhX|Z#k1}8lt+dM?Eg% zH1?(GUW=^hVwvqE3o_T()fphcYF3o7do6q-$T&2w5SO99Y{IQlxmIgGmE6iCV1Ybl zx9Xpj<~foeg5mXDt716}YAR0z&0JbHBr|DcoM#dn*&nM!`j|5A41tNK6=Z~p2P^)H zshP|Q65%kx_j1T~lkFGgq=po`K_@~P)|7V_;u#`gHwPUNK#>8=nM~0yxgi=7rY0Zx zIr}LiTBaCdbDR*;rla>s#6Ga2xXNf`PX<;)5jhEGC!Zx^;kgCLE&l74OH!ixyC@R} zqYZv4se?`&RPcu)0rr=pdL;^gaOQzt(dewc7fc;Mc1Qyu-BR2U7vd77R%%td!Uj0R zr1?2x?iF~@)GcdCNW3XYb&ONu^&zSVS5%G*mlK2jSH~ zqR!-=oYGTHM7SpUA_7RQ_@H2eVo7QsMl!J!&~Z#w?+=i}$Y78)iEw%^KkUusvtGyY zebh5-@nr6QyY&uXe4o|lI$wz3_*g#Z%RmVW-}@bZsyFAGLm@iQFE=uHY3DqYhur{Z zzL%zWW-yZx7x=E(<*&*1i4a9;Qh@*u!tUw@0CxuZs}VeTC5(wgvDB$%_%YGj`JUMO z;$#;Ny+6WZW-rPPKm1rgj~*+X{ba?T{{S{fn&Wb${b>?Ly@u@Wq-4vNeEmk8@Ux1A zi9w1nZfaWwkq`r)ismDd1lej+8Rp=(8Y(HCI@92{EgCktObunCLv71ahNiR(oFJd|y$aiDX zycZsRS6q3?i4Q=#{uQTUVhh=0*$9UEW<&)!iskNS!%7wD<|`yz9y|i=JgUcT^EBRmF7hWM~MAADLcW=GLPg?;vvZtCn4TQ^HnpB4a|kOAw5JHNONfcTvZx zs04|6Q;Lc^%hITc2>>6Bom=5-BPQ#?Nem-;mn%RzR-@pR70ByBqoy^Ar`it()dfYh zN}z_hW2Y4mt|%+1NU%604OIXo{{V|58+Mt8ZB0cNF5tf;yRE9{1omPEPm;srv+Uo& zBTh`XVq^C1vClPYxwgnNZG??zyq(OhlgoqU@EB%x02S=?^|8*mrZ#&XE4}Fzn9|y@ zR^Wu@Sh!*|T9G0yNNHa{sJm=Oc+#sq4@0paKyhA9)pWu1S(R*8XXm2SxXv4p>rC1V$ySS0lqRg}R%4i;@LrK*ro60cq<xSSTqTadDQfQMita0gfny&Ht|K&@npt`s4un(& z)S?hHd+1eD7PA!~o)2z(WYgR_snqZ~Tf-^MtPj*zpPG*MgxtzL7d{+A{!E9q1FG}; zf9Tf_b+n$_G@&x`yqS7=>tag8T+g@#)lp(+!7xuFM2JK=)bm+Yd#W%Z!{WMfD35ez zC&0ZGuzC%@lqZ zfa2dJ5E)hDZC{coaAQ}kN(LkV0Qwb70zeIGR4@R-#ke9DwnPZmS5Z=-EutbMmul9k z>ZHQDo(L63t&~74`oGCl5{y8oq0^Fyqzgzswg-|1du;VpV0f@&Qk1FS#XQ;Z;)w1u zkPX#myOUD8K2O9QjPc`;X)~3>p7qXGH+aG$qV3FYmS?b`H(QMnH+pDU1Z6mq;*UYq zLkF?BwN->5&CK$uYJ(Hp)UCQ`mYO8d65?8@Lj;XIuX3VcNI4|eqCyZ91T);0x`hX} zj6Z;^t0~ln7SS;U#VIDx=zx&|=hPyAPs)mbjy2Y*YG@JdBo`v$s;DkO_yc7zFxuhk z#3lsoM{-($G$ScLElRl7HhAbrlNB zuTK%UrZnlIqEVSO`K1zY^t!hwPfFE5;%W;Q`K251$hV^5+fk2kC%e&g^`%u476hL~ z*3>B&=*N`NDtXciDHqAuX}=(TJg>$h1qkkNr<&p zeo<^g20zVUcYHQ-aF{r7yngxTT{uI`U^0h$J13{CzE0zVFvhexa$e}eJmdj9G+hi( zd7A3A0t9jNK|FZ?mjx{FW4W;02*g##1?BIbBy2chi2_X&rX(ymqJY)YlFbd4Y-$*xvl6it9Jx$m zR;tv9N+US}hTHtlypeSi$bim20+$MmJnz$XQs6d&8Z^Z&HS2Y5q zEKo~0#)N~xxuOs5Yqilu1M;^d z3C+l+sUd-b0&1b6k#5?Ds6;4$NfqWaRiWLEUGjK`jyDPxypg+(g9gsZ5Fn)C|cjs7ch_VS36Lsne9lUeEQ{8sO} zA$U8EZpKhD;-Cbw$0+i?UuoUky&k@YlHB6^c_kKbPr;YFi{aOrqq;WfT@`2n+Bp7- zhSn^_h#^Ev0Y7>MM}wzPY;Vt-ypax$xbw~Nad3U?oZMYLu)sGN1CYI{=NU|gK=y4`)jH@NJWwl5*#RS`#OqWr1^^X9 zU>)j}Ks0COY={duI&sxNyFruwi47DbtPmsI>z+zA~RsfbJna&_pDLy;;M;K`yvnwq;SYEmF*Kazl{&=3NuPp2JJ z16G<@Q7tV_ff49G2HL}O=Wz+e;}B#*^M1!)>d$w>rTMJi%NXbY57Bb{e}*}EUGw(< z@BEjqmrhxvBN5#Y+$1a6x}cx~g$% zgKH?1tn||1RWQ!q1N$XPjDu-$UMdjiYY|­rP^1HmX!sBJ94Sf*ma^&0Ax4)M?q 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 z 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⪼1uZQRCHW?a3^Ud0 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 literal 0 HcmV?d00001 diff --git a/vraptor/src/main/webapp/img/post-sample-image.jpg b/vraptor/src/main/webapp/img/post-sample-image.jpg new file mode 100644 index 0000000000000000000000000000000000000000..3fc4282987a99a4e54440480e0e54136e7d241d4 GIT binary patch literal 115144 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�M9e9MSx4n-hEiy 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 literal 0 HcmV?d00001 diff --git a/vraptor/src/main/webapp/js/clean-blog.js b/vraptor/src/main/webapp/js/clean-blog.js new file mode 100644 index 0000000000..26a60cce5f --- /dev/null +++ b/vraptor/src/main/webapp/js/clean-blog.js @@ -0,0 +1,40 @@ +// Floating label headings for the contact form +$(function() { + $("body").on("input propertychange", ".floating-label-form-group", function(e) { + $(this).toggleClass("floating-label-form-group-with-value", !!$(e.target).val()); + }).on("focus", ".floating-label-form-group", function() { + $(this).addClass("floating-label-form-group-with-focus"); + }).on("blur", ".floating-label-form-group", function() { + $(this).removeClass("floating-label-form-group-with-focus"); + }); +}); + +// Navigation Scripts to Show Header on Scroll-Up +jQuery(document).ready(function($) { + var MQL = 1170; + + //primary navigation slide-in effect + if ($(window).width() > MQL) { + var headerHeight = $('.navbar-custom').height(); + $(window).on('scroll', { + previousTop: 0 + }, + function() { + var currentTop = $(window).scrollTop(); + //check if user is scrolling up + if (currentTop < this.previousTop) { + //if scrolling up... + if (currentTop > 0 && $('.navbar-custom').hasClass('is-fixed')) { + $('.navbar-custom').addClass('is-visible'); + } else { + $('.navbar-custom').removeClass('is-visible is-fixed'); + } + } else if (currentTop > this.previousTop) { + //if scrolling down... + $('.navbar-custom').removeClass('is-visible'); + if (currentTop > headerHeight && !$('.navbar-custom').hasClass('is-fixed')) $('.navbar-custom').addClass('is-fixed'); + } + this.previousTop = currentTop; + }); + } +}); diff --git a/vraptor/src/main/webapp/js/clean-blog.min.js b/vraptor/src/main/webapp/js/clean-blog.min.js new file mode 100644 index 0000000000..852db7e938 --- /dev/null +++ b/vraptor/src/main/webapp/js/clean-blog.min.js @@ -0,0 +1,6 @@ +/*! + * Start Bootstrap - Clean Blog v3.3.7+1 (http://startbootstrap.com/template-overviews/clean-blog) + * Copyright 2013-2016 Start Bootstrap + * Licensed under MIT (https://github.com/BlackrockDigital/startbootstrap/blob/gh-pages/LICENSE) + */ +$(function(){$("body").on("input propertychange",".floating-label-form-group",function(o){$(this).toggleClass("floating-label-form-group-with-value",!!$(o.target).val())}).on("focus",".floating-label-form-group",function(){$(this).addClass("floating-label-form-group-with-focus")}).on("blur",".floating-label-form-group",function(){$(this).removeClass("floating-label-form-group-with-focus")})}),jQuery(document).ready(function(o){var s=1170;if(o(window).width()>s){var i=o(".navbar-custom").height();o(window).on("scroll",{previousTop:0},function(){var s=o(window).scrollTop();s0&&o(".navbar-custom").hasClass("is-fixed")?o(".navbar-custom").addClass("is-visible"):o(".navbar-custom").removeClass("is-visible is-fixed"):s>this.previousTop&&(o(".navbar-custom").removeClass("is-visible"),s>i&&!o(".navbar-custom").hasClass("is-fixed")&&o(".navbar-custom").addClass("is-fixed")),this.previousTop=s})}}); \ No newline at end of file diff --git a/vraptor/src/main/webapp/js/contact_me.js b/vraptor/src/main/webapp/js/contact_me.js new file mode 100644 index 0000000000..c3d8ecce26 --- /dev/null +++ b/vraptor/src/main/webapp/js/contact_me.js @@ -0,0 +1,72 @@ +// Contact Form Scripts + +$(function() { + + $("#contactForm input,#contactForm textarea").jqBootstrapValidation({ + preventSubmit: true, + submitError: function($form, event, errors) { + // additional error messages or events + }, + submitSuccess: function($form, event) { + event.preventDefault(); // prevent default submit behaviour + // get values from FORM + var name = $("input#name").val(); + var email = $("input#email").val(); + var phone = $("input#phone").val(); + var message = $("textarea#message").val(); + var firstName = name; // For Success/Failure Message + // Check for white space in name for Success/Fail message + if (firstName.indexOf(' ') >= 0) { + firstName = name.split(' ').slice(0, -1).join(' '); + } + $.ajax({ + url: "././mail/contact_me.php", + type: "POST", + data: { + name: name, + phone: phone, + email: email, + message: message + }, + cache: false, + success: function() { + // Success message + $('#success').html("

'); + + //clear all fields + $('#contactForm').trigger("reset"); + }, + error: function() { + // Fail message + $('#success').html("
"); + $('#success > .alert-danger').html(""); + $('#success > .alert-danger').append("Sorry " + firstName + ", it seems that my mail server is not responding. Please try again later!"); + $('#success > .alert-danger').append('
'); + //clear all fields + $('#contactForm').trigger("reset"); + }, + }); + }, + filter: function() { + return $(this).is(":visible"); + }, + }); + + $("a[data-toggle=\"tab\"]").click(function(e) { + e.preventDefault(); + $(this).tab("show"); + }); +}); + + +/*When clicking on Full hide fail/success boxes */ +$('#name').focus(function() { + $('#success').html(''); +}); diff --git a/vraptor/src/main/webapp/js/jqBootstrapValidation.js b/vraptor/src/main/webapp/js/jqBootstrapValidation.js new file mode 100644 index 0000000000..7b3b922251 --- /dev/null +++ b/vraptor/src/main/webapp/js/jqBootstrapValidation.js @@ -0,0 +1,912 @@ +/* jqBootstrapValidation + * A plugin for automating validation on Twitter Bootstrap formatted forms. + * + * v1.3.6 + * + * License: MIT - see LICENSE file + * + * http://ReactiveRaven.github.com/jqBootstrapValidation/ + */ + +(function( $ ){ + + var createdElements = []; + + var defaults = { + options: { + prependExistingHelpBlock: false, + sniffHtml: true, // sniff for 'required', 'maxlength', etc + preventSubmit: true, // stop the form submit event from firing if validation fails + submitError: false, // function called if there is an error when trying to submit + submitSuccess: false, // function called just before a successful submit event is sent to the server + semanticallyStrict: false, // set to true to tidy up generated HTML output + autoAdd: { + helpBlocks: true + }, + filter: function () { + // return $(this).is(":visible"); // only validate elements you can see + return true; // validate everything + } + }, + methods: { + init : function( options ) { + + var settings = $.extend(true, {}, defaults); + + settings.options = $.extend(true, settings.options, options); + + var $siblingElements = this; + + var uniqueForms = $.unique( + $siblingElements.map( function () { + return $(this).parents("form")[0]; + }).toArray() + ); + + $(uniqueForms).bind("submit", function (e) { + var $form = $(this); + var warningsFound = 0; + var $inputs = $form.find("input,textarea,select").not("[type=submit],[type=image]").filter(settings.options.filter); + $inputs.trigger("submit.validation").trigger("validationLostFocus.validation"); + + $inputs.each(function (i, el) { + var $this = $(el), + $controlGroup = $this.parents(".form-group").first(); + if ( + $controlGroup.hasClass("warning") + ) { + $controlGroup.removeClass("warning").addClass("error"); + warningsFound++; + } + }); + + $inputs.trigger("validationLostFocus.validation"); + + if (warningsFound) { + if (settings.options.preventSubmit) { + e.preventDefault(); + } + $form.addClass("error"); + if ($.isFunction(settings.options.submitError)) { + settings.options.submitError($form, e, $inputs.jqBootstrapValidation("collectErrors", true)); + } + } else { + $form.removeClass("error"); + if ($.isFunction(settings.options.submitSuccess)) { + settings.options.submitSuccess($form, e); + } + } + }); + + return this.each(function(){ + + // Get references to everything we're interested in + var $this = $(this), + $controlGroup = $this.parents(".form-group").first(), + $helpBlock = $controlGroup.find(".help-block").first(), + $form = $this.parents("form").first(), + validatorNames = []; + + // create message container if not exists + if (!$helpBlock.length && settings.options.autoAdd && settings.options.autoAdd.helpBlocks) { + $helpBlock = $('
'); + $controlGroup.find('.controls').append($helpBlock); + createdElements.push($helpBlock[0]); + } + + // ============================================================= + // SNIFF HTML FOR VALIDATORS + // ============================================================= + + // *snort sniff snuffle* + + if (settings.options.sniffHtml) { + var message = ""; + // --------------------------------------------------------- + // PATTERN + // --------------------------------------------------------- + if ($this.attr("pattern") !== undefined) { + message = "Not in the expected format"; + if ($this.data("validationPatternMessage")) { + message = $this.data("validationPatternMessage"); + } + $this.data("validationPatternMessage", message); + $this.data("validationPatternRegex", $this.attr("pattern")); + } + // --------------------------------------------------------- + // MAX + // --------------------------------------------------------- + if ($this.attr("max") !== undefined || $this.attr("aria-valuemax") !== undefined) { + var max = ($this.attr("max") !== undefined ? $this.attr("max") : $this.attr("aria-valuemax")); + message = "Too high: Maximum of '" + max + "'"; + if ($this.data("validationMaxMessage")) { + message = $this.data("validationMaxMessage"); + } + $this.data("validationMaxMessage", message); + $this.data("validationMaxMax", max); + } + // --------------------------------------------------------- + // MIN + // --------------------------------------------------------- + if ($this.attr("min") !== undefined || $this.attr("aria-valuemin") !== undefined) { + var min = ($this.attr("min") !== undefined ? $this.attr("min") : $this.attr("aria-valuemin")); + message = "Too low: Minimum of '" + min + "'"; + if ($this.data("validationMinMessage")) { + message = $this.data("validationMinMessage"); + } + $this.data("validationMinMessage", message); + $this.data("validationMinMin", min); + } + // --------------------------------------------------------- + // MAXLENGTH + // --------------------------------------------------------- + if ($this.attr("maxlength") !== undefined) { + message = "Too long: Maximum of '" + $this.attr("maxlength") + "' characters"; + if ($this.data("validationMaxlengthMessage")) { + message = $this.data("validationMaxlengthMessage"); + } + $this.data("validationMaxlengthMessage", message); + $this.data("validationMaxlengthMaxlength", $this.attr("maxlength")); + } + // --------------------------------------------------------- + // MINLENGTH + // --------------------------------------------------------- + if ($this.attr("minlength") !== undefined) { + message = "Too short: Minimum of '" + $this.attr("minlength") + "' characters"; + if ($this.data("validationMinlengthMessage")) { + message = $this.data("validationMinlengthMessage"); + } + $this.data("validationMinlengthMessage", message); + $this.data("validationMinlengthMinlength", $this.attr("minlength")); + } + // --------------------------------------------------------- + // REQUIRED + // --------------------------------------------------------- + if ($this.attr("required") !== undefined || $this.attr("aria-required") !== undefined) { + message = settings.builtInValidators.required.message; + if ($this.data("validationRequiredMessage")) { + message = $this.data("validationRequiredMessage"); + } + $this.data("validationRequiredMessage", message); + } + // --------------------------------------------------------- + // NUMBER + // --------------------------------------------------------- + if ($this.attr("type") !== undefined && $this.attr("type").toLowerCase() === "number") { + message = settings.builtInValidators.number.message; + if ($this.data("validationNumberMessage")) { + message = $this.data("validationNumberMessage"); + } + $this.data("validationNumberMessage", message); + } + // --------------------------------------------------------- + // EMAIL + // --------------------------------------------------------- + if ($this.attr("type") !== undefined && $this.attr("type").toLowerCase() === "email") { + message = "Not a valid email address"; + if ($this.data("validationValidemailMessage")) { + message = $this.data("validationValidemailMessage"); + } else if ($this.data("validationEmailMessage")) { + message = $this.data("validationEmailMessage"); + } + $this.data("validationValidemailMessage", message); + } + // --------------------------------------------------------- + // MINCHECKED + // --------------------------------------------------------- + if ($this.attr("minchecked") !== undefined) { + message = "Not enough options checked; Minimum of '" + $this.attr("minchecked") + "' required"; + if ($this.data("validationMincheckedMessage")) { + message = $this.data("validationMincheckedMessage"); + } + $this.data("validationMincheckedMessage", message); + $this.data("validationMincheckedMinchecked", $this.attr("minchecked")); + } + // --------------------------------------------------------- + // MAXCHECKED + // --------------------------------------------------------- + if ($this.attr("maxchecked") !== undefined) { + message = "Too many options checked; Maximum of '" + $this.attr("maxchecked") + "' required"; + if ($this.data("validationMaxcheckedMessage")) { + message = $this.data("validationMaxcheckedMessage"); + } + $this.data("validationMaxcheckedMessage", message); + $this.data("validationMaxcheckedMaxchecked", $this.attr("maxchecked")); + } + } + + // ============================================================= + // COLLECT VALIDATOR NAMES + // ============================================================= + + // Get named validators + if ($this.data("validation") !== undefined) { + validatorNames = $this.data("validation").split(","); + } + + // Get extra ones defined on the element's data attributes + $.each($this.data(), function (i, el) { + var parts = i.replace(/([A-Z])/g, ",$1").split(","); + if (parts[0] === "validation" && parts[1]) { + validatorNames.push(parts[1]); + } + }); + + // ============================================================= + // NORMALISE VALIDATOR NAMES + // ============================================================= + + var validatorNamesToInspect = validatorNames; + var newValidatorNamesToInspect = []; + + do // repeatedly expand 'shortcut' validators into their real validators + { + // Uppercase only the first letter of each name + $.each(validatorNames, function (i, el) { + validatorNames[i] = formatValidatorName(el); + }); + + // Remove duplicate validator names + validatorNames = $.unique(validatorNames); + + // Pull out the new validator names from each shortcut + newValidatorNamesToInspect = []; + $.each(validatorNamesToInspect, function(i, el) { + if ($this.data("validation" + el + "Shortcut") !== undefined) { + // Are these custom validators? + // Pull them out! + $.each($this.data("validation" + el + "Shortcut").split(","), function(i2, el2) { + newValidatorNamesToInspect.push(el2); + }); + } else if (settings.builtInValidators[el.toLowerCase()]) { + // Is this a recognised built-in? + // Pull it out! + var validator = settings.builtInValidators[el.toLowerCase()]; + if (validator.type.toLowerCase() === "shortcut") { + $.each(validator.shortcut.split(","), function (i, el) { + el = formatValidatorName(el); + newValidatorNamesToInspect.push(el); + validatorNames.push(el); + }); + } + } + }); + + validatorNamesToInspect = newValidatorNamesToInspect; + + } while (validatorNamesToInspect.length > 0) + + // ============================================================= + // SET UP VALIDATOR ARRAYS + // ============================================================= + + var validators = {}; + + $.each(validatorNames, function (i, el) { + // Set up the 'override' message + var message = $this.data("validation" + el + "Message"); + var hasOverrideMessage = (message !== undefined); + var foundValidator = false; + message = + ( + message + ? message + : "'" + el + "' validation failed " + ) + ; + + $.each( + settings.validatorTypes, + function (validatorType, validatorTemplate) { + if (validators[validatorType] === undefined) { + validators[validatorType] = []; + } + if (!foundValidator && $this.data("validation" + el + formatValidatorName(validatorTemplate.name)) !== undefined) { + validators[validatorType].push( + $.extend( + true, + { + name: formatValidatorName(validatorTemplate.name), + message: message + }, + validatorTemplate.init($this, el) + ) + ); + foundValidator = true; + } + } + ); + + if (!foundValidator && settings.builtInValidators[el.toLowerCase()]) { + + var validator = $.extend(true, {}, settings.builtInValidators[el.toLowerCase()]); + if (hasOverrideMessage) { + validator.message = message; + } + var validatorType = validator.type.toLowerCase(); + + if (validatorType === "shortcut") { + foundValidator = true; + } else { + $.each( + settings.validatorTypes, + function (validatorTemplateType, validatorTemplate) { + if (validators[validatorTemplateType] === undefined) { + validators[validatorTemplateType] = []; + } + if (!foundValidator && validatorType === validatorTemplateType.toLowerCase()) { + $this.data("validation" + el + formatValidatorName(validatorTemplate.name), validator[validatorTemplate.name.toLowerCase()]); + validators[validatorType].push( + $.extend( + validator, + validatorTemplate.init($this, el) + ) + ); + foundValidator = true; + } + } + ); + } + } + + if (! foundValidator) { + $.error("Cannot find validation info for '" + el + "'"); + } + }); + + // ============================================================= + // STORE FALLBACK VALUES + // ============================================================= + + $helpBlock.data( + "original-contents", + ( + $helpBlock.data("original-contents") + ? $helpBlock.data("original-contents") + : $helpBlock.html() + ) + ); + + $helpBlock.data( + "original-role", + ( + $helpBlock.data("original-role") + ? $helpBlock.data("original-role") + : $helpBlock.attr("role") + ) + ); + + $controlGroup.data( + "original-classes", + ( + $controlGroup.data("original-clases") + ? $controlGroup.data("original-classes") + : $controlGroup.attr("class") + ) + ); + + $this.data( + "original-aria-invalid", + ( + $this.data("original-aria-invalid") + ? $this.data("original-aria-invalid") + : $this.attr("aria-invalid") + ) + ); + + // ============================================================= + // VALIDATION + // ============================================================= + + $this.bind( + "validation.validation", + function (event, params) { + + var value = getValue($this); + + // Get a list of the errors to apply + var errorsFound = []; + + $.each(validators, function (validatorType, validatorTypeArray) { + if (value || value.length || (params && params.includeEmpty) || (!!settings.validatorTypes[validatorType].blockSubmit && params && !!params.submitting)) { + $.each(validatorTypeArray, function (i, validator) { + if (settings.validatorTypes[validatorType].validate($this, value, validator)) { + errorsFound.push(validator.message); + } + }); + } + }); + + return errorsFound; + } + ); + + $this.bind( + "getValidators.validation", + function () { + return validators; + } + ); + + // ============================================================= + // WATCH FOR CHANGES + // ============================================================= + $this.bind( + "submit.validation", + function () { + return $this.triggerHandler("change.validation", {submitting: true}); + } + ); + $this.bind( + [ + "keyup", + "focus", + "blur", + "click", + "keydown", + "keypress", + "change" + ].join(".validation ") + ".validation", + function (e, params) { + + var value = getValue($this); + + var errorsFound = []; + + $controlGroup.find("input,textarea,select").each(function (i, el) { + var oldCount = errorsFound.length; + $.each($(el).triggerHandler("validation.validation", params), function (j, message) { + errorsFound.push(message); + }); + if (errorsFound.length > oldCount) { + $(el).attr("aria-invalid", "true"); + } else { + var original = $this.data("original-aria-invalid"); + $(el).attr("aria-invalid", (original !== undefined ? original : false)); + } + }); + + $form.find("input,select,textarea").not($this).not("[name=\"" + $this.attr("name") + "\"]").trigger("validationLostFocus.validation"); + + errorsFound = $.unique(errorsFound.sort()); + + // Were there any errors? + if (errorsFound.length) { + // Better flag it up as a warning. + $controlGroup.removeClass("success error").addClass("warning"); + + // How many errors did we find? + if (settings.options.semanticallyStrict && errorsFound.length === 1) { + // Only one? Being strict? Just output it. + $helpBlock.html(errorsFound[0] + + ( settings.options.prependExistingHelpBlock ? $helpBlock.data("original-contents") : "" )); + } else { + // Multiple? Being sloppy? Glue them together into an UL. + $helpBlock.html("
  • " + errorsFound.join("
  • ") + "
" + + ( settings.options.prependExistingHelpBlock ? $helpBlock.data("original-contents") : "" )); + } + } else { + $controlGroup.removeClass("warning error success"); + if (value.length > 0) { + $controlGroup.addClass("success"); + } + $helpBlock.html($helpBlock.data("original-contents")); + } + + if (e.type === "blur") { + $controlGroup.removeClass("success"); + } + } + ); + $this.bind("validationLostFocus.validation", function () { + $controlGroup.removeClass("success"); + }); + }); + }, + destroy : function( ) { + + return this.each( + function() { + + var + $this = $(this), + $controlGroup = $this.parents(".form-group").first(), + $helpBlock = $controlGroup.find(".help-block").first(); + + // remove our events + $this.unbind('.validation'); // events are namespaced. + // reset help text + $helpBlock.html($helpBlock.data("original-contents")); + // reset classes + $controlGroup.attr("class", $controlGroup.data("original-classes")); + // reset aria + $this.attr("aria-invalid", $this.data("original-aria-invalid")); + // reset role + $helpBlock.attr("role", $this.data("original-role")); + // remove all elements we created + if (createdElements.indexOf($helpBlock[0]) > -1) { + $helpBlock.remove(); + } + + } + ); + + }, + collectErrors : function(includeEmpty) { + + var errorMessages = {}; + this.each(function (i, el) { + var $el = $(el); + var name = $el.attr("name"); + var errors = $el.triggerHandler("validation.validation", {includeEmpty: true}); + errorMessages[name] = $.extend(true, errors, errorMessages[name]); + }); + + $.each(errorMessages, function (i, el) { + if (el.length === 0) { + delete errorMessages[i]; + } + }); + + return errorMessages; + + }, + hasErrors: function() { + + var errorMessages = []; + + this.each(function (i, el) { + errorMessages = errorMessages.concat( + $(el).triggerHandler("getValidators.validation") ? $(el).triggerHandler("validation.validation", {submitting: true}) : [] + ); + }); + + return (errorMessages.length > 0); + }, + override : function (newDefaults) { + defaults = $.extend(true, defaults, newDefaults); + } + }, + validatorTypes: { + callback: { + name: "callback", + init: function ($this, name) { + return { + validatorName: name, + callback: $this.data("validation" + name + "Callback"), + lastValue: $this.val(), + lastValid: true, + lastFinished: true + }; + }, + validate: function ($this, value, validator) { + if (validator.lastValue === value && validator.lastFinished) { + return !validator.lastValid; + } + + if (validator.lastFinished === true) + { + validator.lastValue = value; + validator.lastValid = true; + validator.lastFinished = false; + + var rrjqbvValidator = validator; + var rrjqbvThis = $this; + executeFunctionByName( + validator.callback, + window, + $this, + value, + function (data) { + if (rrjqbvValidator.lastValue === data.value) { + rrjqbvValidator.lastValid = data.valid; + if (data.message) { + rrjqbvValidator.message = data.message; + } + rrjqbvValidator.lastFinished = true; + rrjqbvThis.data("validation" + rrjqbvValidator.validatorName + "Message", rrjqbvValidator.message); + // Timeout is set to avoid problems with the events being considered 'already fired' + setTimeout(function () { + rrjqbvThis.trigger("change.validation"); + }, 1); // doesn't need a long timeout, just long enough for the event bubble to burst + } + } + ); + } + + return false; + + } + }, + ajax: { + name: "ajax", + init: function ($this, name) { + return { + validatorName: name, + url: $this.data("validation" + name + "Ajax"), + lastValue: $this.val(), + lastValid: true, + lastFinished: true + }; + }, + validate: function ($this, value, validator) { + if (""+validator.lastValue === ""+value && validator.lastFinished === true) { + return validator.lastValid === false; + } + + if (validator.lastFinished === true) + { + validator.lastValue = value; + validator.lastValid = true; + validator.lastFinished = false; + $.ajax({ + url: validator.url, + data: "value=" + value + "&field=" + $this.attr("name"), + dataType: "json", + success: function (data) { + if (""+validator.lastValue === ""+data.value) { + validator.lastValid = !!(data.valid); + if (data.message) { + validator.message = data.message; + } + validator.lastFinished = true; + $this.data("validation" + validator.validatorName + "Message", validator.message); + // Timeout is set to avoid problems with the events being considered 'already fired' + setTimeout(function () { + $this.trigger("change.validation"); + }, 1); // doesn't need a long timeout, just long enough for the event bubble to burst + } + }, + failure: function () { + validator.lastValid = true; + validator.message = "ajax call failed"; + validator.lastFinished = true; + $this.data("validation" + validator.validatorName + "Message", validator.message); + // Timeout is set to avoid problems with the events being considered 'already fired' + setTimeout(function () { + $this.trigger("change.validation"); + }, 1); // doesn't need a long timeout, just long enough for the event bubble to burst + } + }); + } + + return false; + + } + }, + regex: { + name: "regex", + init: function ($this, name) { + return {regex: regexFromString($this.data("validation" + name + "Regex"))}; + }, + validate: function ($this, value, validator) { + return (!validator.regex.test(value) && ! validator.negative) + || (validator.regex.test(value) && validator.negative); + } + }, + required: { + name: "required", + init: function ($this, name) { + return {}; + }, + validate: function ($this, value, validator) { + return !!(value.length === 0 && ! validator.negative) + || !!(value.length > 0 && validator.negative); + }, + blockSubmit: true + }, + match: { + name: "match", + init: function ($this, name) { + var element = $this.parents("form").first().find("[name=\"" + $this.data("validation" + name + "Match") + "\"]").first(); + element.bind("validation.validation", function () { + $this.trigger("change.validation", {submitting: true}); + }); + return {"element": element}; + }, + validate: function ($this, value, validator) { + return (value !== validator.element.val() && ! validator.negative) + || (value === validator.element.val() && validator.negative); + }, + blockSubmit: true + }, + max: { + name: "max", + init: function ($this, name) { + return {max: $this.data("validation" + name + "Max")}; + }, + validate: function ($this, value, validator) { + return (parseFloat(value, 10) > parseFloat(validator.max, 10) && ! validator.negative) + || (parseFloat(value, 10) <= parseFloat(validator.max, 10) && validator.negative); + } + }, + min: { + name: "min", + init: function ($this, name) { + return {min: $this.data("validation" + name + "Min")}; + }, + validate: function ($this, value, validator) { + return (parseFloat(value) < parseFloat(validator.min) && ! validator.negative) + || (parseFloat(value) >= parseFloat(validator.min) && validator.negative); + } + }, + maxlength: { + name: "maxlength", + init: function ($this, name) { + return {maxlength: $this.data("validation" + name + "Maxlength")}; + }, + validate: function ($this, value, validator) { + return ((value.length > validator.maxlength) && ! validator.negative) + || ((value.length <= validator.maxlength) && validator.negative); + } + }, + minlength: { + name: "minlength", + init: function ($this, name) { + return {minlength: $this.data("validation" + name + "Minlength")}; + }, + validate: function ($this, value, validator) { + return ((value.length < validator.minlength) && ! validator.negative) + || ((value.length >= validator.minlength) && validator.negative); + } + }, + maxchecked: { + name: "maxchecked", + init: function ($this, name) { + var elements = $this.parents("form").first().find("[name=\"" + $this.attr("name") + "\"]"); + elements.bind("click.validation", function () { + $this.trigger("change.validation", {includeEmpty: true}); + }); + return {maxchecked: $this.data("validation" + name + "Maxchecked"), elements: elements}; + }, + validate: function ($this, value, validator) { + return (validator.elements.filter(":checked").length > validator.maxchecked && ! validator.negative) + || (validator.elements.filter(":checked").length <= validator.maxchecked && validator.negative); + }, + blockSubmit: true + }, + minchecked: { + name: "minchecked", + init: function ($this, name) { + var elements = $this.parents("form").first().find("[name=\"" + $this.attr("name") + "\"]"); + elements.bind("click.validation", function () { + $this.trigger("change.validation", {includeEmpty: true}); + }); + return {minchecked: $this.data("validation" + name + "Minchecked"), elements: elements}; + }, + validate: function ($this, value, validator) { + return (validator.elements.filter(":checked").length < validator.minchecked && ! validator.negative) + || (validator.elements.filter(":checked").length >= validator.minchecked && validator.negative); + }, + blockSubmit: true + } + }, + builtInValidators: { + email: { + name: "Email", + type: "shortcut", + shortcut: "validemail" + }, + validemail: { + name: "Validemail", + type: "regex", + regex: "[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\\\.[A-Za-z]{2,4}", + message: "Not a valid email address" + }, + passwordagain: { + name: "Passwordagain", + type: "match", + match: "password", + message: "Does not match the given password" + }, + positive: { + name: "Positive", + type: "shortcut", + shortcut: "number,positivenumber" + }, + negative: { + name: "Negative", + type: "shortcut", + shortcut: "number,negativenumber" + }, + number: { + name: "Number", + type: "regex", + regex: "([+-]?\\\d+(\\\.\\\d*)?([eE][+-]?[0-9]+)?)?", + message: "Must be a number" + }, + integer: { + name: "Integer", + type: "regex", + regex: "[+-]?\\\d+", + message: "No decimal places allowed" + }, + positivenumber: { + name: "Positivenumber", + type: "min", + min: 0, + message: "Must be a positive number" + }, + negativenumber: { + name: "Negativenumber", + type: "max", + max: 0, + message: "Must be a negative number" + }, + required: { + name: "Required", + type: "required", + message: "This is required" + }, + checkone: { + name: "Checkone", + type: "minchecked", + minchecked: 1, + message: "Check at least one option" + } + } + }; + + var formatValidatorName = function (name) { + return name + .toLowerCase() + .replace( + /(^|\s)([a-z])/g , + function(m,p1,p2) { + return p1+p2.toUpperCase(); + } + ) + ; + }; + + var getValue = function ($this) { + // Extract the value we're talking about + var value = $this.val(); + var type = $this.attr("type"); + if (type === "checkbox") { + value = ($this.is(":checked") ? value : ""); + } + if (type === "radio") { + value = ($('input[name="' + $this.attr("name") + '"]:checked').length > 0 ? value : ""); + } + return value; + }; + + function regexFromString(inputstring) { + return new RegExp("^" + inputstring + "$"); + } + + /** + * Thanks to Jason Bunting via StackOverflow.com + * + * http://stackoverflow.com/questions/359788/how-to-execute-a-javascript-function-when-i-have-its-name-as-a-string#answer-359910 + * Short link: http://tinyurl.com/executeFunctionByName + **/ + function executeFunctionByName(functionName, context /*, args*/) { + var args = Array.prototype.slice.call(arguments).splice(2); + var namespaces = functionName.split("."); + var func = namespaces.pop(); + for(var i = 0; i < namespaces.length; i++) { + context = context[namespaces[i]]; + } + return context[func].apply(this, args); + } + + $.fn.jqBootstrapValidation = function( method ) { + + if ( defaults.methods[method] ) { + return defaults.methods[method].apply( this, Array.prototype.slice.call( arguments, 1 )); + } else if ( typeof method === 'object' || ! method ) { + return defaults.methods.init.apply( this, arguments ); + } else { + $.error( 'Method ' + method + ' does not exist on jQuery.jqBootstrapValidation' ); + return null; + } + + }; + + $.jqBootstrapValidation = function (options) { + $(":input").not("[type=image],[type=submit]").jqBootstrapValidation.apply(this,arguments); + }; + +})( jQuery ); diff --git a/vraptor/src/main/webapp/vendor/bootstrap/css/bootstrap.css b/vraptor/src/main/webapp/vendor/bootstrap/css/bootstrap.css new file mode 100644 index 0000000000..6167622cec --- /dev/null +++ b/vraptor/src/main/webapp/vendor/bootstrap/css/bootstrap.css @@ -0,0 +1,6757 @@ +/*! + * Bootstrap v3.3.7 (http://getbootstrap.com) + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ +/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */ +html { + font-family: sans-serif; + -webkit-text-size-adjust: 100%; + -ms-text-size-adjust: 100%; +} +body { + margin: 0; +} +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +main, +menu, +nav, +section, +summary { + display: block; +} +audio, +canvas, +progress, +video { + display: inline-block; + vertical-align: baseline; +} +audio:not([controls]) { + display: none; + height: 0; +} +[hidden], +template { + display: none; +} +a { + background-color: transparent; +} +a:active, +a:hover { + outline: 0; +} +abbr[title] { + border-bottom: 1px dotted; +} +b, +strong { + font-weight: bold; +} +dfn { + font-style: italic; +} +h1 { + margin: .67em 0; + font-size: 2em; +} +mark { + color: #000; + background: #ff0; +} +small { + font-size: 80%; +} +sub, +sup { + position: relative; + font-size: 75%; + line-height: 0; + vertical-align: baseline; +} +sup { + top: -.5em; +} +sub { + bottom: -.25em; +} +img { + border: 0; +} +svg:not(:root) { + overflow: hidden; +} +figure { + margin: 1em 40px; +} +hr { + height: 0; + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; +} +pre { + overflow: auto; +} +code, +kbd, +pre, +samp { + font-family: monospace, monospace; + font-size: 1em; +} +button, +input, +optgroup, +select, +textarea { + margin: 0; + font: inherit; + color: inherit; +} +button { + overflow: visible; +} +button, +select { + text-transform: none; +} +button, +html input[type="button"], +input[type="reset"], +input[type="submit"] { + -webkit-appearance: button; + cursor: pointer; +} +button[disabled], +html input[disabled] { + cursor: default; +} +button::-moz-focus-inner, +input::-moz-focus-inner { + padding: 0; + border: 0; +} +input { + line-height: normal; +} +input[type="checkbox"], +input[type="radio"] { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + padding: 0; +} +input[type="number"]::-webkit-inner-spin-button, +input[type="number"]::-webkit-outer-spin-button { + height: auto; +} +input[type="search"] { + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; + -webkit-appearance: textfield; +} +input[type="search"]::-webkit-search-cancel-button, +input[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} +fieldset { + padding: .35em .625em .75em; + margin: 0 2px; + border: 1px solid #c0c0c0; +} +legend { + padding: 0; + border: 0; +} +textarea { + overflow: auto; +} +optgroup { + font-weight: bold; +} +table { + border-spacing: 0; + border-collapse: collapse; +} +td, +th { + padding: 0; +} +/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */ +@media print { + *, + *:before, + *:after { + color: #000 !important; + text-shadow: none !important; + background: transparent !important; + -webkit-box-shadow: none !important; + box-shadow: none !important; + } + a, + a:visited { + text-decoration: underline; + } + a[href]:after { + content: " (" attr(href) ")"; + } + abbr[title]:after { + content: " (" attr(title) ")"; + } + a[href^="#"]:after, + a[href^="javascript:"]:after { + content: ""; + } + pre, + blockquote { + border: 1px solid #999; + + page-break-inside: avoid; + } + thead { + display: table-header-group; + } + tr, + img { + page-break-inside: avoid; + } + img { + max-width: 100% !important; + } + p, + h2, + h3 { + orphans: 3; + widows: 3; + } + h2, + h3 { + page-break-after: avoid; + } + .navbar { + display: none; + } + .btn > .caret, + .dropup > .btn > .caret { + border-top-color: #000 !important; + } + .label { + 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 #ddd !important; + } +} +@font-face { + font-family: 'Glyphicons Halflings'; + + src: url('../fonts/glyphicons-halflings-regular.eot'); + src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff2') format('woff2'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg'); +} +.glyphicon { + position: relative; + top: 1px; + display: inline-block; + font-family: 'Glyphicons Halflings'; + font-style: normal; + font-weight: normal; + line-height: 1; + + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} +.glyphicon-asterisk:before { + content: "\002a"; +} +.glyphicon-plus:before { + content: "\002b"; +} +.glyphicon-euro:before, +.glyphicon-eur:before { + content: "\20ac"; +} +.glyphicon-minus:before { + content: "\2212"; +} +.glyphicon-cloud:before { + content: "\2601"; +} +.glyphicon-envelope:before { + content: "\2709"; +} +.glyphicon-pencil:before { + content: "\270f"; +} +.glyphicon-glass:before { + content: "\e001"; +} +.glyphicon-music:before { + content: "\e002"; +} +.glyphicon-search:before { + content: "\e003"; +} +.glyphicon-heart:before { + content: "\e005"; +} +.glyphicon-star:before { + content: "\e006"; +} +.glyphicon-star-empty:before { + content: "\e007"; +} +.glyphicon-user:before { + content: "\e008"; +} +.glyphicon-film:before { + content: "\e009"; +} +.glyphicon-th-large:before { + content: "\e010"; +} +.glyphicon-th:before { + content: "\e011"; +} +.glyphicon-th-list:before { + content: "\e012"; +} +.glyphicon-ok:before { + content: "\e013"; +} +.glyphicon-remove:before { + content: "\e014"; +} +.glyphicon-zoom-in:before { + content: "\e015"; +} +.glyphicon-zoom-out:before { + content: "\e016"; +} +.glyphicon-off:before { + content: "\e017"; +} +.glyphicon-signal:before { + content: "\e018"; +} +.glyphicon-cog:before { + content: "\e019"; +} +.glyphicon-trash:before { + content: "\e020"; +} +.glyphicon-home:before { + content: "\e021"; +} +.glyphicon-file:before { + content: "\e022"; +} +.glyphicon-time:before { + content: "\e023"; +} +.glyphicon-road:before { + content: "\e024"; +} +.glyphicon-download-alt:before { + content: "\e025"; +} +.glyphicon-download:before { + content: "\e026"; +} +.glyphicon-upload:before { + content: "\e027"; +} +.glyphicon-inbox:before { + content: "\e028"; +} +.glyphicon-play-circle:before { + content: "\e029"; +} +.glyphicon-repeat:before { + content: "\e030"; +} +.glyphicon-refresh:before { + content: "\e031"; +} +.glyphicon-list-alt:before { + content: "\e032"; +} +.glyphicon-lock:before { + content: "\e033"; +} +.glyphicon-flag:before { + content: "\e034"; +} +.glyphicon-headphones:before { + content: "\e035"; +} +.glyphicon-volume-off:before { + content: "\e036"; +} +.glyphicon-volume-down:before { + content: "\e037"; +} +.glyphicon-volume-up:before { + content: "\e038"; +} +.glyphicon-qrcode:before { + content: "\e039"; +} +.glyphicon-barcode:before { + content: "\e040"; +} +.glyphicon-tag:before { + content: "\e041"; +} +.glyphicon-tags:before { + content: "\e042"; +} +.glyphicon-book:before { + content: "\e043"; +} +.glyphicon-bookmark:before { + content: "\e044"; +} +.glyphicon-print:before { + content: "\e045"; +} +.glyphicon-camera:before { + content: "\e046"; +} +.glyphicon-font:before { + content: "\e047"; +} +.glyphicon-bold:before { + content: "\e048"; +} +.glyphicon-italic:before { + content: "\e049"; +} +.glyphicon-text-height:before { + content: "\e050"; +} +.glyphicon-text-width:before { + content: "\e051"; +} +.glyphicon-align-left:before { + content: "\e052"; +} +.glyphicon-align-center:before { + content: "\e053"; +} +.glyphicon-align-right:before { + content: "\e054"; +} +.glyphicon-align-justify:before { + content: "\e055"; +} +.glyphicon-list:before { + content: "\e056"; +} +.glyphicon-indent-left:before { + content: "\e057"; +} +.glyphicon-indent-right:before { + content: "\e058"; +} +.glyphicon-facetime-video:before { + content: "\e059"; +} +.glyphicon-picture:before { + content: "\e060"; +} +.glyphicon-map-marker:before { + content: "\e062"; +} +.glyphicon-adjust:before { + content: "\e063"; +} +.glyphicon-tint:before { + content: "\e064"; +} +.glyphicon-edit:before { + content: "\e065"; +} +.glyphicon-share:before { + content: "\e066"; +} +.glyphicon-check:before { + content: "\e067"; +} +.glyphicon-move:before { + content: "\e068"; +} +.glyphicon-step-backward:before { + content: "\e069"; +} +.glyphicon-fast-backward:before { + content: "\e070"; +} +.glyphicon-backward:before { + content: "\e071"; +} +.glyphicon-play:before { + content: "\e072"; +} +.glyphicon-pause:before { + content: "\e073"; +} +.glyphicon-stop:before { + content: "\e074"; +} +.glyphicon-forward:before { + content: "\e075"; +} +.glyphicon-fast-forward:before { + content: "\e076"; +} +.glyphicon-step-forward:before { + content: "\e077"; +} +.glyphicon-eject:before { + content: "\e078"; +} +.glyphicon-chevron-left:before { + content: "\e079"; +} +.glyphicon-chevron-right:before { + content: "\e080"; +} +.glyphicon-plus-sign:before { + content: "\e081"; +} +.glyphicon-minus-sign:before { + content: "\e082"; +} +.glyphicon-remove-sign:before { + content: "\e083"; +} +.glyphicon-ok-sign:before { + content: "\e084"; +} +.glyphicon-question-sign:before { + content: "\e085"; +} +.glyphicon-info-sign:before { + content: "\e086"; +} +.glyphicon-screenshot:before { + content: "\e087"; +} +.glyphicon-remove-circle:before { + content: "\e088"; +} +.glyphicon-ok-circle:before { + content: "\e089"; +} +.glyphicon-ban-circle:before { + content: "\e090"; +} +.glyphicon-arrow-left:before { + content: "\e091"; +} +.glyphicon-arrow-right:before { + content: "\e092"; +} +.glyphicon-arrow-up:before { + content: "\e093"; +} +.glyphicon-arrow-down:before { + content: "\e094"; +} +.glyphicon-share-alt:before { + content: "\e095"; +} +.glyphicon-resize-full:before { + content: "\e096"; +} +.glyphicon-resize-small:before { + content: "\e097"; +} +.glyphicon-exclamation-sign:before { + content: "\e101"; +} +.glyphicon-gift:before { + content: "\e102"; +} +.glyphicon-leaf:before { + content: "\e103"; +} +.glyphicon-fire:before { + content: "\e104"; +} +.glyphicon-eye-open:before { + content: "\e105"; +} +.glyphicon-eye-close:before { + content: "\e106"; +} +.glyphicon-warning-sign:before { + content: "\e107"; +} +.glyphicon-plane:before { + content: "\e108"; +} +.glyphicon-calendar:before { + content: "\e109"; +} +.glyphicon-random:before { + content: "\e110"; +} +.glyphicon-comment:before { + content: "\e111"; +} +.glyphicon-magnet:before { + content: "\e112"; +} +.glyphicon-chevron-up:before { + content: "\e113"; +} +.glyphicon-chevron-down:before { + content: "\e114"; +} +.glyphicon-retweet:before { + content: "\e115"; +} +.glyphicon-shopping-cart:before { + content: "\e116"; +} +.glyphicon-folder-close:before { + content: "\e117"; +} +.glyphicon-folder-open:before { + content: "\e118"; +} +.glyphicon-resize-vertical:before { + content: "\e119"; +} +.glyphicon-resize-horizontal:before { + content: "\e120"; +} +.glyphicon-hdd:before { + content: "\e121"; +} +.glyphicon-bullhorn:before { + content: "\e122"; +} +.glyphicon-bell:before { + content: "\e123"; +} +.glyphicon-certificate:before { + content: "\e124"; +} +.glyphicon-thumbs-up:before { + content: "\e125"; +} +.glyphicon-thumbs-down:before { + content: "\e126"; +} +.glyphicon-hand-right:before { + content: "\e127"; +} +.glyphicon-hand-left:before { + content: "\e128"; +} +.glyphicon-hand-up:before { + content: "\e129"; +} +.glyphicon-hand-down:before { + content: "\e130"; +} +.glyphicon-circle-arrow-right:before { + content: "\e131"; +} +.glyphicon-circle-arrow-left:before { + content: "\e132"; +} +.glyphicon-circle-arrow-up:before { + content: "\e133"; +} +.glyphicon-circle-arrow-down:before { + content: "\e134"; +} +.glyphicon-globe:before { + content: "\e135"; +} +.glyphicon-wrench:before { + content: "\e136"; +} +.glyphicon-tasks:before { + content: "\e137"; +} +.glyphicon-filter:before { + content: "\e138"; +} +.glyphicon-briefcase:before { + content: "\e139"; +} +.glyphicon-fullscreen:before { + content: "\e140"; +} +.glyphicon-dashboard:before { + content: "\e141"; +} +.glyphicon-paperclip:before { + content: "\e142"; +} +.glyphicon-heart-empty:before { + content: "\e143"; +} +.glyphicon-link:before { + content: "\e144"; +} +.glyphicon-phone:before { + content: "\e145"; +} +.glyphicon-pushpin:before { + content: "\e146"; +} +.glyphicon-usd:before { + content: "\e148"; +} +.glyphicon-gbp:before { + content: "\e149"; +} +.glyphicon-sort:before { + content: "\e150"; +} +.glyphicon-sort-by-alphabet:before { + content: "\e151"; +} +.glyphicon-sort-by-alphabet-alt:before { + content: "\e152"; +} +.glyphicon-sort-by-order:before { + content: "\e153"; +} +.glyphicon-sort-by-order-alt:before { + content: "\e154"; +} +.glyphicon-sort-by-attributes:before { + content: "\e155"; +} +.glyphicon-sort-by-attributes-alt:before { + content: "\e156"; +} +.glyphicon-unchecked:before { + content: "\e157"; +} +.glyphicon-expand:before { + content: "\e158"; +} +.glyphicon-collapse-down:before { + content: "\e159"; +} +.glyphicon-collapse-up:before { + content: "\e160"; +} +.glyphicon-log-in:before { + content: "\e161"; +} +.glyphicon-flash:before { + content: "\e162"; +} +.glyphicon-log-out:before { + content: "\e163"; +} +.glyphicon-new-window:before { + content: "\e164"; +} +.glyphicon-record:before { + content: "\e165"; +} +.glyphicon-save:before { + content: "\e166"; +} +.glyphicon-open:before { + content: "\e167"; +} +.glyphicon-saved:before { + content: "\e168"; +} +.glyphicon-import:before { + content: "\e169"; +} +.glyphicon-export:before { + content: "\e170"; +} +.glyphicon-send:before { + content: "\e171"; +} +.glyphicon-floppy-disk:before { + content: "\e172"; +} +.glyphicon-floppy-saved:before { + content: "\e173"; +} +.glyphicon-floppy-remove:before { + content: "\e174"; +} +.glyphicon-floppy-save:before { + content: "\e175"; +} +.glyphicon-floppy-open:before { + content: "\e176"; +} +.glyphicon-credit-card:before { + content: "\e177"; +} +.glyphicon-transfer:before { + content: "\e178"; +} +.glyphicon-cutlery:before { + content: "\e179"; +} +.glyphicon-header:before { + content: "\e180"; +} +.glyphicon-compressed:before { + content: "\e181"; +} +.glyphicon-earphone:before { + content: "\e182"; +} +.glyphicon-phone-alt:before { + content: "\e183"; +} +.glyphicon-tower:before { + content: "\e184"; +} +.glyphicon-stats:before { + content: "\e185"; +} +.glyphicon-sd-video:before { + content: "\e186"; +} +.glyphicon-hd-video:before { + content: "\e187"; +} +.glyphicon-subtitles:before { + content: "\e188"; +} +.glyphicon-sound-stereo:before { + content: "\e189"; +} +.glyphicon-sound-dolby:before { + content: "\e190"; +} +.glyphicon-sound-5-1:before { + content: "\e191"; +} +.glyphicon-sound-6-1:before { + content: "\e192"; +} +.glyphicon-sound-7-1:before { + content: "\e193"; +} +.glyphicon-copyright-mark:before { + content: "\e194"; +} +.glyphicon-registration-mark:before { + content: "\e195"; +} +.glyphicon-cloud-download:before { + content: "\e197"; +} +.glyphicon-cloud-upload:before { + content: "\e198"; +} +.glyphicon-tree-conifer:before { + content: "\e199"; +} +.glyphicon-tree-deciduous:before { + content: "\e200"; +} +.glyphicon-cd:before { + content: "\e201"; +} +.glyphicon-save-file:before { + content: "\e202"; +} +.glyphicon-open-file:before { + content: "\e203"; +} +.glyphicon-level-up:before { + content: "\e204"; +} +.glyphicon-copy:before { + content: "\e205"; +} +.glyphicon-paste:before { + content: "\e206"; +} +.glyphicon-alert:before { + content: "\e209"; +} +.glyphicon-equalizer:before { + content: "\e210"; +} +.glyphicon-king:before { + content: "\e211"; +} +.glyphicon-queen:before { + content: "\e212"; +} +.glyphicon-pawn:before { + content: "\e213"; +} +.glyphicon-bishop:before { + content: "\e214"; +} +.glyphicon-knight:before { + content: "\e215"; +} +.glyphicon-baby-formula:before { + content: "\e216"; +} +.glyphicon-tent:before { + content: "\26fa"; +} +.glyphicon-blackboard:before { + content: "\e218"; +} +.glyphicon-bed:before { + content: "\e219"; +} +.glyphicon-apple:before { + content: "\f8ff"; +} +.glyphicon-erase:before { + content: "\e221"; +} +.glyphicon-hourglass:before { + content: "\231b"; +} +.glyphicon-lamp:before { + content: "\e223"; +} +.glyphicon-duplicate:before { + content: "\e224"; +} +.glyphicon-piggy-bank:before { + content: "\e225"; +} +.glyphicon-scissors:before { + content: "\e226"; +} +.glyphicon-bitcoin:before { + content: "\e227"; +} +.glyphicon-btc:before { + content: "\e227"; +} +.glyphicon-xbt:before { + content: "\e227"; +} +.glyphicon-yen:before { + content: "\00a5"; +} +.glyphicon-jpy:before { + content: "\00a5"; +} +.glyphicon-ruble:before { + content: "\20bd"; +} +.glyphicon-rub:before { + content: "\20bd"; +} +.glyphicon-scale:before { + content: "\e230"; +} +.glyphicon-ice-lolly:before { + content: "\e231"; +} +.glyphicon-ice-lolly-tasted:before { + content: "\e232"; +} +.glyphicon-education:before { + content: "\e233"; +} +.glyphicon-option-horizontal:before { + content: "\e234"; +} +.glyphicon-option-vertical:before { + content: "\e235"; +} +.glyphicon-menu-hamburger:before { + content: "\e236"; +} +.glyphicon-modal-window:before { + content: "\e237"; +} +.glyphicon-oil:before { + content: "\e238"; +} +.glyphicon-grain:before { + content: "\e239"; +} +.glyphicon-sunglasses:before { + content: "\e240"; +} +.glyphicon-text-size:before { + content: "\e241"; +} +.glyphicon-text-color:before { + content: "\e242"; +} +.glyphicon-text-background:before { + content: "\e243"; +} +.glyphicon-object-align-top:before { + content: "\e244"; +} +.glyphicon-object-align-bottom:before { + content: "\e245"; +} +.glyphicon-object-align-horizontal:before { + content: "\e246"; +} +.glyphicon-object-align-left:before { + content: "\e247"; +} +.glyphicon-object-align-vertical:before { + content: "\e248"; +} +.glyphicon-object-align-right:before { + content: "\e249"; +} +.glyphicon-triangle-right:before { + content: "\e250"; +} +.glyphicon-triangle-left:before { + content: "\e251"; +} +.glyphicon-triangle-bottom:before { + content: "\e252"; +} +.glyphicon-triangle-top:before { + content: "\e253"; +} +.glyphicon-console:before { + content: "\e254"; +} +.glyphicon-superscript:before { + content: "\e255"; +} +.glyphicon-subscript:before { + content: "\e256"; +} +.glyphicon-menu-left:before { + content: "\e257"; +} +.glyphicon-menu-right:before { + content: "\e258"; +} +.glyphicon-menu-down:before { + content: "\e259"; +} +.glyphicon-menu-up:before { + content: "\e260"; +} +* { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +*:before, +*:after { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +html { + font-size: 10px; + + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); +} +body { + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 14px; + line-height: 1.42857143; + color: #333; + background-color: #fff; +} +input, +button, +select, +textarea { + font-family: inherit; + font-size: inherit; + line-height: inherit; +} +a { + color: #337ab7; + text-decoration: none; +} +a:hover, +a:focus { + color: #23527c; + text-decoration: underline; +} +a:focus { + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +figure { + margin: 0; +} +img { + vertical-align: middle; +} +.img-responsive, +.thumbnail > img, +.thumbnail a > img, +.carousel-inner > .item > img, +.carousel-inner > .item > a > img { + display: block; + max-width: 100%; + height: auto; +} +.img-rounded { + border-radius: 6px; +} +.img-thumbnail { + display: inline-block; + max-width: 100%; + height: auto; + padding: 4px; + line-height: 1.42857143; + background-color: #fff; + border: 1px solid #ddd; + border-radius: 4px; + -webkit-transition: all .2s ease-in-out; + -o-transition: all .2s ease-in-out; + transition: all .2s ease-in-out; +} +.img-circle { + border-radius: 50%; +} +hr { + margin-top: 20px; + margin-bottom: 20px; + border: 0; + border-top: 1px solid #eee; +} +.sr-only { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + margin: -1px; + overflow: hidden; + clip: rect(0, 0, 0, 0); + border: 0; +} +.sr-only-focusable:active, +.sr-only-focusable:focus { + position: static; + width: auto; + height: auto; + margin: 0; + overflow: visible; + clip: auto; +} +[role="button"] { + cursor: pointer; +} +h1, +h2, +h3, +h4, +h5, +h6, +.h1, +.h2, +.h3, +.h4, +.h5, +.h6 { + font-family: inherit; + font-weight: 500; + line-height: 1.1; + color: inherit; +} +h1 small, +h2 small, +h3 small, +h4 small, +h5 small, +h6 small, +.h1 small, +.h2 small, +.h3 small, +.h4 small, +.h5 small, +.h6 small, +h1 .small, +h2 .small, +h3 .small, +h4 .small, +h5 .small, +h6 .small, +.h1 .small, +.h2 .small, +.h3 .small, +.h4 .small, +.h5 .small, +.h6 .small { + font-weight: normal; + line-height: 1; + color: #777; +} +h1, +.h1, +h2, +.h2, +h3, +.h3 { + margin-top: 20px; + margin-bottom: 10px; +} +h1 small, +.h1 small, +h2 small, +.h2 small, +h3 small, +.h3 small, +h1 .small, +.h1 .small, +h2 .small, +.h2 .small, +h3 .small, +.h3 .small { + font-size: 65%; +} +h4, +.h4, +h5, +.h5, +h6, +.h6 { + margin-top: 10px; + margin-bottom: 10px; +} +h4 small, +.h4 small, +h5 small, +.h5 small, +h6 small, +.h6 small, +h4 .small, +.h4 .small, +h5 .small, +.h5 .small, +h6 .small, +.h6 .small { + font-size: 75%; +} +h1, +.h1 { + font-size: 36px; +} +h2, +.h2 { + font-size: 30px; +} +h3, +.h3 { + font-size: 24px; +} +h4, +.h4 { + font-size: 18px; +} +h5, +.h5 { + font-size: 14px; +} +h6, +.h6 { + font-size: 12px; +} +p { + margin: 0 0 10px; +} +.lead { + margin-bottom: 20px; + font-size: 16px; + font-weight: 300; + line-height: 1.4; +} +@media (min-width: 768px) { + .lead { + font-size: 21px; + } +} +small, +.small { + font-size: 85%; +} +mark, +.mark { + padding: .2em; + background-color: #fcf8e3; +} +.text-left { + text-align: left; +} +.text-right { + text-align: right; +} +.text-center { + text-align: center; +} +.text-justify { + text-align: justify; +} +.text-nowrap { + white-space: nowrap; +} +.text-lowercase { + text-transform: lowercase; +} +.text-uppercase { + text-transform: uppercase; +} +.text-capitalize { + text-transform: capitalize; +} +.text-muted { + color: #777; +} +.text-primary { + color: #337ab7; +} +a.text-primary:hover, +a.text-primary:focus { + color: #286090; +} +.text-success { + color: #3c763d; +} +a.text-success:hover, +a.text-success:focus { + color: #2b542c; +} +.text-info { + color: #31708f; +} +a.text-info:hover, +a.text-info:focus { + color: #245269; +} +.text-warning { + color: #8a6d3b; +} +a.text-warning:hover, +a.text-warning:focus { + color: #66512c; +} +.text-danger { + color: #a94442; +} +a.text-danger:hover, +a.text-danger:focus { + color: #843534; +} +.bg-primary { + color: #fff; + background-color: #337ab7; +} +a.bg-primary:hover, +a.bg-primary:focus { + background-color: #286090; +} +.bg-success { + background-color: #dff0d8; +} +a.bg-success:hover, +a.bg-success:focus { + background-color: #c1e2b3; +} +.bg-info { + background-color: #d9edf7; +} +a.bg-info:hover, +a.bg-info:focus { + background-color: #afd9ee; +} +.bg-warning { + background-color: #fcf8e3; +} +a.bg-warning:hover, +a.bg-warning:focus { + background-color: #f7ecb5; +} +.bg-danger { + background-color: #f2dede; +} +a.bg-danger:hover, +a.bg-danger:focus { + background-color: #e4b9b9; +} +.page-header { + padding-bottom: 9px; + margin: 40px 0 20px; + border-bottom: 1px solid #eee; +} +ul, +ol { + margin-top: 0; + margin-bottom: 10px; +} +ul ul, +ol ul, +ul ol, +ol ol { + margin-bottom: 0; +} +.list-unstyled { + padding-left: 0; + list-style: none; +} +.list-inline { + padding-left: 0; + margin-left: -5px; + list-style: none; +} +.list-inline > li { + display: inline-block; + padding-right: 5px; + padding-left: 5px; +} +dl { + margin-top: 0; + margin-bottom: 20px; +} +dt, +dd { + line-height: 1.42857143; +} +dt { + font-weight: bold; +} +dd { + margin-left: 0; +} +@media (min-width: 768px) { + .dl-horizontal dt { + float: left; + width: 160px; + overflow: hidden; + clear: left; + text-align: right; + text-overflow: ellipsis; + white-space: nowrap; + } + .dl-horizontal dd { + margin-left: 180px; + } +} +abbr[title], +abbr[data-original-title] { + cursor: help; + border-bottom: 1px dotted #777; +} +.initialism { + font-size: 90%; + text-transform: uppercase; +} +blockquote { + padding: 10px 20px; + margin: 0 0 20px; + font-size: 17.5px; + border-left: 5px solid #eee; +} +blockquote p:last-child, +blockquote ul:last-child, +blockquote ol:last-child { + margin-bottom: 0; +} +blockquote footer, +blockquote small, +blockquote .small { + display: block; + font-size: 80%; + line-height: 1.42857143; + color: #777; +} +blockquote footer:before, +blockquote small:before, +blockquote .small:before { + content: '\2014 \00A0'; +} +.blockquote-reverse, +blockquote.pull-right { + padding-right: 15px; + padding-left: 0; + text-align: right; + border-right: 5px solid #eee; + border-left: 0; +} +.blockquote-reverse footer:before, +blockquote.pull-right footer:before, +.blockquote-reverse small:before, +blockquote.pull-right small:before, +.blockquote-reverse .small:before, +blockquote.pull-right .small:before { + content: ''; +} +.blockquote-reverse footer:after, +blockquote.pull-right footer:after, +.blockquote-reverse small:after, +blockquote.pull-right small:after, +.blockquote-reverse .small:after, +blockquote.pull-right .small:after { + content: '\00A0 \2014'; +} +address { + margin-bottom: 20px; + font-style: normal; + line-height: 1.42857143; +} +code, +kbd, +pre, +samp { + font-family: Menlo, Monaco, Consolas, "Courier New", monospace; +} +code { + padding: 2px 4px; + font-size: 90%; + color: #c7254e; + background-color: #f9f2f4; + border-radius: 4px; +} +kbd { + padding: 2px 4px; + font-size: 90%; + color: #fff; + background-color: #333; + border-radius: 3px; + -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .25); + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .25); +} +kbd kbd { + padding: 0; + font-size: 100%; + font-weight: bold; + -webkit-box-shadow: none; + box-shadow: none; +} +pre { + display: block; + padding: 9.5px; + margin: 0 0 10px; + font-size: 13px; + line-height: 1.42857143; + color: #333; + word-break: break-all; + word-wrap: break-word; + background-color: #f5f5f5; + border: 1px solid #ccc; + border-radius: 4px; +} +pre code { + padding: 0; + font-size: inherit; + color: inherit; + white-space: pre-wrap; + background-color: transparent; + border-radius: 0; +} +.pre-scrollable { + max-height: 340px; + overflow-y: scroll; +} +.container { + padding-right: 15px; + padding-left: 15px; + margin-right: auto; + margin-left: auto; +} +@media (min-width: 768px) { + .container { + width: 750px; + } +} +@media (min-width: 992px) { + .container { + width: 970px; + } +} +@media (min-width: 1200px) { + .container { + width: 1170px; + } +} +.container-fluid { + padding-right: 15px; + padding-left: 15px; + margin-right: auto; + margin-left: auto; +} +.row { + margin-right: -15px; + margin-left: -15px; +} +.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 { + position: relative; + min-height: 1px; + padding-right: 15px; + padding-left: 15px; +} +.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 { + float: left; +} +.col-xs-12 { + width: 100%; +} +.col-xs-11 { + width: 91.66666667%; +} +.col-xs-10 { + width: 83.33333333%; +} +.col-xs-9 { + width: 75%; +} +.col-xs-8 { + width: 66.66666667%; +} +.col-xs-7 { + width: 58.33333333%; +} +.col-xs-6 { + width: 50%; +} +.col-xs-5 { + width: 41.66666667%; +} +.col-xs-4 { + width: 33.33333333%; +} +.col-xs-3 { + width: 25%; +} +.col-xs-2 { + width: 16.66666667%; +} +.col-xs-1 { + width: 8.33333333%; +} +.col-xs-pull-12 { + right: 100%; +} +.col-xs-pull-11 { + right: 91.66666667%; +} +.col-xs-pull-10 { + right: 83.33333333%; +} +.col-xs-pull-9 { + right: 75%; +} +.col-xs-pull-8 { + right: 66.66666667%; +} +.col-xs-pull-7 { + right: 58.33333333%; +} +.col-xs-pull-6 { + right: 50%; +} +.col-xs-pull-5 { + right: 41.66666667%; +} +.col-xs-pull-4 { + right: 33.33333333%; +} +.col-xs-pull-3 { + right: 25%; +} +.col-xs-pull-2 { + right: 16.66666667%; +} +.col-xs-pull-1 { + right: 8.33333333%; +} +.col-xs-pull-0 { + right: auto; +} +.col-xs-push-12 { + left: 100%; +} +.col-xs-push-11 { + left: 91.66666667%; +} +.col-xs-push-10 { + left: 83.33333333%; +} +.col-xs-push-9 { + left: 75%; +} +.col-xs-push-8 { + left: 66.66666667%; +} +.col-xs-push-7 { + left: 58.33333333%; +} +.col-xs-push-6 { + left: 50%; +} +.col-xs-push-5 { + left: 41.66666667%; +} +.col-xs-push-4 { + left: 33.33333333%; +} +.col-xs-push-3 { + left: 25%; +} +.col-xs-push-2 { + left: 16.66666667%; +} +.col-xs-push-1 { + left: 8.33333333%; +} +.col-xs-push-0 { + left: auto; +} +.col-xs-offset-12 { + margin-left: 100%; +} +.col-xs-offset-11 { + margin-left: 91.66666667%; +} +.col-xs-offset-10 { + margin-left: 83.33333333%; +} +.col-xs-offset-9 { + margin-left: 75%; +} +.col-xs-offset-8 { + margin-left: 66.66666667%; +} +.col-xs-offset-7 { + margin-left: 58.33333333%; +} +.col-xs-offset-6 { + margin-left: 50%; +} +.col-xs-offset-5 { + margin-left: 41.66666667%; +} +.col-xs-offset-4 { + margin-left: 33.33333333%; +} +.col-xs-offset-3 { + margin-left: 25%; +} +.col-xs-offset-2 { + margin-left: 16.66666667%; +} +.col-xs-offset-1 { + margin-left: 8.33333333%; +} +.col-xs-offset-0 { + margin-left: 0; +} +@media (min-width: 768px) { + .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 { + float: left; + } + .col-sm-12 { + width: 100%; + } + .col-sm-11 { + width: 91.66666667%; + } + .col-sm-10 { + width: 83.33333333%; + } + .col-sm-9 { + width: 75%; + } + .col-sm-8 { + width: 66.66666667%; + } + .col-sm-7 { + width: 58.33333333%; + } + .col-sm-6 { + width: 50%; + } + .col-sm-5 { + width: 41.66666667%; + } + .col-sm-4 { + width: 33.33333333%; + } + .col-sm-3 { + width: 25%; + } + .col-sm-2 { + width: 16.66666667%; + } + .col-sm-1 { + width: 8.33333333%; + } + .col-sm-pull-12 { + right: 100%; + } + .col-sm-pull-11 { + right: 91.66666667%; + } + .col-sm-pull-10 { + right: 83.33333333%; + } + .col-sm-pull-9 { + right: 75%; + } + .col-sm-pull-8 { + right: 66.66666667%; + } + .col-sm-pull-7 { + right: 58.33333333%; + } + .col-sm-pull-6 { + right: 50%; + } + .col-sm-pull-5 { + right: 41.66666667%; + } + .col-sm-pull-4 { + right: 33.33333333%; + } + .col-sm-pull-3 { + right: 25%; + } + .col-sm-pull-2 { + right: 16.66666667%; + } + .col-sm-pull-1 { + right: 8.33333333%; + } + .col-sm-pull-0 { + right: auto; + } + .col-sm-push-12 { + left: 100%; + } + .col-sm-push-11 { + left: 91.66666667%; + } + .col-sm-push-10 { + left: 83.33333333%; + } + .col-sm-push-9 { + left: 75%; + } + .col-sm-push-8 { + left: 66.66666667%; + } + .col-sm-push-7 { + left: 58.33333333%; + } + .col-sm-push-6 { + left: 50%; + } + .col-sm-push-5 { + left: 41.66666667%; + } + .col-sm-push-4 { + left: 33.33333333%; + } + .col-sm-push-3 { + left: 25%; + } + .col-sm-push-2 { + left: 16.66666667%; + } + .col-sm-push-1 { + left: 8.33333333%; + } + .col-sm-push-0 { + left: auto; + } + .col-sm-offset-12 { + margin-left: 100%; + } + .col-sm-offset-11 { + margin-left: 91.66666667%; + } + .col-sm-offset-10 { + margin-left: 83.33333333%; + } + .col-sm-offset-9 { + margin-left: 75%; + } + .col-sm-offset-8 { + margin-left: 66.66666667%; + } + .col-sm-offset-7 { + margin-left: 58.33333333%; + } + .col-sm-offset-6 { + margin-left: 50%; + } + .col-sm-offset-5 { + margin-left: 41.66666667%; + } + .col-sm-offset-4 { + margin-left: 33.33333333%; + } + .col-sm-offset-3 { + margin-left: 25%; + } + .col-sm-offset-2 { + margin-left: 16.66666667%; + } + .col-sm-offset-1 { + margin-left: 8.33333333%; + } + .col-sm-offset-0 { + margin-left: 0; + } +} +@media (min-width: 992px) { + .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 { + float: left; + } + .col-md-12 { + width: 100%; + } + .col-md-11 { + width: 91.66666667%; + } + .col-md-10 { + width: 83.33333333%; + } + .col-md-9 { + width: 75%; + } + .col-md-8 { + width: 66.66666667%; + } + .col-md-7 { + width: 58.33333333%; + } + .col-md-6 { + width: 50%; + } + .col-md-5 { + width: 41.66666667%; + } + .col-md-4 { + width: 33.33333333%; + } + .col-md-3 { + width: 25%; + } + .col-md-2 { + width: 16.66666667%; + } + .col-md-1 { + width: 8.33333333%; + } + .col-md-pull-12 { + right: 100%; + } + .col-md-pull-11 { + right: 91.66666667%; + } + .col-md-pull-10 { + right: 83.33333333%; + } + .col-md-pull-9 { + right: 75%; + } + .col-md-pull-8 { + right: 66.66666667%; + } + .col-md-pull-7 { + right: 58.33333333%; + } + .col-md-pull-6 { + right: 50%; + } + .col-md-pull-5 { + right: 41.66666667%; + } + .col-md-pull-4 { + right: 33.33333333%; + } + .col-md-pull-3 { + right: 25%; + } + .col-md-pull-2 { + right: 16.66666667%; + } + .col-md-pull-1 { + right: 8.33333333%; + } + .col-md-pull-0 { + right: auto; + } + .col-md-push-12 { + left: 100%; + } + .col-md-push-11 { + left: 91.66666667%; + } + .col-md-push-10 { + left: 83.33333333%; + } + .col-md-push-9 { + left: 75%; + } + .col-md-push-8 { + left: 66.66666667%; + } + .col-md-push-7 { + left: 58.33333333%; + } + .col-md-push-6 { + left: 50%; + } + .col-md-push-5 { + left: 41.66666667%; + } + .col-md-push-4 { + left: 33.33333333%; + } + .col-md-push-3 { + left: 25%; + } + .col-md-push-2 { + left: 16.66666667%; + } + .col-md-push-1 { + left: 8.33333333%; + } + .col-md-push-0 { + left: auto; + } + .col-md-offset-12 { + margin-left: 100%; + } + .col-md-offset-11 { + margin-left: 91.66666667%; + } + .col-md-offset-10 { + margin-left: 83.33333333%; + } + .col-md-offset-9 { + margin-left: 75%; + } + .col-md-offset-8 { + margin-left: 66.66666667%; + } + .col-md-offset-7 { + margin-left: 58.33333333%; + } + .col-md-offset-6 { + margin-left: 50%; + } + .col-md-offset-5 { + margin-left: 41.66666667%; + } + .col-md-offset-4 { + margin-left: 33.33333333%; + } + .col-md-offset-3 { + margin-left: 25%; + } + .col-md-offset-2 { + margin-left: 16.66666667%; + } + .col-md-offset-1 { + margin-left: 8.33333333%; + } + .col-md-offset-0 { + margin-left: 0; + } +} +@media (min-width: 1200px) { + .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 { + float: left; + } + .col-lg-12 { + width: 100%; + } + .col-lg-11 { + width: 91.66666667%; + } + .col-lg-10 { + width: 83.33333333%; + } + .col-lg-9 { + width: 75%; + } + .col-lg-8 { + width: 66.66666667%; + } + .col-lg-7 { + width: 58.33333333%; + } + .col-lg-6 { + width: 50%; + } + .col-lg-5 { + width: 41.66666667%; + } + .col-lg-4 { + width: 33.33333333%; + } + .col-lg-3 { + width: 25%; + } + .col-lg-2 { + width: 16.66666667%; + } + .col-lg-1 { + width: 8.33333333%; + } + .col-lg-pull-12 { + right: 100%; + } + .col-lg-pull-11 { + right: 91.66666667%; + } + .col-lg-pull-10 { + right: 83.33333333%; + } + .col-lg-pull-9 { + right: 75%; + } + .col-lg-pull-8 { + right: 66.66666667%; + } + .col-lg-pull-7 { + right: 58.33333333%; + } + .col-lg-pull-6 { + right: 50%; + } + .col-lg-pull-5 { + right: 41.66666667%; + } + .col-lg-pull-4 { + right: 33.33333333%; + } + .col-lg-pull-3 { + right: 25%; + } + .col-lg-pull-2 { + right: 16.66666667%; + } + .col-lg-pull-1 { + right: 8.33333333%; + } + .col-lg-pull-0 { + right: auto; + } + .col-lg-push-12 { + left: 100%; + } + .col-lg-push-11 { + left: 91.66666667%; + } + .col-lg-push-10 { + left: 83.33333333%; + } + .col-lg-push-9 { + left: 75%; + } + .col-lg-push-8 { + left: 66.66666667%; + } + .col-lg-push-7 { + left: 58.33333333%; + } + .col-lg-push-6 { + left: 50%; + } + .col-lg-push-5 { + left: 41.66666667%; + } + .col-lg-push-4 { + left: 33.33333333%; + } + .col-lg-push-3 { + left: 25%; + } + .col-lg-push-2 { + left: 16.66666667%; + } + .col-lg-push-1 { + left: 8.33333333%; + } + .col-lg-push-0 { + left: auto; + } + .col-lg-offset-12 { + margin-left: 100%; + } + .col-lg-offset-11 { + margin-left: 91.66666667%; + } + .col-lg-offset-10 { + margin-left: 83.33333333%; + } + .col-lg-offset-9 { + margin-left: 75%; + } + .col-lg-offset-8 { + margin-left: 66.66666667%; + } + .col-lg-offset-7 { + margin-left: 58.33333333%; + } + .col-lg-offset-6 { + margin-left: 50%; + } + .col-lg-offset-5 { + margin-left: 41.66666667%; + } + .col-lg-offset-4 { + margin-left: 33.33333333%; + } + .col-lg-offset-3 { + margin-left: 25%; + } + .col-lg-offset-2 { + margin-left: 16.66666667%; + } + .col-lg-offset-1 { + margin-left: 8.33333333%; + } + .col-lg-offset-0 { + margin-left: 0; + } +} +table { + background-color: transparent; +} +caption { + padding-top: 8px; + padding-bottom: 8px; + color: #777; + text-align: left; +} +th { + text-align: left; +} +.table { + width: 100%; + max-width: 100%; + margin-bottom: 20px; +} +.table > thead > tr > th, +.table > tbody > tr > th, +.table > tfoot > tr > th, +.table > thead > tr > td, +.table > tbody > tr > td, +.table > tfoot > tr > td { + padding: 8px; + line-height: 1.42857143; + vertical-align: top; + border-top: 1px solid #ddd; +} +.table > thead > tr > th { + vertical-align: bottom; + border-bottom: 2px solid #ddd; +} +.table > caption + thead > tr:first-child > th, +.table > colgroup + thead > tr:first-child > th, +.table > thead:first-child > tr:first-child > th, +.table > caption + thead > tr:first-child > td, +.table > colgroup + thead > tr:first-child > td, +.table > thead:first-child > tr:first-child > td { + border-top: 0; +} +.table > tbody + tbody { + border-top: 2px solid #ddd; +} +.table .table { + background-color: #fff; +} +.table-condensed > thead > tr > th, +.table-condensed > tbody > tr > th, +.table-condensed > tfoot > tr > th, +.table-condensed > thead > tr > td, +.table-condensed > tbody > tr > td, +.table-condensed > tfoot > tr > td { + padding: 5px; +} +.table-bordered { + border: 1px solid #ddd; +} +.table-bordered > thead > tr > th, +.table-bordered > tbody > tr > th, +.table-bordered > tfoot > tr > th, +.table-bordered > thead > tr > td, +.table-bordered > tbody > tr > td, +.table-bordered > tfoot > tr > td { + border: 1px solid #ddd; +} +.table-bordered > thead > tr > th, +.table-bordered > thead > tr > td { + border-bottom-width: 2px; +} +.table-striped > tbody > tr:nth-of-type(odd) { + background-color: #f9f9f9; +} +.table-hover > tbody > tr:hover { + background-color: #f5f5f5; +} +table col[class*="col-"] { + position: static; + display: table-column; + float: none; +} +table td[class*="col-"], +table th[class*="col-"] { + position: static; + display: table-cell; + float: none; +} +.table > thead > tr > td.active, +.table > tbody > tr > td.active, +.table > tfoot > tr > td.active, +.table > thead > tr > th.active, +.table > tbody > tr > th.active, +.table > tfoot > tr > th.active, +.table > thead > tr.active > td, +.table > tbody > tr.active > td, +.table > tfoot > tr.active > td, +.table > thead > tr.active > th, +.table > tbody > tr.active > th, +.table > tfoot > tr.active > th { + background-color: #f5f5f5; +} +.table-hover > tbody > tr > td.active:hover, +.table-hover > tbody > tr > th.active:hover, +.table-hover > tbody > tr.active:hover > td, +.table-hover > tbody > tr:hover > .active, +.table-hover > tbody > tr.active:hover > th { + background-color: #e8e8e8; +} +.table > thead > tr > td.success, +.table > tbody > tr > td.success, +.table > tfoot > tr > td.success, +.table > thead > tr > th.success, +.table > tbody > tr > th.success, +.table > tfoot > tr > th.success, +.table > thead > tr.success > td, +.table > tbody > tr.success > td, +.table > tfoot > tr.success > td, +.table > thead > tr.success > th, +.table > tbody > tr.success > th, +.table > tfoot > tr.success > th { + background-color: #dff0d8; +} +.table-hover > tbody > tr > td.success:hover, +.table-hover > tbody > tr > th.success:hover, +.table-hover > tbody > tr.success:hover > td, +.table-hover > tbody > tr:hover > .success, +.table-hover > tbody > tr.success:hover > th { + background-color: #d0e9c6; +} +.table > thead > tr > td.info, +.table > tbody > tr > td.info, +.table > tfoot > tr > td.info, +.table > thead > tr > th.info, +.table > tbody > tr > th.info, +.table > tfoot > tr > th.info, +.table > thead > tr.info > td, +.table > tbody > tr.info > td, +.table > tfoot > tr.info > td, +.table > thead > tr.info > th, +.table > tbody > tr.info > th, +.table > tfoot > tr.info > th { + background-color: #d9edf7; +} +.table-hover > tbody > tr > td.info:hover, +.table-hover > tbody > tr > th.info:hover, +.table-hover > tbody > tr.info:hover > td, +.table-hover > tbody > tr:hover > .info, +.table-hover > tbody > tr.info:hover > th { + background-color: #c4e3f3; +} +.table > thead > tr > td.warning, +.table > tbody > tr > td.warning, +.table > tfoot > tr > td.warning, +.table > thead > tr > th.warning, +.table > tbody > tr > th.warning, +.table > tfoot > tr > th.warning, +.table > thead > tr.warning > td, +.table > tbody > tr.warning > td, +.table > tfoot > tr.warning > td, +.table > thead > tr.warning > th, +.table > tbody > tr.warning > th, +.table > tfoot > tr.warning > th { + background-color: #fcf8e3; +} +.table-hover > tbody > tr > td.warning:hover, +.table-hover > tbody > tr > th.warning:hover, +.table-hover > tbody > tr.warning:hover > td, +.table-hover > tbody > tr:hover > .warning, +.table-hover > tbody > tr.warning:hover > th { + background-color: #faf2cc; +} +.table > thead > tr > td.danger, +.table > tbody > tr > td.danger, +.table > tfoot > tr > td.danger, +.table > thead > tr > th.danger, +.table > tbody > tr > th.danger, +.table > tfoot > tr > th.danger, +.table > thead > tr.danger > td, +.table > tbody > tr.danger > td, +.table > tfoot > tr.danger > td, +.table > thead > tr.danger > th, +.table > tbody > tr.danger > th, +.table > tfoot > tr.danger > th { + background-color: #f2dede; +} +.table-hover > tbody > tr > td.danger:hover, +.table-hover > tbody > tr > th.danger:hover, +.table-hover > tbody > tr.danger:hover > td, +.table-hover > tbody > tr:hover > .danger, +.table-hover > tbody > tr.danger:hover > th { + background-color: #ebcccc; +} +.table-responsive { + min-height: .01%; + overflow-x: auto; +} +@media screen and (max-width: 767px) { + .table-responsive { + width: 100%; + margin-bottom: 15px; + overflow-y: hidden; + -ms-overflow-style: -ms-autohiding-scrollbar; + border: 1px solid #ddd; + } + .table-responsive > .table { + margin-bottom: 0; + } + .table-responsive > .table > thead > tr > th, + .table-responsive > .table > tbody > tr > th, + .table-responsive > .table > tfoot > tr > th, + .table-responsive > .table > thead > tr > td, + .table-responsive > .table > tbody > tr > td, + .table-responsive > .table > tfoot > tr > td { + white-space: nowrap; + } + .table-responsive > .table-bordered { + border: 0; + } + .table-responsive > .table-bordered > thead > tr > th:first-child, + .table-responsive > .table-bordered > tbody > tr > th:first-child, + .table-responsive > .table-bordered > tfoot > tr > th:first-child, + .table-responsive > .table-bordered > thead > tr > td:first-child, + .table-responsive > .table-bordered > tbody > tr > td:first-child, + .table-responsive > .table-bordered > tfoot > tr > td:first-child { + border-left: 0; + } + .table-responsive > .table-bordered > thead > tr > th:last-child, + .table-responsive > .table-bordered > tbody > tr > th:last-child, + .table-responsive > .table-bordered > tfoot > tr > th:last-child, + .table-responsive > .table-bordered > thead > tr > td:last-child, + .table-responsive > .table-bordered > tbody > tr > td:last-child, + .table-responsive > .table-bordered > tfoot > tr > td:last-child { + border-right: 0; + } + .table-responsive > .table-bordered > tbody > tr:last-child > th, + .table-responsive > .table-bordered > tfoot > tr:last-child > th, + .table-responsive > .table-bordered > tbody > tr:last-child > td, + .table-responsive > .table-bordered > tfoot > tr:last-child > td { + border-bottom: 0; + } +} +fieldset { + min-width: 0; + padding: 0; + margin: 0; + border: 0; +} +legend { + display: block; + width: 100%; + padding: 0; + margin-bottom: 20px; + font-size: 21px; + line-height: inherit; + color: #333; + border: 0; + border-bottom: 1px solid #e5e5e5; +} +label { + display: inline-block; + max-width: 100%; + margin-bottom: 5px; + font-weight: bold; +} +input[type="search"] { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +input[type="radio"], +input[type="checkbox"] { + margin: 4px 0 0; + margin-top: 1px \9; + line-height: normal; +} +input[type="file"] { + display: block; +} +input[type="range"] { + display: block; + width: 100%; +} +select[multiple], +select[size] { + height: auto; +} +input[type="file"]:focus, +input[type="radio"]:focus, +input[type="checkbox"]:focus { + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +output { + display: block; + padding-top: 7px; + font-size: 14px; + line-height: 1.42857143; + color: #555; +} +.form-control { + display: block; + width: 100%; + height: 34px; + padding: 6px 12px; + font-size: 14px; + line-height: 1.42857143; + color: #555; + background-color: #fff; + background-image: none; + border: 1px solid #ccc; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s; + -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; + transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; +} +.form-control:focus { + border-color: #66afe9; + outline: 0; + -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, .6); + box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, .6); +} +.form-control::-moz-placeholder { + color: #999; + opacity: 1; +} +.form-control:-ms-input-placeholder { + color: #999; +} +.form-control::-webkit-input-placeholder { + color: #999; +} +.form-control::-ms-expand { + background-color: transparent; + border: 0; +} +.form-control[disabled], +.form-control[readonly], +fieldset[disabled] .form-control { + background-color: #eee; + opacity: 1; +} +.form-control[disabled], +fieldset[disabled] .form-control { + cursor: not-allowed; +} +textarea.form-control { + height: auto; +} +input[type="search"] { + -webkit-appearance: none; +} +@media screen and (-webkit-min-device-pixel-ratio: 0) { + input[type="date"].form-control, + input[type="time"].form-control, + input[type="datetime-local"].form-control, + input[type="month"].form-control { + line-height: 34px; + } + input[type="date"].input-sm, + input[type="time"].input-sm, + input[type="datetime-local"].input-sm, + input[type="month"].input-sm, + .input-group-sm input[type="date"], + .input-group-sm input[type="time"], + .input-group-sm input[type="datetime-local"], + .input-group-sm input[type="month"] { + line-height: 30px; + } + input[type="date"].input-lg, + input[type="time"].input-lg, + input[type="datetime-local"].input-lg, + input[type="month"].input-lg, + .input-group-lg input[type="date"], + .input-group-lg input[type="time"], + .input-group-lg input[type="datetime-local"], + .input-group-lg input[type="month"] { + line-height: 46px; + } +} +.form-group { + margin-bottom: 15px; +} +.radio, +.checkbox { + position: relative; + display: block; + margin-top: 10px; + margin-bottom: 10px; +} +.radio label, +.checkbox label { + min-height: 20px; + padding-left: 20px; + margin-bottom: 0; + font-weight: normal; + cursor: pointer; +} +.radio input[type="radio"], +.radio-inline input[type="radio"], +.checkbox input[type="checkbox"], +.checkbox-inline input[type="checkbox"] { + position: absolute; + margin-top: 4px \9; + margin-left: -20px; +} +.radio + .radio, +.checkbox + .checkbox { + margin-top: -5px; +} +.radio-inline, +.checkbox-inline { + position: relative; + display: inline-block; + padding-left: 20px; + margin-bottom: 0; + font-weight: normal; + vertical-align: middle; + cursor: pointer; +} +.radio-inline + .radio-inline, +.checkbox-inline + .checkbox-inline { + margin-top: 0; + margin-left: 10px; +} +input[type="radio"][disabled], +input[type="checkbox"][disabled], +input[type="radio"].disabled, +input[type="checkbox"].disabled, +fieldset[disabled] input[type="radio"], +fieldset[disabled] input[type="checkbox"] { + cursor: not-allowed; +} +.radio-inline.disabled, +.checkbox-inline.disabled, +fieldset[disabled] .radio-inline, +fieldset[disabled] .checkbox-inline { + cursor: not-allowed; +} +.radio.disabled label, +.checkbox.disabled label, +fieldset[disabled] .radio label, +fieldset[disabled] .checkbox label { + cursor: not-allowed; +} +.form-control-static { + min-height: 34px; + padding-top: 7px; + padding-bottom: 7px; + margin-bottom: 0; +} +.form-control-static.input-lg, +.form-control-static.input-sm { + padding-right: 0; + padding-left: 0; +} +.input-sm { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +select.input-sm { + height: 30px; + line-height: 30px; +} +textarea.input-sm, +select[multiple].input-sm { + height: auto; +} +.form-group-sm .form-control { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +.form-group-sm select.form-control { + height: 30px; + line-height: 30px; +} +.form-group-sm textarea.form-control, +.form-group-sm select[multiple].form-control { + height: auto; +} +.form-group-sm .form-control-static { + height: 30px; + min-height: 32px; + padding: 6px 10px; + font-size: 12px; + line-height: 1.5; +} +.input-lg { + height: 46px; + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +select.input-lg { + height: 46px; + line-height: 46px; +} +textarea.input-lg, +select[multiple].input-lg { + height: auto; +} +.form-group-lg .form-control { + height: 46px; + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +.form-group-lg select.form-control { + height: 46px; + line-height: 46px; +} +.form-group-lg textarea.form-control, +.form-group-lg select[multiple].form-control { + height: auto; +} +.form-group-lg .form-control-static { + height: 46px; + min-height: 38px; + padding: 11px 16px; + font-size: 18px; + line-height: 1.3333333; +} +.has-feedback { + position: relative; +} +.has-feedback .form-control { + padding-right: 42.5px; +} +.form-control-feedback { + position: absolute; + top: 0; + right: 0; + z-index: 2; + display: block; + width: 34px; + height: 34px; + line-height: 34px; + text-align: center; + pointer-events: none; +} +.input-lg + .form-control-feedback, +.input-group-lg + .form-control-feedback, +.form-group-lg .form-control + .form-control-feedback { + width: 46px; + height: 46px; + line-height: 46px; +} +.input-sm + .form-control-feedback, +.input-group-sm + .form-control-feedback, +.form-group-sm .form-control + .form-control-feedback { + width: 30px; + height: 30px; + line-height: 30px; +} +.has-success .help-block, +.has-success .control-label, +.has-success .radio, +.has-success .checkbox, +.has-success .radio-inline, +.has-success .checkbox-inline, +.has-success.radio label, +.has-success.checkbox label, +.has-success.radio-inline label, +.has-success.checkbox-inline label { + color: #3c763d; +} +.has-success .form-control { + border-color: #3c763d; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); +} +.has-success .form-control:focus { + border-color: #2b542c; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #67b168; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #67b168; +} +.has-success .input-group-addon { + color: #3c763d; + background-color: #dff0d8; + border-color: #3c763d; +} +.has-success .form-control-feedback { + color: #3c763d; +} +.has-warning .help-block, +.has-warning .control-label, +.has-warning .radio, +.has-warning .checkbox, +.has-warning .radio-inline, +.has-warning .checkbox-inline, +.has-warning.radio label, +.has-warning.checkbox label, +.has-warning.radio-inline label, +.has-warning.checkbox-inline label { + color: #8a6d3b; +} +.has-warning .form-control { + border-color: #8a6d3b; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); +} +.has-warning .form-control:focus { + border-color: #66512c; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #c0a16b; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #c0a16b; +} +.has-warning .input-group-addon { + color: #8a6d3b; + background-color: #fcf8e3; + border-color: #8a6d3b; +} +.has-warning .form-control-feedback { + color: #8a6d3b; +} +.has-error .help-block, +.has-error .control-label, +.has-error .radio, +.has-error .checkbox, +.has-error .radio-inline, +.has-error .checkbox-inline, +.has-error.radio label, +.has-error.checkbox label, +.has-error.radio-inline label, +.has-error.checkbox-inline label { + color: #a94442; +} +.has-error .form-control { + border-color: #a94442; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); +} +.has-error .form-control:focus { + border-color: #843534; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483; +} +.has-error .input-group-addon { + color: #a94442; + background-color: #f2dede; + border-color: #a94442; +} +.has-error .form-control-feedback { + color: #a94442; +} +.has-feedback label ~ .form-control-feedback { + top: 25px; +} +.has-feedback label.sr-only ~ .form-control-feedback { + top: 0; +} +.help-block { + display: block; + margin-top: 5px; + margin-bottom: 10px; + color: #737373; +} +@media (min-width: 768px) { + .form-inline .form-group { + display: inline-block; + margin-bottom: 0; + vertical-align: middle; + } + .form-inline .form-control { + display: inline-block; + width: auto; + vertical-align: middle; + } + .form-inline .form-control-static { + display: inline-block; + } + .form-inline .input-group { + display: inline-table; + vertical-align: middle; + } + .form-inline .input-group .input-group-addon, + .form-inline .input-group .input-group-btn, + .form-inline .input-group .form-control { + width: auto; + } + .form-inline .input-group > .form-control { + width: 100%; + } + .form-inline .control-label { + margin-bottom: 0; + vertical-align: middle; + } + .form-inline .radio, + .form-inline .checkbox { + display: inline-block; + margin-top: 0; + margin-bottom: 0; + vertical-align: middle; + } + .form-inline .radio label, + .form-inline .checkbox label { + padding-left: 0; + } + .form-inline .radio input[type="radio"], + .form-inline .checkbox input[type="checkbox"] { + position: relative; + margin-left: 0; + } + .form-inline .has-feedback .form-control-feedback { + top: 0; + } +} +.form-horizontal .radio, +.form-horizontal .checkbox, +.form-horizontal .radio-inline, +.form-horizontal .checkbox-inline { + padding-top: 7px; + margin-top: 0; + margin-bottom: 0; +} +.form-horizontal .radio, +.form-horizontal .checkbox { + min-height: 27px; +} +.form-horizontal .form-group { + margin-right: -15px; + margin-left: -15px; +} +@media (min-width: 768px) { + .form-horizontal .control-label { + padding-top: 7px; + margin-bottom: 0; + text-align: right; + } +} +.form-horizontal .has-feedback .form-control-feedback { + right: 15px; +} +@media (min-width: 768px) { + .form-horizontal .form-group-lg .control-label { + padding-top: 11px; + font-size: 18px; + } +} +@media (min-width: 768px) { + .form-horizontal .form-group-sm .control-label { + padding-top: 6px; + font-size: 12px; + } +} +.btn { + display: inline-block; + padding: 6px 12px; + margin-bottom: 0; + font-size: 14px; + font-weight: normal; + line-height: 1.42857143; + text-align: center; + white-space: nowrap; + vertical-align: middle; + -ms-touch-action: manipulation; + touch-action: manipulation; + cursor: pointer; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + background-image: none; + border: 1px solid transparent; + border-radius: 4px; +} +.btn:focus, +.btn:active:focus, +.btn.active:focus, +.btn.focus, +.btn:active.focus, +.btn.active.focus { + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +.btn:hover, +.btn:focus, +.btn.focus { + color: #333; + text-decoration: none; +} +.btn:active, +.btn.active { + background-image: none; + outline: 0; + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); +} +.btn.disabled, +.btn[disabled], +fieldset[disabled] .btn { + cursor: not-allowed; + filter: alpha(opacity=65); + -webkit-box-shadow: none; + box-shadow: none; + opacity: .65; +} +a.btn.disabled, +fieldset[disabled] a.btn { + pointer-events: none; +} +.btn-default { + color: #333; + background-color: #fff; + border-color: #ccc; +} +.btn-default:focus, +.btn-default.focus { + color: #333; + background-color: #e6e6e6; + border-color: #8c8c8c; +} +.btn-default:hover { + color: #333; + background-color: #e6e6e6; + border-color: #adadad; +} +.btn-default:active, +.btn-default.active, +.open > .dropdown-toggle.btn-default { + color: #333; + background-color: #e6e6e6; + border-color: #adadad; +} +.btn-default:active:hover, +.btn-default.active:hover, +.open > .dropdown-toggle.btn-default:hover, +.btn-default:active:focus, +.btn-default.active:focus, +.open > .dropdown-toggle.btn-default:focus, +.btn-default:active.focus, +.btn-default.active.focus, +.open > .dropdown-toggle.btn-default.focus { + color: #333; + background-color: #d4d4d4; + border-color: #8c8c8c; +} +.btn-default:active, +.btn-default.active, +.open > .dropdown-toggle.btn-default { + background-image: none; +} +.btn-default.disabled:hover, +.btn-default[disabled]:hover, +fieldset[disabled] .btn-default:hover, +.btn-default.disabled:focus, +.btn-default[disabled]:focus, +fieldset[disabled] .btn-default:focus, +.btn-default.disabled.focus, +.btn-default[disabled].focus, +fieldset[disabled] .btn-default.focus { + background-color: #fff; + border-color: #ccc; +} +.btn-default .badge { + color: #fff; + background-color: #333; +} +.btn-primary { + color: #fff; + background-color: #337ab7; + border-color: #2e6da4; +} +.btn-primary:focus, +.btn-primary.focus { + color: #fff; + background-color: #286090; + border-color: #122b40; +} +.btn-primary:hover { + color: #fff; + background-color: #286090; + border-color: #204d74; +} +.btn-primary:active, +.btn-primary.active, +.open > .dropdown-toggle.btn-primary { + color: #fff; + background-color: #286090; + border-color: #204d74; +} +.btn-primary:active:hover, +.btn-primary.active:hover, +.open > .dropdown-toggle.btn-primary:hover, +.btn-primary:active:focus, +.btn-primary.active:focus, +.open > .dropdown-toggle.btn-primary:focus, +.btn-primary:active.focus, +.btn-primary.active.focus, +.open > .dropdown-toggle.btn-primary.focus { + color: #fff; + background-color: #204d74; + border-color: #122b40; +} +.btn-primary:active, +.btn-primary.active, +.open > .dropdown-toggle.btn-primary { + background-image: none; +} +.btn-primary.disabled:hover, +.btn-primary[disabled]:hover, +fieldset[disabled] .btn-primary:hover, +.btn-primary.disabled:focus, +.btn-primary[disabled]:focus, +fieldset[disabled] .btn-primary:focus, +.btn-primary.disabled.focus, +.btn-primary[disabled].focus, +fieldset[disabled] .btn-primary.focus { + background-color: #337ab7; + border-color: #2e6da4; +} +.btn-primary .badge { + color: #337ab7; + background-color: #fff; +} +.btn-success { + color: #fff; + background-color: #5cb85c; + border-color: #4cae4c; +} +.btn-success:focus, +.btn-success.focus { + color: #fff; + background-color: #449d44; + border-color: #255625; +} +.btn-success:hover { + color: #fff; + background-color: #449d44; + border-color: #398439; +} +.btn-success:active, +.btn-success.active, +.open > .dropdown-toggle.btn-success { + color: #fff; + background-color: #449d44; + border-color: #398439; +} +.btn-success:active:hover, +.btn-success.active:hover, +.open > .dropdown-toggle.btn-success:hover, +.btn-success:active:focus, +.btn-success.active:focus, +.open > .dropdown-toggle.btn-success:focus, +.btn-success:active.focus, +.btn-success.active.focus, +.open > .dropdown-toggle.btn-success.focus { + color: #fff; + background-color: #398439; + border-color: #255625; +} +.btn-success:active, +.btn-success.active, +.open > .dropdown-toggle.btn-success { + background-image: none; +} +.btn-success.disabled:hover, +.btn-success[disabled]:hover, +fieldset[disabled] .btn-success:hover, +.btn-success.disabled:focus, +.btn-success[disabled]:focus, +fieldset[disabled] .btn-success:focus, +.btn-success.disabled.focus, +.btn-success[disabled].focus, +fieldset[disabled] .btn-success.focus { + background-color: #5cb85c; + border-color: #4cae4c; +} +.btn-success .badge { + color: #5cb85c; + background-color: #fff; +} +.btn-info { + color: #fff; + background-color: #5bc0de; + border-color: #46b8da; +} +.btn-info:focus, +.btn-info.focus { + color: #fff; + background-color: #31b0d5; + border-color: #1b6d85; +} +.btn-info:hover { + color: #fff; + background-color: #31b0d5; + border-color: #269abc; +} +.btn-info:active, +.btn-info.active, +.open > .dropdown-toggle.btn-info { + color: #fff; + background-color: #31b0d5; + border-color: #269abc; +} +.btn-info:active:hover, +.btn-info.active:hover, +.open > .dropdown-toggle.btn-info:hover, +.btn-info:active:focus, +.btn-info.active:focus, +.open > .dropdown-toggle.btn-info:focus, +.btn-info:active.focus, +.btn-info.active.focus, +.open > .dropdown-toggle.btn-info.focus { + color: #fff; + background-color: #269abc; + border-color: #1b6d85; +} +.btn-info:active, +.btn-info.active, +.open > .dropdown-toggle.btn-info { + background-image: none; +} +.btn-info.disabled:hover, +.btn-info[disabled]:hover, +fieldset[disabled] .btn-info:hover, +.btn-info.disabled:focus, +.btn-info[disabled]:focus, +fieldset[disabled] .btn-info:focus, +.btn-info.disabled.focus, +.btn-info[disabled].focus, +fieldset[disabled] .btn-info.focus { + background-color: #5bc0de; + border-color: #46b8da; +} +.btn-info .badge { + color: #5bc0de; + background-color: #fff; +} +.btn-warning { + color: #fff; + background-color: #f0ad4e; + border-color: #eea236; +} +.btn-warning:focus, +.btn-warning.focus { + color: #fff; + background-color: #ec971f; + border-color: #985f0d; +} +.btn-warning:hover { + color: #fff; + background-color: #ec971f; + border-color: #d58512; +} +.btn-warning:active, +.btn-warning.active, +.open > .dropdown-toggle.btn-warning { + color: #fff; + background-color: #ec971f; + border-color: #d58512; +} +.btn-warning:active:hover, +.btn-warning.active:hover, +.open > .dropdown-toggle.btn-warning:hover, +.btn-warning:active:focus, +.btn-warning.active:focus, +.open > .dropdown-toggle.btn-warning:focus, +.btn-warning:active.focus, +.btn-warning.active.focus, +.open > .dropdown-toggle.btn-warning.focus { + color: #fff; + background-color: #d58512; + border-color: #985f0d; +} +.btn-warning:active, +.btn-warning.active, +.open > .dropdown-toggle.btn-warning { + background-image: none; +} +.btn-warning.disabled:hover, +.btn-warning[disabled]:hover, +fieldset[disabled] .btn-warning:hover, +.btn-warning.disabled:focus, +.btn-warning[disabled]:focus, +fieldset[disabled] .btn-warning:focus, +.btn-warning.disabled.focus, +.btn-warning[disabled].focus, +fieldset[disabled] .btn-warning.focus { + background-color: #f0ad4e; + border-color: #eea236; +} +.btn-warning .badge { + color: #f0ad4e; + background-color: #fff; +} +.btn-danger { + color: #fff; + background-color: #d9534f; + border-color: #d43f3a; +} +.btn-danger:focus, +.btn-danger.focus { + color: #fff; + background-color: #c9302c; + border-color: #761c19; +} +.btn-danger:hover { + color: #fff; + background-color: #c9302c; + border-color: #ac2925; +} +.btn-danger:active, +.btn-danger.active, +.open > .dropdown-toggle.btn-danger { + color: #fff; + background-color: #c9302c; + border-color: #ac2925; +} +.btn-danger:active:hover, +.btn-danger.active:hover, +.open > .dropdown-toggle.btn-danger:hover, +.btn-danger:active:focus, +.btn-danger.active:focus, +.open > .dropdown-toggle.btn-danger:focus, +.btn-danger:active.focus, +.btn-danger.active.focus, +.open > .dropdown-toggle.btn-danger.focus { + color: #fff; + background-color: #ac2925; + border-color: #761c19; +} +.btn-danger:active, +.btn-danger.active, +.open > .dropdown-toggle.btn-danger { + background-image: none; +} +.btn-danger.disabled:hover, +.btn-danger[disabled]:hover, +fieldset[disabled] .btn-danger:hover, +.btn-danger.disabled:focus, +.btn-danger[disabled]:focus, +fieldset[disabled] .btn-danger:focus, +.btn-danger.disabled.focus, +.btn-danger[disabled].focus, +fieldset[disabled] .btn-danger.focus { + background-color: #d9534f; + border-color: #d43f3a; +} +.btn-danger .badge { + color: #d9534f; + background-color: #fff; +} +.btn-link { + font-weight: normal; + color: #337ab7; + border-radius: 0; +} +.btn-link, +.btn-link:active, +.btn-link.active, +.btn-link[disabled], +fieldset[disabled] .btn-link { + background-color: transparent; + -webkit-box-shadow: none; + box-shadow: none; +} +.btn-link, +.btn-link:hover, +.btn-link:focus, +.btn-link:active { + border-color: transparent; +} +.btn-link:hover, +.btn-link:focus { + color: #23527c; + text-decoration: underline; + background-color: transparent; +} +.btn-link[disabled]:hover, +fieldset[disabled] .btn-link:hover, +.btn-link[disabled]:focus, +fieldset[disabled] .btn-link:focus { + color: #777; + text-decoration: none; +} +.btn-lg, +.btn-group-lg > .btn { + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +.btn-sm, +.btn-group-sm > .btn { + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +.btn-xs, +.btn-group-xs > .btn { + padding: 1px 5px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +.btn-block { + display: block; + width: 100%; +} +.btn-block + .btn-block { + margin-top: 5px; +} +input[type="submit"].btn-block, +input[type="reset"].btn-block, +input[type="button"].btn-block { + width: 100%; +} +.fade { + opacity: 0; + -webkit-transition: opacity .15s linear; + -o-transition: opacity .15s linear; + transition: opacity .15s linear; +} +.fade.in { + opacity: 1; +} +.collapse { + display: none; +} +.collapse.in { + display: block; +} +tr.collapse.in { + display: table-row; +} +tbody.collapse.in { + display: table-row-group; +} +.collapsing { + position: relative; + height: 0; + overflow: hidden; + -webkit-transition-timing-function: ease; + -o-transition-timing-function: ease; + transition-timing-function: ease; + -webkit-transition-duration: .35s; + -o-transition-duration: .35s; + transition-duration: .35s; + -webkit-transition-property: height, visibility; + -o-transition-property: height, visibility; + transition-property: height, visibility; +} +.caret { + display: inline-block; + width: 0; + height: 0; + margin-left: 2px; + vertical-align: middle; + border-top: 4px dashed; + border-top: 4px solid \9; + border-right: 4px solid transparent; + border-left: 4px solid transparent; +} +.dropup, +.dropdown { + position: relative; +} +.dropdown-toggle:focus { + outline: 0; +} +.dropdown-menu { + position: absolute; + top: 100%; + left: 0; + z-index: 1000; + display: none; + float: left; + min-width: 160px; + padding: 5px 0; + margin: 2px 0 0; + font-size: 14px; + text-align: left; + list-style: none; + background-color: #fff; + -webkit-background-clip: padding-box; + background-clip: padding-box; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, .15); + border-radius: 4px; + -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, .175); + box-shadow: 0 6px 12px rgba(0, 0, 0, .175); +} +.dropdown-menu.pull-right { + right: 0; + left: auto; +} +.dropdown-menu .divider { + height: 1px; + margin: 9px 0; + overflow: hidden; + background-color: #e5e5e5; +} +.dropdown-menu > li > a { + display: block; + padding: 3px 20px; + clear: both; + font-weight: normal; + line-height: 1.42857143; + color: #333; + white-space: nowrap; +} +.dropdown-menu > li > a:hover, +.dropdown-menu > li > a:focus { + color: #262626; + text-decoration: none; + background-color: #f5f5f5; +} +.dropdown-menu > .active > a, +.dropdown-menu > .active > a:hover, +.dropdown-menu > .active > a:focus { + color: #fff; + text-decoration: none; + background-color: #337ab7; + outline: 0; +} +.dropdown-menu > .disabled > a, +.dropdown-menu > .disabled > a:hover, +.dropdown-menu > .disabled > a:focus { + color: #777; +} +.dropdown-menu > .disabled > a:hover, +.dropdown-menu > .disabled > a:focus { + text-decoration: none; + cursor: not-allowed; + background-color: transparent; + background-image: none; + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); +} +.open > .dropdown-menu { + display: block; +} +.open > a { + outline: 0; +} +.dropdown-menu-right { + right: 0; + left: auto; +} +.dropdown-menu-left { + right: auto; + left: 0; +} +.dropdown-header { + display: block; + padding: 3px 20px; + font-size: 12px; + line-height: 1.42857143; + color: #777; + white-space: nowrap; +} +.dropdown-backdrop { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 990; +} +.pull-right > .dropdown-menu { + right: 0; + left: auto; +} +.dropup .caret, +.navbar-fixed-bottom .dropdown .caret { + content: ""; + border-top: 0; + border-bottom: 4px dashed; + border-bottom: 4px solid \9; +} +.dropup .dropdown-menu, +.navbar-fixed-bottom .dropdown .dropdown-menu { + top: auto; + bottom: 100%; + margin-bottom: 2px; +} +@media (min-width: 768px) { + .navbar-right .dropdown-menu { + right: 0; + left: auto; + } + .navbar-right .dropdown-menu-left { + right: auto; + left: 0; + } +} +.btn-group, +.btn-group-vertical { + position: relative; + display: inline-block; + vertical-align: middle; +} +.btn-group > .btn, +.btn-group-vertical > .btn { + position: relative; + float: left; +} +.btn-group > .btn:hover, +.btn-group-vertical > .btn:hover, +.btn-group > .btn:focus, +.btn-group-vertical > .btn:focus, +.btn-group > .btn:active, +.btn-group-vertical > .btn:active, +.btn-group > .btn.active, +.btn-group-vertical > .btn.active { + z-index: 2; +} +.btn-group .btn + .btn, +.btn-group .btn + .btn-group, +.btn-group .btn-group + .btn, +.btn-group .btn-group + .btn-group { + margin-left: -1px; +} +.btn-toolbar { + margin-left: -5px; +} +.btn-toolbar .btn, +.btn-toolbar .btn-group, +.btn-toolbar .input-group { + float: left; +} +.btn-toolbar > .btn, +.btn-toolbar > .btn-group, +.btn-toolbar > .input-group { + margin-left: 5px; +} +.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) { + border-radius: 0; +} +.btn-group > .btn:first-child { + margin-left: 0; +} +.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.btn-group > .btn:last-child:not(:first-child), +.btn-group > .dropdown-toggle:not(:first-child) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group > .btn-group { + float: left; +} +.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn { + border-radius: 0; +} +.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child, +.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group .dropdown-toggle:active, +.btn-group.open .dropdown-toggle { + outline: 0; +} +.btn-group > .btn + .dropdown-toggle { + padding-right: 8px; + padding-left: 8px; +} +.btn-group > .btn-lg + .dropdown-toggle { + padding-right: 12px; + padding-left: 12px; +} +.btn-group.open .dropdown-toggle { + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); +} +.btn-group.open .dropdown-toggle.btn-link { + -webkit-box-shadow: none; + box-shadow: none; +} +.btn .caret { + margin-left: 0; +} +.btn-lg .caret { + border-width: 5px 5px 0; + border-bottom-width: 0; +} +.dropup .btn-lg .caret { + border-width: 0 5px 5px; +} +.btn-group-vertical > .btn, +.btn-group-vertical > .btn-group, +.btn-group-vertical > .btn-group > .btn { + display: block; + float: none; + width: 100%; + max-width: 100%; +} +.btn-group-vertical > .btn-group > .btn { + float: none; +} +.btn-group-vertical > .btn + .btn, +.btn-group-vertical > .btn + .btn-group, +.btn-group-vertical > .btn-group + .btn, +.btn-group-vertical > .btn-group + .btn-group { + margin-top: -1px; + margin-left: 0; +} +.btn-group-vertical > .btn:not(:first-child):not(:last-child) { + border-radius: 0; +} +.btn-group-vertical > .btn:first-child:not(:last-child) { + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group-vertical > .btn:last-child:not(:first-child) { + border-top-left-radius: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 4px; + border-bottom-left-radius: 4px; +} +.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn { + border-radius: 0; +} +.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child, +.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle { + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child { + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.btn-group-justified { + display: table; + width: 100%; + table-layout: fixed; + border-collapse: separate; +} +.btn-group-justified > .btn, +.btn-group-justified > .btn-group { + display: table-cell; + float: none; + width: 1%; +} +.btn-group-justified > .btn-group .btn { + width: 100%; +} +.btn-group-justified > .btn-group .dropdown-menu { + left: auto; +} +[data-toggle="buttons"] > .btn input[type="radio"], +[data-toggle="buttons"] > .btn-group > .btn input[type="radio"], +[data-toggle="buttons"] > .btn input[type="checkbox"], +[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] { + position: absolute; + clip: rect(0, 0, 0, 0); + pointer-events: none; +} +.input-group { + position: relative; + display: table; + border-collapse: separate; +} +.input-group[class*="col-"] { + float: none; + padding-right: 0; + padding-left: 0; +} +.input-group .form-control { + position: relative; + z-index: 2; + float: left; + width: 100%; + margin-bottom: 0; +} +.input-group .form-control:focus { + z-index: 3; +} +.input-group-lg > .form-control, +.input-group-lg > .input-group-addon, +.input-group-lg > .input-group-btn > .btn { + height: 46px; + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +select.input-group-lg > .form-control, +select.input-group-lg > .input-group-addon, +select.input-group-lg > .input-group-btn > .btn { + height: 46px; + line-height: 46px; +} +textarea.input-group-lg > .form-control, +textarea.input-group-lg > .input-group-addon, +textarea.input-group-lg > .input-group-btn > .btn, +select[multiple].input-group-lg > .form-control, +select[multiple].input-group-lg > .input-group-addon, +select[multiple].input-group-lg > .input-group-btn > .btn { + height: auto; +} +.input-group-sm > .form-control, +.input-group-sm > .input-group-addon, +.input-group-sm > .input-group-btn > .btn { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +select.input-group-sm > .form-control, +select.input-group-sm > .input-group-addon, +select.input-group-sm > .input-group-btn > .btn { + height: 30px; + line-height: 30px; +} +textarea.input-group-sm > .form-control, +textarea.input-group-sm > .input-group-addon, +textarea.input-group-sm > .input-group-btn > .btn, +select[multiple].input-group-sm > .form-control, +select[multiple].input-group-sm > .input-group-addon, +select[multiple].input-group-sm > .input-group-btn > .btn { + height: auto; +} +.input-group-addon, +.input-group-btn, +.input-group .form-control { + display: table-cell; +} +.input-group-addon:not(:first-child):not(:last-child), +.input-group-btn:not(:first-child):not(:last-child), +.input-group .form-control:not(:first-child):not(:last-child) { + border-radius: 0; +} +.input-group-addon, +.input-group-btn { + width: 1%; + white-space: nowrap; + vertical-align: middle; +} +.input-group-addon { + padding: 6px 12px; + font-size: 14px; + font-weight: normal; + line-height: 1; + color: #555; + text-align: center; + background-color: #eee; + border: 1px solid #ccc; + border-radius: 4px; +} +.input-group-addon.input-sm { + padding: 5px 10px; + font-size: 12px; + border-radius: 3px; +} +.input-group-addon.input-lg { + padding: 10px 16px; + font-size: 18px; + border-radius: 6px; +} +.input-group-addon input[type="radio"], +.input-group-addon input[type="checkbox"] { + margin-top: 0; +} +.input-group .form-control:first-child, +.input-group-addon:first-child, +.input-group-btn:first-child > .btn, +.input-group-btn:first-child > .btn-group > .btn, +.input-group-btn:first-child > .dropdown-toggle, +.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle), +.input-group-btn:last-child > .btn-group:not(:last-child) > .btn { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.input-group-addon:first-child { + border-right: 0; +} +.input-group .form-control:last-child, +.input-group-addon:last-child, +.input-group-btn:last-child > .btn, +.input-group-btn:last-child > .btn-group > .btn, +.input-group-btn:last-child > .dropdown-toggle, +.input-group-btn:first-child > .btn:not(:first-child), +.input-group-btn:first-child > .btn-group:not(:first-child) > .btn { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.input-group-addon:last-child { + border-left: 0; +} +.input-group-btn { + position: relative; + font-size: 0; + white-space: nowrap; +} +.input-group-btn > .btn { + position: relative; +} +.input-group-btn > .btn + .btn { + margin-left: -1px; +} +.input-group-btn > .btn:hover, +.input-group-btn > .btn:focus, +.input-group-btn > .btn:active { + z-index: 2; +} +.input-group-btn:first-child > .btn, +.input-group-btn:first-child > .btn-group { + margin-right: -1px; +} +.input-group-btn:last-child > .btn, +.input-group-btn:last-child > .btn-group { + z-index: 2; + margin-left: -1px; +} +.nav { + padding-left: 0; + margin-bottom: 0; + list-style: none; +} +.nav > li { + position: relative; + display: block; +} +.nav > li > a { + position: relative; + display: block; + padding: 10px 15px; +} +.nav > li > a:hover, +.nav > li > a:focus { + text-decoration: none; + background-color: #eee; +} +.nav > li.disabled > a { + color: #777; +} +.nav > li.disabled > a:hover, +.nav > li.disabled > a:focus { + color: #777; + text-decoration: none; + cursor: not-allowed; + background-color: transparent; +} +.nav .open > a, +.nav .open > a:hover, +.nav .open > a:focus { + background-color: #eee; + border-color: #337ab7; +} +.nav .nav-divider { + height: 1px; + margin: 9px 0; + overflow: hidden; + background-color: #e5e5e5; +} +.nav > li > a > img { + max-width: none; +} +.nav-tabs { + border-bottom: 1px solid #ddd; +} +.nav-tabs > li { + float: left; + margin-bottom: -1px; +} +.nav-tabs > li > a { + margin-right: 2px; + line-height: 1.42857143; + border: 1px solid transparent; + border-radius: 4px 4px 0 0; +} +.nav-tabs > li > a:hover { + border-color: #eee #eee #ddd; +} +.nav-tabs > li.active > a, +.nav-tabs > li.active > a:hover, +.nav-tabs > li.active > a:focus { + color: #555; + cursor: default; + background-color: #fff; + border: 1px solid #ddd; + border-bottom-color: transparent; +} +.nav-tabs.nav-justified { + width: 100%; + border-bottom: 0; +} +.nav-tabs.nav-justified > li { + float: none; +} +.nav-tabs.nav-justified > li > a { + margin-bottom: 5px; + text-align: center; +} +.nav-tabs.nav-justified > .dropdown .dropdown-menu { + top: auto; + left: auto; +} +@media (min-width: 768px) { + .nav-tabs.nav-justified > li { + display: table-cell; + width: 1%; + } + .nav-tabs.nav-justified > li > a { + margin-bottom: 0; + } +} +.nav-tabs.nav-justified > li > a { + margin-right: 0; + border-radius: 4px; +} +.nav-tabs.nav-justified > .active > a, +.nav-tabs.nav-justified > .active > a:hover, +.nav-tabs.nav-justified > .active > a:focus { + border: 1px solid #ddd; +} +@media (min-width: 768px) { + .nav-tabs.nav-justified > li > a { + border-bottom: 1px solid #ddd; + border-radius: 4px 4px 0 0; + } + .nav-tabs.nav-justified > .active > a, + .nav-tabs.nav-justified > .active > a:hover, + .nav-tabs.nav-justified > .active > a:focus { + border-bottom-color: #fff; + } +} +.nav-pills > li { + float: left; +} +.nav-pills > li > a { + border-radius: 4px; +} +.nav-pills > li + li { + margin-left: 2px; +} +.nav-pills > li.active > a, +.nav-pills > li.active > a:hover, +.nav-pills > li.active > a:focus { + color: #fff; + background-color: #337ab7; +} +.nav-stacked > li { + float: none; +} +.nav-stacked > li + li { + margin-top: 2px; + margin-left: 0; +} +.nav-justified { + width: 100%; +} +.nav-justified > li { + float: none; +} +.nav-justified > li > a { + margin-bottom: 5px; + text-align: center; +} +.nav-justified > .dropdown .dropdown-menu { + top: auto; + left: auto; +} +@media (min-width: 768px) { + .nav-justified > li { + display: table-cell; + width: 1%; + } + .nav-justified > li > a { + margin-bottom: 0; + } +} +.nav-tabs-justified { + border-bottom: 0; +} +.nav-tabs-justified > li > a { + margin-right: 0; + border-radius: 4px; +} +.nav-tabs-justified > .active > a, +.nav-tabs-justified > .active > a:hover, +.nav-tabs-justified > .active > a:focus { + border: 1px solid #ddd; +} +@media (min-width: 768px) { + .nav-tabs-justified > li > a { + border-bottom: 1px solid #ddd; + border-radius: 4px 4px 0 0; + } + .nav-tabs-justified > .active > a, + .nav-tabs-justified > .active > a:hover, + .nav-tabs-justified > .active > a:focus { + border-bottom-color: #fff; + } +} +.tab-content > .tab-pane { + display: none; +} +.tab-content > .active { + display: block; +} +.nav-tabs .dropdown-menu { + margin-top: -1px; + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.navbar { + position: relative; + min-height: 50px; + margin-bottom: 20px; + border: 1px solid transparent; +} +@media (min-width: 768px) { + .navbar { + border-radius: 4px; + } +} +@media (min-width: 768px) { + .navbar-header { + float: left; + } +} +.navbar-collapse { + padding-right: 15px; + padding-left: 15px; + overflow-x: visible; + -webkit-overflow-scrolling: touch; + border-top: 1px solid transparent; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1); +} +.navbar-collapse.in { + overflow-y: auto; +} +@media (min-width: 768px) { + .navbar-collapse { + width: auto; + border-top: 0; + -webkit-box-shadow: none; + box-shadow: none; + } + .navbar-collapse.collapse { + display: block !important; + height: auto !important; + padding-bottom: 0; + overflow: visible !important; + } + .navbar-collapse.in { + overflow-y: visible; + } + .navbar-fixed-top .navbar-collapse, + .navbar-static-top .navbar-collapse, + .navbar-fixed-bottom .navbar-collapse { + padding-right: 0; + padding-left: 0; + } +} +.navbar-fixed-top .navbar-collapse, +.navbar-fixed-bottom .navbar-collapse { + max-height: 340px; +} +@media (max-device-width: 480px) and (orientation: landscape) { + .navbar-fixed-top .navbar-collapse, + .navbar-fixed-bottom .navbar-collapse { + max-height: 200px; + } +} +.container > .navbar-header, +.container-fluid > .navbar-header, +.container > .navbar-collapse, +.container-fluid > .navbar-collapse { + margin-right: -15px; + margin-left: -15px; +} +@media (min-width: 768px) { + .container > .navbar-header, + .container-fluid > .navbar-header, + .container > .navbar-collapse, + .container-fluid > .navbar-collapse { + margin-right: 0; + margin-left: 0; + } +} +.navbar-static-top { + z-index: 1000; + border-width: 0 0 1px; +} +@media (min-width: 768px) { + .navbar-static-top { + border-radius: 0; + } +} +.navbar-fixed-top, +.navbar-fixed-bottom { + position: fixed; + right: 0; + left: 0; + z-index: 1030; +} +@media (min-width: 768px) { + .navbar-fixed-top, + .navbar-fixed-bottom { + border-radius: 0; + } +} +.navbar-fixed-top { + top: 0; + border-width: 0 0 1px; +} +.navbar-fixed-bottom { + bottom: 0; + margin-bottom: 0; + border-width: 1px 0 0; +} +.navbar-brand { + float: left; + height: 50px; + padding: 15px 15px; + font-size: 18px; + line-height: 20px; +} +.navbar-brand:hover, +.navbar-brand:focus { + text-decoration: none; +} +.navbar-brand > img { + display: block; +} +@media (min-width: 768px) { + .navbar > .container .navbar-brand, + .navbar > .container-fluid .navbar-brand { + margin-left: -15px; + } +} +.navbar-toggle { + position: relative; + float: right; + padding: 9px 10px; + margin-top: 8px; + margin-right: 15px; + margin-bottom: 8px; + background-color: transparent; + background-image: none; + border: 1px solid transparent; + border-radius: 4px; +} +.navbar-toggle:focus { + outline: 0; +} +.navbar-toggle .icon-bar { + display: block; + width: 22px; + height: 2px; + border-radius: 1px; +} +.navbar-toggle .icon-bar + .icon-bar { + margin-top: 4px; +} +@media (min-width: 768px) { + .navbar-toggle { + display: none; + } +} +.navbar-nav { + margin: 7.5px -15px; +} +.navbar-nav > li > a { + padding-top: 10px; + padding-bottom: 10px; + line-height: 20px; +} +@media (max-width: 767px) { + .navbar-nav .open .dropdown-menu { + position: static; + float: none; + width: auto; + margin-top: 0; + background-color: transparent; + border: 0; + -webkit-box-shadow: none; + box-shadow: none; + } + .navbar-nav .open .dropdown-menu > li > a, + .navbar-nav .open .dropdown-menu .dropdown-header { + padding: 5px 15px 5px 25px; + } + .navbar-nav .open .dropdown-menu > li > a { + line-height: 20px; + } + .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-nav .open .dropdown-menu > li > a:focus { + background-image: none; + } +} +@media (min-width: 768px) { + .navbar-nav { + float: left; + margin: 0; + } + .navbar-nav > li { + float: left; + } + .navbar-nav > li > a { + padding-top: 15px; + padding-bottom: 15px; + } +} +.navbar-form { + padding: 10px 15px; + margin-top: 8px; + margin-right: -15px; + margin-bottom: 8px; + margin-left: -15px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1); +} +@media (min-width: 768px) { + .navbar-form .form-group { + display: inline-block; + margin-bottom: 0; + vertical-align: middle; + } + .navbar-form .form-control { + display: inline-block; + width: auto; + vertical-align: middle; + } + .navbar-form .form-control-static { + display: inline-block; + } + .navbar-form .input-group { + display: inline-table; + vertical-align: middle; + } + .navbar-form .input-group .input-group-addon, + .navbar-form .input-group .input-group-btn, + .navbar-form .input-group .form-control { + width: auto; + } + .navbar-form .input-group > .form-control { + width: 100%; + } + .navbar-form .control-label { + margin-bottom: 0; + vertical-align: middle; + } + .navbar-form .radio, + .navbar-form .checkbox { + display: inline-block; + margin-top: 0; + margin-bottom: 0; + vertical-align: middle; + } + .navbar-form .radio label, + .navbar-form .checkbox label { + padding-left: 0; + } + .navbar-form .radio input[type="radio"], + .navbar-form .checkbox input[type="checkbox"] { + position: relative; + margin-left: 0; + } + .navbar-form .has-feedback .form-control-feedback { + top: 0; + } +} +@media (max-width: 767px) { + .navbar-form .form-group { + margin-bottom: 5px; + } + .navbar-form .form-group:last-child { + margin-bottom: 0; + } +} +@media (min-width: 768px) { + .navbar-form { + width: auto; + padding-top: 0; + padding-bottom: 0; + margin-right: 0; + margin-left: 0; + border: 0; + -webkit-box-shadow: none; + box-shadow: none; + } +} +.navbar-nav > li > .dropdown-menu { + margin-top: 0; + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu { + margin-bottom: 0; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.navbar-btn { + margin-top: 8px; + margin-bottom: 8px; +} +.navbar-btn.btn-sm { + margin-top: 10px; + margin-bottom: 10px; +} +.navbar-btn.btn-xs { + margin-top: 14px; + margin-bottom: 14px; +} +.navbar-text { + margin-top: 15px; + margin-bottom: 15px; +} +@media (min-width: 768px) { + .navbar-text { + float: left; + margin-right: 15px; + margin-left: 15px; + } +} +@media (min-width: 768px) { + .navbar-left { + float: left !important; + } + .navbar-right { + float: right !important; + margin-right: -15px; + } + .navbar-right ~ .navbar-right { + margin-right: 0; + } +} +.navbar-default { + background-color: #f8f8f8; + border-color: #e7e7e7; +} +.navbar-default .navbar-brand { + color: #777; +} +.navbar-default .navbar-brand:hover, +.navbar-default .navbar-brand:focus { + color: #5e5e5e; + background-color: transparent; +} +.navbar-default .navbar-text { + color: #777; +} +.navbar-default .navbar-nav > li > a { + color: #777; +} +.navbar-default .navbar-nav > li > a:hover, +.navbar-default .navbar-nav > li > a:focus { + color: #333; + background-color: transparent; +} +.navbar-default .navbar-nav > .active > a, +.navbar-default .navbar-nav > .active > a:hover, +.navbar-default .navbar-nav > .active > a:focus { + color: #555; + background-color: #e7e7e7; +} +.navbar-default .navbar-nav > .disabled > a, +.navbar-default .navbar-nav > .disabled > a:hover, +.navbar-default .navbar-nav > .disabled > a:focus { + color: #ccc; + background-color: transparent; +} +.navbar-default .navbar-toggle { + border-color: #ddd; +} +.navbar-default .navbar-toggle:hover, +.navbar-default .navbar-toggle:focus { + background-color: #ddd; +} +.navbar-default .navbar-toggle .icon-bar { + background-color: #888; +} +.navbar-default .navbar-collapse, +.navbar-default .navbar-form { + border-color: #e7e7e7; +} +.navbar-default .navbar-nav > .open > a, +.navbar-default .navbar-nav > .open > a:hover, +.navbar-default .navbar-nav > .open > a:focus { + color: #555; + background-color: #e7e7e7; +} +@media (max-width: 767px) { + .navbar-default .navbar-nav .open .dropdown-menu > li > a { + color: #777; + } + .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus { + color: #333; + background-color: transparent; + } + .navbar-default .navbar-nav .open .dropdown-menu > .active > a, + .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus { + color: #555; + background-color: #e7e7e7; + } + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus { + color: #ccc; + background-color: transparent; + } +} +.navbar-default .navbar-link { + color: #777; +} +.navbar-default .navbar-link:hover { + color: #333; +} +.navbar-default .btn-link { + color: #777; +} +.navbar-default .btn-link:hover, +.navbar-default .btn-link:focus { + color: #333; +} +.navbar-default .btn-link[disabled]:hover, +fieldset[disabled] .navbar-default .btn-link:hover, +.navbar-default .btn-link[disabled]:focus, +fieldset[disabled] .navbar-default .btn-link:focus { + color: #ccc; +} +.navbar-inverse { + background-color: #222; + border-color: #080808; +} +.navbar-inverse .navbar-brand { + color: #9d9d9d; +} +.navbar-inverse .navbar-brand:hover, +.navbar-inverse .navbar-brand:focus { + color: #fff; + background-color: transparent; +} +.navbar-inverse .navbar-text { + color: #9d9d9d; +} +.navbar-inverse .navbar-nav > li > a { + color: #9d9d9d; +} +.navbar-inverse .navbar-nav > li > a:hover, +.navbar-inverse .navbar-nav > li > a:focus { + color: #fff; + background-color: transparent; +} +.navbar-inverse .navbar-nav > .active > a, +.navbar-inverse .navbar-nav > .active > a:hover, +.navbar-inverse .navbar-nav > .active > a:focus { + color: #fff; + background-color: #080808; +} +.navbar-inverse .navbar-nav > .disabled > a, +.navbar-inverse .navbar-nav > .disabled > a:hover, +.navbar-inverse .navbar-nav > .disabled > a:focus { + color: #444; + background-color: transparent; +} +.navbar-inverse .navbar-toggle { + border-color: #333; +} +.navbar-inverse .navbar-toggle:hover, +.navbar-inverse .navbar-toggle:focus { + background-color: #333; +} +.navbar-inverse .navbar-toggle .icon-bar { + background-color: #fff; +} +.navbar-inverse .navbar-collapse, +.navbar-inverse .navbar-form { + border-color: #101010; +} +.navbar-inverse .navbar-nav > .open > a, +.navbar-inverse .navbar-nav > .open > a:hover, +.navbar-inverse .navbar-nav > .open > a:focus { + color: #fff; + background-color: #080808; +} +@media (max-width: 767px) { + .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header { + border-color: #080808; + } + .navbar-inverse .navbar-nav .open .dropdown-menu .divider { + background-color: #080808; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a { + color: #9d9d9d; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus { + color: #fff; + background-color: transparent; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus { + color: #fff; + background-color: #080808; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus { + color: #444; + background-color: transparent; + } +} +.navbar-inverse .navbar-link { + color: #9d9d9d; +} +.navbar-inverse .navbar-link:hover { + color: #fff; +} +.navbar-inverse .btn-link { + color: #9d9d9d; +} +.navbar-inverse .btn-link:hover, +.navbar-inverse .btn-link:focus { + color: #fff; +} +.navbar-inverse .btn-link[disabled]:hover, +fieldset[disabled] .navbar-inverse .btn-link:hover, +.navbar-inverse .btn-link[disabled]:focus, +fieldset[disabled] .navbar-inverse .btn-link:focus { + color: #444; +} +.breadcrumb { + padding: 8px 15px; + margin-bottom: 20px; + list-style: none; + background-color: #f5f5f5; + border-radius: 4px; +} +.breadcrumb > li { + display: inline-block; +} +.breadcrumb > li + li:before { + padding: 0 5px; + color: #ccc; + content: "/\00a0"; +} +.breadcrumb > .active { + color: #777; +} +.pagination { + display: inline-block; + padding-left: 0; + margin: 20px 0; + border-radius: 4px; +} +.pagination > li { + display: inline; +} +.pagination > li > a, +.pagination > li > span { + position: relative; + float: left; + padding: 6px 12px; + margin-left: -1px; + line-height: 1.42857143; + color: #337ab7; + text-decoration: none; + background-color: #fff; + border: 1px solid #ddd; +} +.pagination > li:first-child > a, +.pagination > li:first-child > span { + margin-left: 0; + border-top-left-radius: 4px; + border-bottom-left-radius: 4px; +} +.pagination > li:last-child > a, +.pagination > li:last-child > span { + border-top-right-radius: 4px; + border-bottom-right-radius: 4px; +} +.pagination > li > a:hover, +.pagination > li > span:hover, +.pagination > li > a:focus, +.pagination > li > span:focus { + z-index: 2; + color: #23527c; + background-color: #eee; + border-color: #ddd; +} +.pagination > .active > a, +.pagination > .active > span, +.pagination > .active > a:hover, +.pagination > .active > span:hover, +.pagination > .active > a:focus, +.pagination > .active > span:focus { + z-index: 3; + color: #fff; + cursor: default; + background-color: #337ab7; + border-color: #337ab7; +} +.pagination > .disabled > span, +.pagination > .disabled > span:hover, +.pagination > .disabled > span:focus, +.pagination > .disabled > a, +.pagination > .disabled > a:hover, +.pagination > .disabled > a:focus { + color: #777; + cursor: not-allowed; + background-color: #fff; + border-color: #ddd; +} +.pagination-lg > li > a, +.pagination-lg > li > span { + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; +} +.pagination-lg > li:first-child > a, +.pagination-lg > li:first-child > span { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} +.pagination-lg > li:last-child > a, +.pagination-lg > li:last-child > span { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} +.pagination-sm > li > a, +.pagination-sm > li > span { + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; +} +.pagination-sm > li:first-child > a, +.pagination-sm > li:first-child > span { + border-top-left-radius: 3px; + border-bottom-left-radius: 3px; +} +.pagination-sm > li:last-child > a, +.pagination-sm > li:last-child > span { + border-top-right-radius: 3px; + border-bottom-right-radius: 3px; +} +.pager { + padding-left: 0; + margin: 20px 0; + text-align: center; + list-style: none; +} +.pager li { + display: inline; +} +.pager li > a, +.pager li > span { + display: inline-block; + padding: 5px 14px; + background-color: #fff; + border: 1px solid #ddd; + border-radius: 15px; +} +.pager li > a:hover, +.pager li > a:focus { + text-decoration: none; + background-color: #eee; +} +.pager .next > a, +.pager .next > span { + float: right; +} +.pager .previous > a, +.pager .previous > span { + float: left; +} +.pager .disabled > a, +.pager .disabled > a:hover, +.pager .disabled > a:focus, +.pager .disabled > span { + color: #777; + cursor: not-allowed; + background-color: #fff; +} +.label { + display: inline; + padding: .2em .6em .3em; + font-size: 75%; + font-weight: bold; + line-height: 1; + color: #fff; + text-align: center; + white-space: nowrap; + vertical-align: baseline; + border-radius: .25em; +} +a.label:hover, +a.label:focus { + color: #fff; + text-decoration: none; + cursor: pointer; +} +.label:empty { + display: none; +} +.btn .label { + position: relative; + top: -1px; +} +.label-default { + background-color: #777; +} +.label-default[href]:hover, +.label-default[href]:focus { + background-color: #5e5e5e; +} +.label-primary { + background-color: #337ab7; +} +.label-primary[href]:hover, +.label-primary[href]:focus { + background-color: #286090; +} +.label-success { + background-color: #5cb85c; +} +.label-success[href]:hover, +.label-success[href]:focus { + background-color: #449d44; +} +.label-info { + background-color: #5bc0de; +} +.label-info[href]:hover, +.label-info[href]:focus { + background-color: #31b0d5; +} +.label-warning { + background-color: #f0ad4e; +} +.label-warning[href]:hover, +.label-warning[href]:focus { + background-color: #ec971f; +} +.label-danger { + background-color: #d9534f; +} +.label-danger[href]:hover, +.label-danger[href]:focus { + background-color: #c9302c; +} +.badge { + display: inline-block; + min-width: 10px; + padding: 3px 7px; + font-size: 12px; + font-weight: bold; + line-height: 1; + color: #fff; + text-align: center; + white-space: nowrap; + vertical-align: middle; + background-color: #777; + border-radius: 10px; +} +.badge:empty { + display: none; +} +.btn .badge { + position: relative; + top: -1px; +} +.btn-xs .badge, +.btn-group-xs > .btn .badge { + top: 0; + padding: 1px 5px; +} +a.badge:hover, +a.badge:focus { + color: #fff; + text-decoration: none; + cursor: pointer; +} +.list-group-item.active > .badge, +.nav-pills > .active > a > .badge { + color: #337ab7; + background-color: #fff; +} +.list-group-item > .badge { + float: right; +} +.list-group-item > .badge + .badge { + margin-right: 5px; +} +.nav-pills > li > a > .badge { + margin-left: 3px; +} +.jumbotron { + padding-top: 30px; + padding-bottom: 30px; + margin-bottom: 30px; + color: inherit; + background-color: #eee; +} +.jumbotron h1, +.jumbotron .h1 { + color: inherit; +} +.jumbotron p { + margin-bottom: 15px; + font-size: 21px; + font-weight: 200; +} +.jumbotron > hr { + border-top-color: #d5d5d5; +} +.container .jumbotron, +.container-fluid .jumbotron { + padding-right: 15px; + padding-left: 15px; + border-radius: 6px; +} +.jumbotron .container { + max-width: 100%; +} +@media screen and (min-width: 768px) { + .jumbotron { + padding-top: 48px; + padding-bottom: 48px; + } + .container .jumbotron, + .container-fluid .jumbotron { + padding-right: 60px; + padding-left: 60px; + } + .jumbotron h1, + .jumbotron .h1 { + font-size: 63px; + } +} +.thumbnail { + display: block; + padding: 4px; + margin-bottom: 20px; + line-height: 1.42857143; + background-color: #fff; + border: 1px solid #ddd; + border-radius: 4px; + -webkit-transition: border .2s ease-in-out; + -o-transition: border .2s ease-in-out; + transition: border .2s ease-in-out; +} +.thumbnail > img, +.thumbnail a > img { + margin-right: auto; + margin-left: auto; +} +a.thumbnail:hover, +a.thumbnail:focus, +a.thumbnail.active { + border-color: #337ab7; +} +.thumbnail .caption { + padding: 9px; + color: #333; +} +.alert { + padding: 15px; + margin-bottom: 20px; + border: 1px solid transparent; + border-radius: 4px; +} +.alert h4 { + margin-top: 0; + color: inherit; +} +.alert .alert-link { + font-weight: bold; +} +.alert > p, +.alert > ul { + margin-bottom: 0; +} +.alert > p + p { + margin-top: 5px; +} +.alert-dismissable, +.alert-dismissible { + padding-right: 35px; +} +.alert-dismissable .close, +.alert-dismissible .close { + position: relative; + top: -2px; + right: -21px; + color: inherit; +} +.alert-success { + color: #3c763d; + background-color: #dff0d8; + border-color: #d6e9c6; +} +.alert-success hr { + border-top-color: #c9e2b3; +} +.alert-success .alert-link { + color: #2b542c; +} +.alert-info { + color: #31708f; + background-color: #d9edf7; + border-color: #bce8f1; +} +.alert-info hr { + border-top-color: #a6e1ec; +} +.alert-info .alert-link { + color: #245269; +} +.alert-warning { + color: #8a6d3b; + background-color: #fcf8e3; + border-color: #faebcc; +} +.alert-warning hr { + border-top-color: #f7e1b5; +} +.alert-warning .alert-link { + color: #66512c; +} +.alert-danger { + color: #a94442; + background-color: #f2dede; + border-color: #ebccd1; +} +.alert-danger hr { + border-top-color: #e4b9c0; +} +.alert-danger .alert-link { + color: #843534; +} +@-webkit-keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +@-o-keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +@keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +.progress { + height: 20px; + margin-bottom: 20px; + overflow: hidden; + background-color: #f5f5f5; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1); + box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1); +} +.progress-bar { + float: left; + width: 0; + height: 100%; + font-size: 12px; + line-height: 20px; + color: #fff; + text-align: center; + background-color: #337ab7; + -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .15); + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .15); + -webkit-transition: width .6s ease; + -o-transition: width .6s ease; + transition: width .6s ease; +} +.progress-striped .progress-bar, +.progress-bar-striped { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + -webkit-background-size: 40px 40px; + background-size: 40px 40px; +} +.progress.active .progress-bar, +.progress-bar.active { + -webkit-animation: progress-bar-stripes 2s linear infinite; + -o-animation: progress-bar-stripes 2s linear infinite; + animation: progress-bar-stripes 2s linear infinite; +} +.progress-bar-success { + background-color: #5cb85c; +} +.progress-striped .progress-bar-success { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); +} +.progress-bar-info { + background-color: #5bc0de; +} +.progress-striped .progress-bar-info { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); +} +.progress-bar-warning { + background-color: #f0ad4e; +} +.progress-striped .progress-bar-warning { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); +} +.progress-bar-danger { + background-color: #d9534f; +} +.progress-striped .progress-bar-danger { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); +} +.media { + margin-top: 15px; +} +.media:first-child { + margin-top: 0; +} +.media, +.media-body { + overflow: hidden; + zoom: 1; +} +.media-body { + width: 10000px; +} +.media-object { + display: block; +} +.media-object.img-thumbnail { + max-width: none; +} +.media-right, +.media > .pull-right { + padding-left: 10px; +} +.media-left, +.media > .pull-left { + padding-right: 10px; +} +.media-left, +.media-right, +.media-body { + display: table-cell; + vertical-align: top; +} +.media-middle { + vertical-align: middle; +} +.media-bottom { + vertical-align: bottom; +} +.media-heading { + margin-top: 0; + margin-bottom: 5px; +} +.media-list { + padding-left: 0; + list-style: none; +} +.list-group { + padding-left: 0; + margin-bottom: 20px; +} +.list-group-item { + position: relative; + display: block; + padding: 10px 15px; + margin-bottom: -1px; + background-color: #fff; + border: 1px solid #ddd; +} +.list-group-item:first-child { + border-top-left-radius: 4px; + border-top-right-radius: 4px; +} +.list-group-item:last-child { + margin-bottom: 0; + border-bottom-right-radius: 4px; + border-bottom-left-radius: 4px; +} +a.list-group-item, +button.list-group-item { + color: #555; +} +a.list-group-item .list-group-item-heading, +button.list-group-item .list-group-item-heading { + color: #333; +} +a.list-group-item:hover, +button.list-group-item:hover, +a.list-group-item:focus, +button.list-group-item:focus { + color: #555; + text-decoration: none; + background-color: #f5f5f5; +} +button.list-group-item { + width: 100%; + text-align: left; +} +.list-group-item.disabled, +.list-group-item.disabled:hover, +.list-group-item.disabled:focus { + color: #777; + cursor: not-allowed; + background-color: #eee; +} +.list-group-item.disabled .list-group-item-heading, +.list-group-item.disabled:hover .list-group-item-heading, +.list-group-item.disabled:focus .list-group-item-heading { + color: inherit; +} +.list-group-item.disabled .list-group-item-text, +.list-group-item.disabled:hover .list-group-item-text, +.list-group-item.disabled:focus .list-group-item-text { + color: #777; +} +.list-group-item.active, +.list-group-item.active:hover, +.list-group-item.active:focus { + z-index: 2; + color: #fff; + background-color: #337ab7; + border-color: #337ab7; +} +.list-group-item.active .list-group-item-heading, +.list-group-item.active:hover .list-group-item-heading, +.list-group-item.active:focus .list-group-item-heading, +.list-group-item.active .list-group-item-heading > small, +.list-group-item.active:hover .list-group-item-heading > small, +.list-group-item.active:focus .list-group-item-heading > small, +.list-group-item.active .list-group-item-heading > .small, +.list-group-item.active:hover .list-group-item-heading > .small, +.list-group-item.active:focus .list-group-item-heading > .small { + color: inherit; +} +.list-group-item.active .list-group-item-text, +.list-group-item.active:hover .list-group-item-text, +.list-group-item.active:focus .list-group-item-text { + color: #c7ddef; +} +.list-group-item-success { + color: #3c763d; + background-color: #dff0d8; +} +a.list-group-item-success, +button.list-group-item-success { + color: #3c763d; +} +a.list-group-item-success .list-group-item-heading, +button.list-group-item-success .list-group-item-heading { + color: inherit; +} +a.list-group-item-success:hover, +button.list-group-item-success:hover, +a.list-group-item-success:focus, +button.list-group-item-success:focus { + color: #3c763d; + background-color: #d0e9c6; +} +a.list-group-item-success.active, +button.list-group-item-success.active, +a.list-group-item-success.active:hover, +button.list-group-item-success.active:hover, +a.list-group-item-success.active:focus, +button.list-group-item-success.active:focus { + color: #fff; + background-color: #3c763d; + border-color: #3c763d; +} +.list-group-item-info { + color: #31708f; + background-color: #d9edf7; +} +a.list-group-item-info, +button.list-group-item-info { + color: #31708f; +} +a.list-group-item-info .list-group-item-heading, +button.list-group-item-info .list-group-item-heading { + color: inherit; +} +a.list-group-item-info:hover, +button.list-group-item-info:hover, +a.list-group-item-info:focus, +button.list-group-item-info:focus { + color: #31708f; + background-color: #c4e3f3; +} +a.list-group-item-info.active, +button.list-group-item-info.active, +a.list-group-item-info.active:hover, +button.list-group-item-info.active:hover, +a.list-group-item-info.active:focus, +button.list-group-item-info.active:focus { + color: #fff; + background-color: #31708f; + border-color: #31708f; +} +.list-group-item-warning { + color: #8a6d3b; + background-color: #fcf8e3; +} +a.list-group-item-warning, +button.list-group-item-warning { + color: #8a6d3b; +} +a.list-group-item-warning .list-group-item-heading, +button.list-group-item-warning .list-group-item-heading { + color: inherit; +} +a.list-group-item-warning:hover, +button.list-group-item-warning:hover, +a.list-group-item-warning:focus, +button.list-group-item-warning:focus { + color: #8a6d3b; + background-color: #faf2cc; +} +a.list-group-item-warning.active, +button.list-group-item-warning.active, +a.list-group-item-warning.active:hover, +button.list-group-item-warning.active:hover, +a.list-group-item-warning.active:focus, +button.list-group-item-warning.active:focus { + color: #fff; + background-color: #8a6d3b; + border-color: #8a6d3b; +} +.list-group-item-danger { + color: #a94442; + background-color: #f2dede; +} +a.list-group-item-danger, +button.list-group-item-danger { + color: #a94442; +} +a.list-group-item-danger .list-group-item-heading, +button.list-group-item-danger .list-group-item-heading { + color: inherit; +} +a.list-group-item-danger:hover, +button.list-group-item-danger:hover, +a.list-group-item-danger:focus, +button.list-group-item-danger:focus { + color: #a94442; + background-color: #ebcccc; +} +a.list-group-item-danger.active, +button.list-group-item-danger.active, +a.list-group-item-danger.active:hover, +button.list-group-item-danger.active:hover, +a.list-group-item-danger.active:focus, +button.list-group-item-danger.active:focus { + color: #fff; + background-color: #a94442; + border-color: #a94442; +} +.list-group-item-heading { + margin-top: 0; + margin-bottom: 5px; +} +.list-group-item-text { + margin-bottom: 0; + line-height: 1.3; +} +.panel { + margin-bottom: 20px; + background-color: #fff; + border: 1px solid transparent; + border-radius: 4px; + -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .05); + box-shadow: 0 1px 1px rgba(0, 0, 0, .05); +} +.panel-body { + padding: 15px; +} +.panel-heading { + padding: 10px 15px; + border-bottom: 1px solid transparent; + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.panel-heading > .dropdown .dropdown-toggle { + color: inherit; +} +.panel-title { + margin-top: 0; + margin-bottom: 0; + font-size: 16px; + color: inherit; +} +.panel-title > a, +.panel-title > small, +.panel-title > .small, +.panel-title > small > a, +.panel-title > .small > a { + color: inherit; +} +.panel-footer { + padding: 10px 15px; + background-color: #f5f5f5; + border-top: 1px solid #ddd; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .list-group, +.panel > .panel-collapse > .list-group { + margin-bottom: 0; +} +.panel > .list-group .list-group-item, +.panel > .panel-collapse > .list-group .list-group-item { + border-width: 1px 0; + border-radius: 0; +} +.panel > .list-group:first-child .list-group-item:first-child, +.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child { + border-top: 0; + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.panel > .list-group:last-child .list-group-item:last-child, +.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child { + border-bottom: 0; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child { + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.panel-heading + .list-group .list-group-item:first-child { + border-top-width: 0; +} +.list-group + .panel-footer { + border-top-width: 0; +} +.panel > .table, +.panel > .table-responsive > .table, +.panel > .panel-collapse > .table { + margin-bottom: 0; +} +.panel > .table caption, +.panel > .table-responsive > .table caption, +.panel > .panel-collapse > .table caption { + padding-right: 15px; + padding-left: 15px; +} +.panel > .table:first-child, +.panel > .table-responsive:first-child > .table:first-child { + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.panel > .table:first-child > thead:first-child > tr:first-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child, +.panel > .table:first-child > tbody:first-child > tr:first-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child { + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.panel > .table:first-child > thead:first-child > tr:first-child td:first-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child, +.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child, +.panel > .table:first-child > thead:first-child > tr:first-child th:first-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child, +.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child { + border-top-left-radius: 3px; +} +.panel > .table:first-child > thead:first-child > tr:first-child td:last-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child, +.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child, +.panel > .table:first-child > thead:first-child > tr:first-child th:last-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child, +.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child { + border-top-right-radius: 3px; +} +.panel > .table:last-child, +.panel > .table-responsive:last-child > .table:last-child { + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .table:last-child > tbody:last-child > tr:last-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child { + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child, +.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child { + border-bottom-left-radius: 3px; +} +.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child, +.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child { + border-bottom-right-radius: 3px; +} +.panel > .panel-body + .table, +.panel > .panel-body + .table-responsive, +.panel > .table + .panel-body, +.panel > .table-responsive + .panel-body { + border-top: 1px solid #ddd; +} +.panel > .table > tbody:first-child > tr:first-child th, +.panel > .table > tbody:first-child > tr:first-child td { + border-top: 0; +} +.panel > .table-bordered, +.panel > .table-responsive > .table-bordered { + border: 0; +} +.panel > .table-bordered > thead > tr > th:first-child, +.panel > .table-responsive > .table-bordered > thead > tr > th:first-child, +.panel > .table-bordered > tbody > tr > th:first-child, +.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child, +.panel > .table-bordered > tfoot > tr > th:first-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child, +.panel > .table-bordered > thead > tr > td:first-child, +.panel > .table-responsive > .table-bordered > thead > tr > td:first-child, +.panel > .table-bordered > tbody > tr > td:first-child, +.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child, +.panel > .table-bordered > tfoot > tr > td:first-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child { + border-left: 0; +} +.panel > .table-bordered > thead > tr > th:last-child, +.panel > .table-responsive > .table-bordered > thead > tr > th:last-child, +.panel > .table-bordered > tbody > tr > th:last-child, +.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child, +.panel > .table-bordered > tfoot > tr > th:last-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child, +.panel > .table-bordered > thead > tr > td:last-child, +.panel > .table-responsive > .table-bordered > thead > tr > td:last-child, +.panel > .table-bordered > tbody > tr > td:last-child, +.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child, +.panel > .table-bordered > tfoot > tr > td:last-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child { + border-right: 0; +} +.panel > .table-bordered > thead > tr:first-child > td, +.panel > .table-responsive > .table-bordered > thead > tr:first-child > td, +.panel > .table-bordered > tbody > tr:first-child > td, +.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td, +.panel > .table-bordered > thead > tr:first-child > th, +.panel > .table-responsive > .table-bordered > thead > tr:first-child > th, +.panel > .table-bordered > tbody > tr:first-child > th, +.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th { + border-bottom: 0; +} +.panel > .table-bordered > tbody > tr:last-child > td, +.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td, +.panel > .table-bordered > tfoot > tr:last-child > td, +.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td, +.panel > .table-bordered > tbody > tr:last-child > th, +.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th, +.panel > .table-bordered > tfoot > tr:last-child > th, +.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th { + border-bottom: 0; +} +.panel > .table-responsive { + margin-bottom: 0; + border: 0; +} +.panel-group { + margin-bottom: 20px; +} +.panel-group .panel { + margin-bottom: 0; + border-radius: 4px; +} +.panel-group .panel + .panel { + margin-top: 5px; +} +.panel-group .panel-heading { + border-bottom: 0; +} +.panel-group .panel-heading + .panel-collapse > .panel-body, +.panel-group .panel-heading + .panel-collapse > .list-group { + border-top: 1px solid #ddd; +} +.panel-group .panel-footer { + border-top: 0; +} +.panel-group .panel-footer + .panel-collapse .panel-body { + border-bottom: 1px solid #ddd; +} +.panel-default { + border-color: #ddd; +} +.panel-default > .panel-heading { + color: #333; + background-color: #f5f5f5; + border-color: #ddd; +} +.panel-default > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #ddd; +} +.panel-default > .panel-heading .badge { + color: #f5f5f5; + background-color: #333; +} +.panel-default > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #ddd; +} +.panel-primary { + border-color: #337ab7; +} +.panel-primary > .panel-heading { + color: #fff; + background-color: #337ab7; + border-color: #337ab7; +} +.panel-primary > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #337ab7; +} +.panel-primary > .panel-heading .badge { + color: #337ab7; + background-color: #fff; +} +.panel-primary > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #337ab7; +} +.panel-success { + border-color: #d6e9c6; +} +.panel-success > .panel-heading { + color: #3c763d; + background-color: #dff0d8; + border-color: #d6e9c6; +} +.panel-success > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #d6e9c6; +} +.panel-success > .panel-heading .badge { + color: #dff0d8; + background-color: #3c763d; +} +.panel-success > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #d6e9c6; +} +.panel-info { + border-color: #bce8f1; +} +.panel-info > .panel-heading { + color: #31708f; + background-color: #d9edf7; + border-color: #bce8f1; +} +.panel-info > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #bce8f1; +} +.panel-info > .panel-heading .badge { + color: #d9edf7; + background-color: #31708f; +} +.panel-info > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #bce8f1; +} +.panel-warning { + border-color: #faebcc; +} +.panel-warning > .panel-heading { + color: #8a6d3b; + background-color: #fcf8e3; + border-color: #faebcc; +} +.panel-warning > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #faebcc; +} +.panel-warning > .panel-heading .badge { + color: #fcf8e3; + background-color: #8a6d3b; +} +.panel-warning > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #faebcc; +} +.panel-danger { + border-color: #ebccd1; +} +.panel-danger > .panel-heading { + color: #a94442; + background-color: #f2dede; + border-color: #ebccd1; +} +.panel-danger > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #ebccd1; +} +.panel-danger > .panel-heading .badge { + color: #f2dede; + background-color: #a94442; +} +.panel-danger > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #ebccd1; +} +.embed-responsive { + position: relative; + display: block; + height: 0; + padding: 0; + overflow: hidden; +} +.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-16by9 { + padding-bottom: 56.25%; +} +.embed-responsive-4by3 { + padding-bottom: 75%; +} +.well { + min-height: 20px; + padding: 19px; + margin-bottom: 20px; + background-color: #f5f5f5; + border: 1px solid #e3e3e3; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05); +} +.well blockquote { + border-color: #ddd; + border-color: rgba(0, 0, 0, .15); +} +.well-lg { + padding: 24px; + border-radius: 6px; +} +.well-sm { + padding: 9px; + border-radius: 3px; +} +.close { + float: right; + font-size: 21px; + font-weight: bold; + line-height: 1; + color: #000; + text-shadow: 0 1px 0 #fff; + filter: alpha(opacity=20); + opacity: .2; +} +.close:hover, +.close:focus { + color: #000; + text-decoration: none; + cursor: pointer; + filter: alpha(opacity=50); + opacity: .5; +} +button.close { + -webkit-appearance: none; + padding: 0; + cursor: pointer; + background: transparent; + border: 0; +} +.modal-open { + overflow: hidden; +} +.modal { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1050; + display: none; + overflow: hidden; + -webkit-overflow-scrolling: touch; + outline: 0; +} +.modal.fade .modal-dialog { + -webkit-transition: -webkit-transform .3s ease-out; + -o-transition: -o-transform .3s ease-out; + transition: transform .3s ease-out; + -webkit-transform: translate(0, -25%); + -ms-transform: translate(0, -25%); + -o-transform: translate(0, -25%); + transform: translate(0, -25%); +} +.modal.in .modal-dialog { + -webkit-transform: translate(0, 0); + -ms-transform: translate(0, 0); + -o-transform: translate(0, 0); + transform: translate(0, 0); +} +.modal-open .modal { + overflow-x: hidden; + overflow-y: auto; +} +.modal-dialog { + position: relative; + width: auto; + margin: 10px; +} +.modal-content { + position: relative; + background-color: #fff; + -webkit-background-clip: padding-box; + background-clip: padding-box; + border: 1px solid #999; + border: 1px solid rgba(0, 0, 0, .2); + border-radius: 6px; + outline: 0; + -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, .5); + box-shadow: 0 3px 9px rgba(0, 0, 0, .5); +} +.modal-backdrop { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1040; + background-color: #000; +} +.modal-backdrop.fade { + filter: alpha(opacity=0); + opacity: 0; +} +.modal-backdrop.in { + filter: alpha(opacity=50); + opacity: .5; +} +.modal-header { + padding: 15px; + border-bottom: 1px solid #e5e5e5; +} +.modal-header .close { + margin-top: -2px; +} +.modal-title { + margin: 0; + line-height: 1.42857143; +} +.modal-body { + position: relative; + padding: 15px; +} +.modal-footer { + padding: 15px; + text-align: right; + border-top: 1px solid #e5e5e5; +} +.modal-footer .btn + .btn { + margin-bottom: 0; + margin-left: 5px; +} +.modal-footer .btn-group .btn + .btn { + margin-left: -1px; +} +.modal-footer .btn-block + .btn-block { + margin-left: 0; +} +.modal-scrollbar-measure { + position: absolute; + top: -9999px; + width: 50px; + height: 50px; + overflow: scroll; +} +@media (min-width: 768px) { + .modal-dialog { + width: 600px; + margin: 30px auto; + } + .modal-content { + -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, .5); + box-shadow: 0 5px 15px rgba(0, 0, 0, .5); + } + .modal-sm { + width: 300px; + } +} +@media (min-width: 992px) { + .modal-lg { + width: 900px; + } +} +.tooltip { + position: absolute; + z-index: 1070; + display: block; + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 12px; + font-style: normal; + font-weight: normal; + line-height: 1.42857143; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + letter-spacing: normal; + word-break: normal; + word-spacing: normal; + word-wrap: normal; + white-space: normal; + filter: alpha(opacity=0); + opacity: 0; + + line-break: auto; +} +.tooltip.in { + filter: alpha(opacity=90); + opacity: .9; +} +.tooltip.top { + padding: 5px 0; + margin-top: -3px; +} +.tooltip.right { + padding: 0 5px; + margin-left: 3px; +} +.tooltip.bottom { + padding: 5px 0; + margin-top: 3px; +} +.tooltip.left { + padding: 0 5px; + margin-left: -3px; +} +.tooltip-inner { + max-width: 200px; + padding: 3px 8px; + color: #fff; + text-align: center; + background-color: #000; + border-radius: 4px; +} +.tooltip-arrow { + position: absolute; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; +} +.tooltip.top .tooltip-arrow { + bottom: 0; + left: 50%; + margin-left: -5px; + border-width: 5px 5px 0; + border-top-color: #000; +} +.tooltip.top-left .tooltip-arrow { + right: 5px; + bottom: 0; + margin-bottom: -5px; + border-width: 5px 5px 0; + border-top-color: #000; +} +.tooltip.top-right .tooltip-arrow { + bottom: 0; + left: 5px; + margin-bottom: -5px; + border-width: 5px 5px 0; + border-top-color: #000; +} +.tooltip.right .tooltip-arrow { + top: 50%; + left: 0; + margin-top: -5px; + border-width: 5px 5px 5px 0; + border-right-color: #000; +} +.tooltip.left .tooltip-arrow { + top: 50%; + right: 0; + margin-top: -5px; + border-width: 5px 0 5px 5px; + border-left-color: #000; +} +.tooltip.bottom .tooltip-arrow { + top: 0; + left: 50%; + margin-left: -5px; + border-width: 0 5px 5px; + border-bottom-color: #000; +} +.tooltip.bottom-left .tooltip-arrow { + top: 0; + right: 5px; + margin-top: -5px; + border-width: 0 5px 5px; + border-bottom-color: #000; +} +.tooltip.bottom-right .tooltip-arrow { + top: 0; + left: 5px; + margin-top: -5px; + border-width: 0 5px 5px; + border-bottom-color: #000; +} +.popover { + position: absolute; + top: 0; + left: 0; + z-index: 1060; + display: none; + max-width: 276px; + padding: 1px; + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 14px; + font-style: normal; + font-weight: normal; + line-height: 1.42857143; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + letter-spacing: normal; + word-break: normal; + word-spacing: normal; + word-wrap: normal; + white-space: normal; + background-color: #fff; + -webkit-background-clip: padding-box; + background-clip: padding-box; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, .2); + border-radius: 6px; + -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, .2); + box-shadow: 0 5px 10px rgba(0, 0, 0, .2); + + line-break: auto; +} +.popover.top { + margin-top: -10px; +} +.popover.right { + margin-left: 10px; +} +.popover.bottom { + margin-top: 10px; +} +.popover.left { + margin-left: -10px; +} +.popover-title { + padding: 8px 14px; + margin: 0; + font-size: 14px; + background-color: #f7f7f7; + border-bottom: 1px solid #ebebeb; + border-radius: 5px 5px 0 0; +} +.popover-content { + padding: 9px 14px; +} +.popover > .arrow, +.popover > .arrow:after { + position: absolute; + display: block; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; +} +.popover > .arrow { + border-width: 11px; +} +.popover > .arrow:after { + content: ""; + border-width: 10px; +} +.popover.top > .arrow { + bottom: -11px; + left: 50%; + margin-left: -11px; + border-top-color: #999; + border-top-color: rgba(0, 0, 0, .25); + border-bottom-width: 0; +} +.popover.top > .arrow:after { + bottom: 1px; + margin-left: -10px; + content: " "; + border-top-color: #fff; + border-bottom-width: 0; +} +.popover.right > .arrow { + top: 50%; + left: -11px; + margin-top: -11px; + border-right-color: #999; + border-right-color: rgba(0, 0, 0, .25); + border-left-width: 0; +} +.popover.right > .arrow:after { + bottom: -10px; + left: 1px; + content: " "; + border-right-color: #fff; + border-left-width: 0; +} +.popover.bottom > .arrow { + top: -11px; + left: 50%; + margin-left: -11px; + border-top-width: 0; + border-bottom-color: #999; + border-bottom-color: rgba(0, 0, 0, .25); +} +.popover.bottom > .arrow:after { + top: 1px; + margin-left: -10px; + content: " "; + border-top-width: 0; + border-bottom-color: #fff; +} +.popover.left > .arrow { + top: 50%; + right: -11px; + margin-top: -11px; + border-right-width: 0; + border-left-color: #999; + border-left-color: rgba(0, 0, 0, .25); +} +.popover.left > .arrow:after { + right: 1px; + bottom: -10px; + content: " "; + border-right-width: 0; + border-left-color: #fff; +} +.carousel { + position: relative; +} +.carousel-inner { + position: relative; + width: 100%; + overflow: hidden; +} +.carousel-inner > .item { + position: relative; + display: none; + -webkit-transition: .6s ease-in-out left; + -o-transition: .6s ease-in-out left; + transition: .6s ease-in-out left; +} +.carousel-inner > .item > img, +.carousel-inner > .item > a > img { + line-height: 1; +} +@media all and (transform-3d), (-webkit-transform-3d) { + .carousel-inner > .item { + -webkit-transition: -webkit-transform .6s ease-in-out; + -o-transition: -o-transform .6s ease-in-out; + transition: transform .6s ease-in-out; + + -webkit-backface-visibility: hidden; + backface-visibility: hidden; + -webkit-perspective: 1000px; + perspective: 1000px; + } + .carousel-inner > .item.next, + .carousel-inner > .item.active.right { + left: 0; + -webkit-transform: translate3d(100%, 0, 0); + transform: translate3d(100%, 0, 0); + } + .carousel-inner > .item.prev, + .carousel-inner > .item.active.left { + left: 0; + -webkit-transform: translate3d(-100%, 0, 0); + transform: translate3d(-100%, 0, 0); + } + .carousel-inner > .item.next.left, + .carousel-inner > .item.prev.right, + .carousel-inner > .item.active { + left: 0; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} +.carousel-inner > .active, +.carousel-inner > .next, +.carousel-inner > .prev { + display: block; +} +.carousel-inner > .active { + left: 0; +} +.carousel-inner > .next, +.carousel-inner > .prev { + position: absolute; + top: 0; + width: 100%; +} +.carousel-inner > .next { + left: 100%; +} +.carousel-inner > .prev { + left: -100%; +} +.carousel-inner > .next.left, +.carousel-inner > .prev.right { + left: 0; +} +.carousel-inner > .active.left { + left: -100%; +} +.carousel-inner > .active.right { + left: 100%; +} +.carousel-control { + position: absolute; + top: 0; + bottom: 0; + left: 0; + width: 15%; + font-size: 20px; + color: #fff; + text-align: center; + text-shadow: 0 1px 2px rgba(0, 0, 0, .6); + background-color: rgba(0, 0, 0, 0); + filter: alpha(opacity=50); + opacity: .5; +} +.carousel-control.left { + background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%); + background-image: -o-linear-gradient(left, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%); + background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .5)), to(rgba(0, 0, 0, .0001))); + background-image: linear-gradient(to right, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1); + background-repeat: repeat-x; +} +.carousel-control.right { + right: 0; + left: auto; + background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%); + background-image: -o-linear-gradient(left, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%); + background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .0001)), to(rgba(0, 0, 0, .5))); + background-image: linear-gradient(to right, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1); + background-repeat: repeat-x; +} +.carousel-control:hover, +.carousel-control:focus { + color: #fff; + text-decoration: none; + filter: alpha(opacity=90); + outline: 0; + opacity: .9; +} +.carousel-control .icon-prev, +.carousel-control .icon-next, +.carousel-control .glyphicon-chevron-left, +.carousel-control .glyphicon-chevron-right { + position: absolute; + top: 50%; + z-index: 5; + display: inline-block; + margin-top: -10px; +} +.carousel-control .icon-prev, +.carousel-control .glyphicon-chevron-left { + left: 50%; + margin-left: -10px; +} +.carousel-control .icon-next, +.carousel-control .glyphicon-chevron-right { + right: 50%; + margin-right: -10px; +} +.carousel-control .icon-prev, +.carousel-control .icon-next { + width: 20px; + height: 20px; + font-family: serif; + line-height: 1; +} +.carousel-control .icon-prev:before { + content: '\2039'; +} +.carousel-control .icon-next:before { + content: '\203a'; +} +.carousel-indicators { + position: absolute; + bottom: 10px; + left: 50%; + z-index: 15; + width: 60%; + padding-left: 0; + margin-left: -30%; + text-align: center; + list-style: none; +} +.carousel-indicators li { + display: inline-block; + width: 10px; + height: 10px; + margin: 1px; + text-indent: -999px; + cursor: pointer; + background-color: #000 \9; + background-color: rgba(0, 0, 0, 0); + border: 1px solid #fff; + border-radius: 10px; +} +.carousel-indicators .active { + width: 12px; + height: 12px; + margin: 0; + background-color: #fff; +} +.carousel-caption { + position: absolute; + right: 15%; + bottom: 20px; + left: 15%; + z-index: 10; + padding-top: 20px; + padding-bottom: 20px; + color: #fff; + text-align: center; + text-shadow: 0 1px 2px rgba(0, 0, 0, .6); +} +.carousel-caption .btn { + text-shadow: none; +} +@media screen and (min-width: 768px) { + .carousel-control .glyphicon-chevron-left, + .carousel-control .glyphicon-chevron-right, + .carousel-control .icon-prev, + .carousel-control .icon-next { + width: 30px; + height: 30px; + margin-top: -10px; + font-size: 30px; + } + .carousel-control .glyphicon-chevron-left, + .carousel-control .icon-prev { + margin-left: -10px; + } + .carousel-control .glyphicon-chevron-right, + .carousel-control .icon-next { + margin-right: -10px; + } + .carousel-caption { + right: 20%; + left: 20%; + padding-bottom: 30px; + } + .carousel-indicators { + bottom: 20px; + } +} +.clearfix:before, +.clearfix:after, +.dl-horizontal dd:before, +.dl-horizontal dd:after, +.container:before, +.container:after, +.container-fluid:before, +.container-fluid:after, +.row:before, +.row:after, +.form-horizontal .form-group:before, +.form-horizontal .form-group:after, +.btn-toolbar:before, +.btn-toolbar:after, +.btn-group-vertical > .btn-group:before, +.btn-group-vertical > .btn-group:after, +.nav:before, +.nav:after, +.navbar:before, +.navbar:after, +.navbar-header:before, +.navbar-header:after, +.navbar-collapse:before, +.navbar-collapse:after, +.pager:before, +.pager:after, +.panel-body:before, +.panel-body:after, +.modal-header:before, +.modal-header:after, +.modal-footer:before, +.modal-footer:after { + display: table; + content: " "; +} +.clearfix:after, +.dl-horizontal dd:after, +.container:after, +.container-fluid:after, +.row:after, +.form-horizontal .form-group:after, +.btn-toolbar:after, +.btn-group-vertical > .btn-group:after, +.nav:after, +.navbar:after, +.navbar-header:after, +.navbar-collapse:after, +.pager:after, +.panel-body:after, +.modal-header:after, +.modal-footer:after { + clear: both; +} +.center-block { + display: block; + margin-right: auto; + margin-left: auto; +} +.pull-right { + float: right !important; +} +.pull-left { + float: left !important; +} +.hide { + display: none !important; +} +.show { + display: block !important; +} +.invisible { + visibility: hidden; +} +.text-hide { + font: 0/0 a; + color: transparent; + text-shadow: none; + background-color: transparent; + border: 0; +} +.hidden { + display: none !important; +} +.affix { + position: fixed; +} +@-ms-viewport { + width: device-width; +} +.visible-xs, +.visible-sm, +.visible-md, +.visible-lg { + display: none !important; +} +.visible-xs-block, +.visible-xs-inline, +.visible-xs-inline-block, +.visible-sm-block, +.visible-sm-inline, +.visible-sm-inline-block, +.visible-md-block, +.visible-md-inline, +.visible-md-inline-block, +.visible-lg-block, +.visible-lg-inline, +.visible-lg-inline-block { + display: none !important; +} +@media (max-width: 767px) { + .visible-xs { + display: block !important; + } + table.visible-xs { + display: table !important; + } + tr.visible-xs { + display: table-row !important; + } + th.visible-xs, + td.visible-xs { + display: table-cell !important; + } +} +@media (max-width: 767px) { + .visible-xs-block { + display: block !important; + } +} +@media (max-width: 767px) { + .visible-xs-inline { + display: inline !important; + } +} +@media (max-width: 767px) { + .visible-xs-inline-block { + display: inline-block !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm { + display: block !important; + } + table.visible-sm { + display: table !important; + } + tr.visible-sm { + display: table-row !important; + } + th.visible-sm, + td.visible-sm { + display: table-cell !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm-block { + display: block !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm-inline { + display: inline !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm-inline-block { + display: inline-block !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md { + display: block !important; + } + table.visible-md { + display: table !important; + } + tr.visible-md { + display: table-row !important; + } + th.visible-md, + td.visible-md { + display: table-cell !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md-block { + display: block !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md-inline { + display: inline !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md-inline-block { + display: inline-block !important; + } +} +@media (min-width: 1200px) { + .visible-lg { + display: block !important; + } + table.visible-lg { + display: table !important; + } + tr.visible-lg { + display: table-row !important; + } + th.visible-lg, + td.visible-lg { + display: table-cell !important; + } +} +@media (min-width: 1200px) { + .visible-lg-block { + display: block !important; + } +} +@media (min-width: 1200px) { + .visible-lg-inline { + display: inline !important; + } +} +@media (min-width: 1200px) { + .visible-lg-inline-block { + display: inline-block !important; + } +} +@media (max-width: 767px) { + .hidden-xs { + display: none !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .hidden-sm { + display: none !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .hidden-md { + display: none !important; + } +} +@media (min-width: 1200px) { + .hidden-lg { + display: none !important; + } +} +.visible-print { + display: none !important; +} +@media print { + .visible-print { + display: block !important; + } + table.visible-print { + display: table !important; + } + tr.visible-print { + display: table-row !important; + } + th.visible-print, + td.visible-print { + display: table-cell !important; + } +} +.visible-print-block { + display: none !important; +} +@media print { + .visible-print-block { + display: block !important; + } +} +.visible-print-inline { + display: none !important; +} +@media print { + .visible-print-inline { + display: inline !important; + } +} +.visible-print-inline-block { + display: none !important; +} +@media print { + .visible-print-inline-block { + display: inline-block !important; + } +} +@media print { + .hidden-print { + display: none !important; + } +} +/*# sourceMappingURL=bootstrap.css.map */ diff --git a/vraptor/src/main/webapp/vendor/bootstrap/css/bootstrap.min.css b/vraptor/src/main/webapp/vendor/bootstrap/css/bootstrap.min.css new file mode 100644 index 0000000000..ed3905e0e0 --- /dev/null +++ b/vraptor/src/main/webapp/vendor/bootstrap/css/bootstrap.min.css @@ -0,0 +1,6 @@ +/*! + * Bootstrap v3.3.7 (http://getbootstrap.com) + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + *//*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{margin:.67em 0;font-size:2em}mark{color:#000;background:#ff0}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{height:0;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{margin:0;font:inherit;color:inherit}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}input{line-height:normal}input[type=checkbox],input[type=radio]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{padding:.35em .625em .75em;margin:0 2px;border:1px solid silver}legend{padding:0;border:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-spacing:0;border-collapse:collapse}td,th{padding:0}/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */@media print{*,:after,:before{color:#000!important;text-shadow:none!important;background:0 0!important;-webkit-box-shadow:none!important;box-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="javascript:"]:after,a[href^="#"]:after{content:""}blockquote,pre{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}img{max-width:100%!important}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}.navbar{display:none}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000!important}.label{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #ddd!important}}@font-face{font-family:'Glyphicons Halflings';src:url(../fonts/glyphicons-halflings-regular.eot);src:url(../fonts/glyphicons-halflings-regular.eot?#iefix) format('embedded-opentype'),url(../fonts/glyphicons-halflings-regular.woff2) format('woff2'),url(../fonts/glyphicons-halflings-regular.woff) format('woff'),url(../fonts/glyphicons-halflings-regular.ttf) format('truetype'),url(../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular) format('svg')}.glyphicon{position:relative;top:1px;display:inline-block;font-family:'Glyphicons Halflings';font-style:normal;font-weight:400;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.glyphicon-asterisk:before{content:"\002a"}.glyphicon-plus:before{content:"\002b"}.glyphicon-eur:before,.glyphicon-euro:before{content:"\20ac"}.glyphicon-minus:before{content:"\2212"}.glyphicon-cloud:before{content:"\2601"}.glyphicon-envelope:before{content:"\2709"}.glyphicon-pencil:before{content:"\270f"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028"}.glyphicon-play-circle:before{content:"\e029"}.glyphicon-repeat:before{content:"\e030"}.glyphicon-refresh:before{content:"\e031"}.glyphicon-list-alt:before{content:"\e032"}.glyphicon-lock:before{content:"\e033"}.glyphicon-flag:before{content:"\e034"}.glyphicon-headphones:before{content:"\e035"}.glyphicon-volume-off:before{content:"\e036"}.glyphicon-volume-down:before{content:"\e037"}.glyphicon-volume-up:before{content:"\e038"}.glyphicon-qrcode:before{content:"\e039"}.glyphicon-barcode:before{content:"\e040"}.glyphicon-tag:before{content:"\e041"}.glyphicon-tags:before{content:"\e042"}.glyphicon-book:before{content:"\e043"}.glyphicon-bookmark:before{content:"\e044"}.glyphicon-print:before{content:"\e045"}.glyphicon-camera:before{content:"\e046"}.glyphicon-font:before{content:"\e047"}.glyphicon-bold:before{content:"\e048"}.glyphicon-italic:before{content:"\e049"}.glyphicon-text-height:before{content:"\e050"}.glyphicon-text-width:before{content:"\e051"}.glyphicon-align-left:before{content:"\e052"}.glyphicon-align-center:before{content:"\e053"}.glyphicon-align-right:before{content:"\e054"}.glyphicon-align-justify:before{content:"\e055"}.glyphicon-list:before{content:"\e056"}.glyphicon-indent-left:before{content:"\e057"}.glyphicon-indent-right:before{content:"\e058"}.glyphicon-facetime-video:before{content:"\e059"}.glyphicon-picture:before{content:"\e060"}.glyphicon-map-marker:before{content:"\e062"}.glyphicon-adjust:before{content:"\e063"}.glyphicon-tint:before{content:"\e064"}.glyphicon-edit:before{content:"\e065"}.glyphicon-share:before{content:"\e066"}.glyphicon-check:before{content:"\e067"}.glyphicon-move:before{content:"\e068"}.glyphicon-step-backward:before{content:"\e069"}.glyphicon-fast-backward:before{content:"\e070"}.glyphicon-backward:before{content:"\e071"}.glyphicon-play:before{content:"\e072"}.glyphicon-pause:before{content:"\e073"}.glyphicon-stop:before{content:"\e074"}.glyphicon-forward:before{content:"\e075"}.glyphicon-fast-forward:before{content:"\e076"}.glyphicon-step-forward:before{content:"\e077"}.glyphicon-eject:before{content:"\e078"}.glyphicon-chevron-left:before{content:"\e079"}.glyphicon-chevron-right:before{content:"\e080"}.glyphicon-plus-sign:before{content:"\e081"}.glyphicon-minus-sign:before{content:"\e082"}.glyphicon-remove-sign:before{content:"\e083"}.glyphicon-ok-sign:before{content:"\e084"}.glyphicon-question-sign:before{content:"\e085"}.glyphicon-info-sign:before{content:"\e086"}.glyphicon-screenshot:before{content:"\e087"}.glyphicon-remove-circle:before{content:"\e088"}.glyphicon-ok-circle:before{content:"\e089"}.glyphicon-ban-circle:before{content:"\e090"}.glyphicon-arrow-left:before{content:"\e091"}.glyphicon-arrow-right:before{content:"\e092"}.glyphicon-arrow-up:before{content:"\e093"}.glyphicon-arrow-down:before{content:"\e094"}.glyphicon-share-alt:before{content:"\e095"}.glyphicon-resize-full:before{content:"\e096"}.glyphicon-resize-small:before{content:"\e097"}.glyphicon-exclamation-sign:before{content:"\e101"}.glyphicon-gift:before{content:"\e102"}.glyphicon-leaf:before{content:"\e103"}.glyphicon-fire:before{content:"\e104"}.glyphicon-eye-open:before{content:"\e105"}.glyphicon-eye-close:before{content:"\e106"}.glyphicon-warning-sign:before{content:"\e107"}.glyphicon-plane:before{content:"\e108"}.glyphicon-calendar:before{content:"\e109"}.glyphicon-random:before{content:"\e110"}.glyphicon-comment:before{content:"\e111"}.glyphicon-magnet:before{content:"\e112"}.glyphicon-chevron-up:before{content:"\e113"}.glyphicon-chevron-down:before{content:"\e114"}.glyphicon-retweet:before{content:"\e115"}.glyphicon-shopping-cart:before{content:"\e116"}.glyphicon-folder-close:before{content:"\e117"}.glyphicon-folder-open:before{content:"\e118"}.glyphicon-resize-vertical:before{content:"\e119"}.glyphicon-resize-horizontal:before{content:"\e120"}.glyphicon-hdd:before{content:"\e121"}.glyphicon-bullhorn:before{content:"\e122"}.glyphicon-bell:before{content:"\e123"}.glyphicon-certificate:before{content:"\e124"}.glyphicon-thumbs-up:before{content:"\e125"}.glyphicon-thumbs-down:before{content:"\e126"}.glyphicon-hand-right:before{content:"\e127"}.glyphicon-hand-left:before{content:"\e128"}.glyphicon-hand-up:before{content:"\e129"}.glyphicon-hand-down:before{content:"\e130"}.glyphicon-circle-arrow-right:before{content:"\e131"}.glyphicon-circle-arrow-left:before{content:"\e132"}.glyphicon-circle-arrow-up:before{content:"\e133"}.glyphicon-circle-arrow-down:before{content:"\e134"}.glyphicon-globe:before{content:"\e135"}.glyphicon-wrench:before{content:"\e136"}.glyphicon-tasks:before{content:"\e137"}.glyphicon-filter:before{content:"\e138"}.glyphicon-briefcase:before{content:"\e139"}.glyphicon-fullscreen:before{content:"\e140"}.glyphicon-dashboard:before{content:"\e141"}.glyphicon-paperclip:before{content:"\e142"}.glyphicon-heart-empty:before{content:"\e143"}.glyphicon-link:before{content:"\e144"}.glyphicon-phone:before{content:"\e145"}.glyphicon-pushpin:before{content:"\e146"}.glyphicon-usd:before{content:"\e148"}.glyphicon-gbp:before{content:"\e149"}.glyphicon-sort:before{content:"\e150"}.glyphicon-sort-by-alphabet:before{content:"\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.glyphicon-sort-by-order:before{content:"\e153"}.glyphicon-sort-by-order-alt:before{content:"\e154"}.glyphicon-sort-by-attributes:before{content:"\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\e156"}.glyphicon-unchecked:before{content:"\e157"}.glyphicon-expand:before{content:"\e158"}.glyphicon-collapse-down:before{content:"\e159"}.glyphicon-collapse-up:before{content:"\e160"}.glyphicon-log-in:before{content:"\e161"}.glyphicon-flash:before{content:"\e162"}.glyphicon-log-out:before{content:"\e163"}.glyphicon-new-window:before{content:"\e164"}.glyphicon-record:before{content:"\e165"}.glyphicon-save:before{content:"\e166"}.glyphicon-open:before{content:"\e167"}.glyphicon-saved:before{content:"\e168"}.glyphicon-import:before{content:"\e169"}.glyphicon-export:before{content:"\e170"}.glyphicon-send:before{content:"\e171"}.glyphicon-floppy-disk:before{content:"\e172"}.glyphicon-floppy-saved:before{content:"\e173"}.glyphicon-floppy-remove:before{content:"\e174"}.glyphicon-floppy-save:before{content:"\e175"}.glyphicon-floppy-open:before{content:"\e176"}.glyphicon-credit-card:before{content:"\e177"}.glyphicon-transfer:before{content:"\e178"}.glyphicon-cutlery:before{content:"\e179"}.glyphicon-header:before{content:"\e180"}.glyphicon-compressed:before{content:"\e181"}.glyphicon-earphone:before{content:"\e182"}.glyphicon-phone-alt:before{content:"\e183"}.glyphicon-tower:before{content:"\e184"}.glyphicon-stats:before{content:"\e185"}.glyphicon-sd-video:before{content:"\e186"}.glyphicon-hd-video:before{content:"\e187"}.glyphicon-subtitles:before{content:"\e188"}.glyphicon-sound-stereo:before{content:"\e189"}.glyphicon-sound-dolby:before{content:"\e190"}.glyphicon-sound-5-1:before{content:"\e191"}.glyphicon-sound-6-1:before{content:"\e192"}.glyphicon-sound-7-1:before{content:"\e193"}.glyphicon-copyright-mark:before{content:"\e194"}.glyphicon-registration-mark:before{content:"\e195"}.glyphicon-cloud-download:before{content:"\e197"}.glyphicon-cloud-upload:before{content:"\e198"}.glyphicon-tree-conifer:before{content:"\e199"}.glyphicon-tree-deciduous:before{content:"\e200"}.glyphicon-cd:before{content:"\e201"}.glyphicon-save-file:before{content:"\e202"}.glyphicon-open-file:before{content:"\e203"}.glyphicon-level-up:before{content:"\e204"}.glyphicon-copy:before{content:"\e205"}.glyphicon-paste:before{content:"\e206"}.glyphicon-alert:before{content:"\e209"}.glyphicon-equalizer:before{content:"\e210"}.glyphicon-king:before{content:"\e211"}.glyphicon-queen:before{content:"\e212"}.glyphicon-pawn:before{content:"\e213"}.glyphicon-bishop:before{content:"\e214"}.glyphicon-knight:before{content:"\e215"}.glyphicon-baby-formula:before{content:"\e216"}.glyphicon-tent:before{content:"\26fa"}.glyphicon-blackboard:before{content:"\e218"}.glyphicon-bed:before{content:"\e219"}.glyphicon-apple:before{content:"\f8ff"}.glyphicon-erase:before{content:"\e221"}.glyphicon-hourglass:before{content:"\231b"}.glyphicon-lamp:before{content:"\e223"}.glyphicon-duplicate:before{content:"\e224"}.glyphicon-piggy-bank:before{content:"\e225"}.glyphicon-scissors:before{content:"\e226"}.glyphicon-bitcoin:before{content:"\e227"}.glyphicon-btc:before{content:"\e227"}.glyphicon-xbt:before{content:"\e227"}.glyphicon-yen:before{content:"\00a5"}.glyphicon-jpy:before{content:"\00a5"}.glyphicon-ruble:before{content:"\20bd"}.glyphicon-rub:before{content:"\20bd"}.glyphicon-scale:before{content:"\e230"}.glyphicon-ice-lolly:before{content:"\e231"}.glyphicon-ice-lolly-tasted:before{content:"\e232"}.glyphicon-education:before{content:"\e233"}.glyphicon-option-horizontal:before{content:"\e234"}.glyphicon-option-vertical:before{content:"\e235"}.glyphicon-menu-hamburger:before{content:"\e236"}.glyphicon-modal-window:before{content:"\e237"}.glyphicon-oil:before{content:"\e238"}.glyphicon-grain:before{content:"\e239"}.glyphicon-sunglasses:before{content:"\e240"}.glyphicon-text-size:before{content:"\e241"}.glyphicon-text-color:before{content:"\e242"}.glyphicon-text-background:before{content:"\e243"}.glyphicon-object-align-top:before{content:"\e244"}.glyphicon-object-align-bottom:before{content:"\e245"}.glyphicon-object-align-horizontal:before{content:"\e246"}.glyphicon-object-align-left:before{content:"\e247"}.glyphicon-object-align-vertical:before{content:"\e248"}.glyphicon-object-align-right:before{content:"\e249"}.glyphicon-triangle-right:before{content:"\e250"}.glyphicon-triangle-left:before{content:"\e251"}.glyphicon-triangle-bottom:before{content:"\e252"}.glyphicon-triangle-top:before{content:"\e253"}.glyphicon-console:before{content:"\e254"}.glyphicon-superscript:before{content:"\e255"}.glyphicon-subscript:before{content:"\e256"}.glyphicon-menu-left:before{content:"\e257"}.glyphicon-menu-right:before{content:"\e258"}.glyphicon-menu-down:before{content:"\e259"}.glyphicon-menu-up:before{content:"\e260"}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}:after,:before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:10px;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.42857143;color:#333;background-color:#fff}button,input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#337ab7;text-decoration:none}a:focus,a:hover{color:#23527c;text-decoration:underline}a:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}figure{margin:0}img{vertical-align:middle}.carousel-inner>.item>a>img,.carousel-inner>.item>img,.img-responsive,.thumbnail a>img,.thumbnail>img{display:block;max-width:100%;height:auto}.img-rounded{border-radius:6px}.img-thumbnail{display:inline-block;max-width:100%;height:auto;padding:4px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}[role=button]{cursor:pointer}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{font-family:inherit;font-weight:500;line-height:1.1;color:inherit}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small{font-weight:400;line-height:1;color:#777}.h1,.h2,.h3,h1,h2,h3{margin-top:20px;margin-bottom:10px}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small{font-size:65%}.h4,.h5,.h6,h4,h5,h6{margin-top:10px;margin-bottom:10px}.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small{font-size:75%}.h1,h1{font-size:36px}.h2,h2{font-size:30px}.h3,h3{font-size:24px}.h4,h4{font-size:18px}.h5,h5{font-size:14px}.h6,h6{font-size:12px}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16px;font-weight:300;line-height:1.4}@media (min-width:768px){.lead{font-size:21px}}.small,small{font-size:85%}.mark,mark{padding:.2em;background-color:#fcf8e3}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-lowercase{text-transform:lowercase}.text-uppercase{text-transform:uppercase}.text-capitalize{text-transform:capitalize}.text-muted{color:#777}.text-primary{color:#337ab7}a.text-primary:focus,a.text-primary:hover{color:#286090}.text-success{color:#3c763d}a.text-success:focus,a.text-success:hover{color:#2b542c}.text-info{color:#31708f}a.text-info:focus,a.text-info:hover{color:#245269}.text-warning{color:#8a6d3b}a.text-warning:focus,a.text-warning:hover{color:#66512c}.text-danger{color:#a94442}a.text-danger:focus,a.text-danger:hover{color:#843534}.bg-primary{color:#fff;background-color:#337ab7}a.bg-primary:focus,a.bg-primary:hover{background-color:#286090}.bg-success{background-color:#dff0d8}a.bg-success:focus,a.bg-success:hover{background-color:#c1e2b3}.bg-info{background-color:#d9edf7}a.bg-info:focus,a.bg-info:hover{background-color:#afd9ee}.bg-warning{background-color:#fcf8e3}a.bg-warning:focus,a.bg-warning:hover{background-color:#f7ecb5}.bg-danger{background-color:#f2dede}a.bg-danger:focus,a.bg-danger:hover{background-color:#e4b9b9}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ol,ul{margin-top:0;margin-bottom:10px}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;margin-left:-5px;list-style:none}.list-inline>li{display:inline-block;padding-right:5px;padding-left:5px}dl{margin-top:0;margin-bottom:20px}dd,dt{line-height:1.42857143}dt{font-weight:700}dd{margin-left:0}@media (min-width:768px){.dl-horizontal dt{float:left;width:160px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}}abbr[data-original-title],abbr[title]{cursor:help;border-bottom:1px dotted #777}.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;font-size:17.5px;border-left:5px solid #eee}blockquote ol:last-child,blockquote p:last-child,blockquote ul:last-child{margin-bottom:0}blockquote .small,blockquote footer,blockquote small{display:block;font-size:80%;line-height:1.42857143;color:#777}blockquote .small:before,blockquote footer:before,blockquote small:before{content:'\2014 \00A0'}.blockquote-reverse,blockquote.pull-right{padding-right:15px;padding-left:0;text-align:right;border-right:5px solid #eee;border-left:0}.blockquote-reverse .small:before,.blockquote-reverse footer:before,.blockquote-reverse small:before,blockquote.pull-right .small:before,blockquote.pull-right footer:before,blockquote.pull-right small:before{content:''}.blockquote-reverse .small:after,.blockquote-reverse footer:after,.blockquote-reverse small:after,blockquote.pull-right .small:after,blockquote.pull-right footer:after,blockquote.pull-right small:after{content:'\00A0 \2014'}address{margin-bottom:20px;font-style:normal;line-height:1.42857143}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}code{padding:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;border-radius:4px}kbd{padding:2px 4px;font-size:90%;color:#fff;background-color:#333;border-radius:3px;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.25);box-shadow:inset 0 -1px 0 rgba(0,0,0,.25)}kbd kbd{padding:0;font-size:100%;font-weight:700;-webkit-box-shadow:none;box-shadow:none}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.42857143;color:#333;word-break:break-all;word-wrap:break-word;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:768px){.container{width:750px}}@media (min-width:992px){.container{width:970px}}@media (min-width:1200px){.container{width:1170px}}.container-fluid{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.row{margin-right:-15px;margin-left:-15px}.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.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-md-1,.col-md-10,.col-md-11,.col-md-12,.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-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.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-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{float:left}.col-xs-12{width:100%}.col-xs-11{width:91.66666667%}.col-xs-10{width:83.33333333%}.col-xs-9{width:75%}.col-xs-8{width:66.66666667%}.col-xs-7{width:58.33333333%}.col-xs-6{width:50%}.col-xs-5{width:41.66666667%}.col-xs-4{width:33.33333333%}.col-xs-3{width:25%}.col-xs-2{width:16.66666667%}.col-xs-1{width:8.33333333%}.col-xs-pull-12{right:100%}.col-xs-pull-11{right:91.66666667%}.col-xs-pull-10{right:83.33333333%}.col-xs-pull-9{right:75%}.col-xs-pull-8{right:66.66666667%}.col-xs-pull-7{right:58.33333333%}.col-xs-pull-6{right:50%}.col-xs-pull-5{right:41.66666667%}.col-xs-pull-4{right:33.33333333%}.col-xs-pull-3{right:25%}.col-xs-pull-2{right:16.66666667%}.col-xs-pull-1{right:8.33333333%}.col-xs-pull-0{right:auto}.col-xs-push-12{left:100%}.col-xs-push-11{left:91.66666667%}.col-xs-push-10{left:83.33333333%}.col-xs-push-9{left:75%}.col-xs-push-8{left:66.66666667%}.col-xs-push-7{left:58.33333333%}.col-xs-push-6{left:50%}.col-xs-push-5{left:41.66666667%}.col-xs-push-4{left:33.33333333%}.col-xs-push-3{left:25%}.col-xs-push-2{left:16.66666667%}.col-xs-push-1{left:8.33333333%}.col-xs-push-0{left:auto}.col-xs-offset-12{margin-left:100%}.col-xs-offset-11{margin-left:91.66666667%}.col-xs-offset-10{margin-left:83.33333333%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-8{margin-left:66.66666667%}.col-xs-offset-7{margin-left:58.33333333%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-5{margin-left:41.66666667%}.col-xs-offset-4{margin-left:33.33333333%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-2{margin-left:16.66666667%}.col-xs-offset-1{margin-left:8.33333333%}.col-xs-offset-0{margin-left:0}@media (min-width:768px){.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9{float:left}.col-sm-12{width:100%}.col-sm-11{width:91.66666667%}.col-sm-10{width:83.33333333%}.col-sm-9{width:75%}.col-sm-8{width:66.66666667%}.col-sm-7{width:58.33333333%}.col-sm-6{width:50%}.col-sm-5{width:41.66666667%}.col-sm-4{width:33.33333333%}.col-sm-3{width:25%}.col-sm-2{width:16.66666667%}.col-sm-1{width:8.33333333%}.col-sm-pull-12{right:100%}.col-sm-pull-11{right:91.66666667%}.col-sm-pull-10{right:83.33333333%}.col-sm-pull-9{right:75%}.col-sm-pull-8{right:66.66666667%}.col-sm-pull-7{right:58.33333333%}.col-sm-pull-6{right:50%}.col-sm-pull-5{right:41.66666667%}.col-sm-pull-4{right:33.33333333%}.col-sm-pull-3{right:25%}.col-sm-pull-2{right:16.66666667%}.col-sm-pull-1{right:8.33333333%}.col-sm-pull-0{right:auto}.col-sm-push-12{left:100%}.col-sm-push-11{left:91.66666667%}.col-sm-push-10{left:83.33333333%}.col-sm-push-9{left:75%}.col-sm-push-8{left:66.66666667%}.col-sm-push-7{left:58.33333333%}.col-sm-push-6{left:50%}.col-sm-push-5{left:41.66666667%}.col-sm-push-4{left:33.33333333%}.col-sm-push-3{left:25%}.col-sm-push-2{left:16.66666667%}.col-sm-push-1{left:8.33333333%}.col-sm-push-0{left:auto}.col-sm-offset-12{margin-left:100%}.col-sm-offset-11{margin-left:91.66666667%}.col-sm-offset-10{margin-left:83.33333333%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-8{margin-left:66.66666667%}.col-sm-offset-7{margin-left:58.33333333%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-5{margin-left:41.66666667%}.col-sm-offset-4{margin-left:33.33333333%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-2{margin-left:16.66666667%}.col-sm-offset-1{margin-left:8.33333333%}.col-sm-offset-0{margin-left:0}}@media (min-width:992px){.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9{float:left}.col-md-12{width:100%}.col-md-11{width:91.66666667%}.col-md-10{width:83.33333333%}.col-md-9{width:75%}.col-md-8{width:66.66666667%}.col-md-7{width:58.33333333%}.col-md-6{width:50%}.col-md-5{width:41.66666667%}.col-md-4{width:33.33333333%}.col-md-3{width:25%}.col-md-2{width:16.66666667%}.col-md-1{width:8.33333333%}.col-md-pull-12{right:100%}.col-md-pull-11{right:91.66666667%}.col-md-pull-10{right:83.33333333%}.col-md-pull-9{right:75%}.col-md-pull-8{right:66.66666667%}.col-md-pull-7{right:58.33333333%}.col-md-pull-6{right:50%}.col-md-pull-5{right:41.66666667%}.col-md-pull-4{right:33.33333333%}.col-md-pull-3{right:25%}.col-md-pull-2{right:16.66666667%}.col-md-pull-1{right:8.33333333%}.col-md-pull-0{right:auto}.col-md-push-12{left:100%}.col-md-push-11{left:91.66666667%}.col-md-push-10{left:83.33333333%}.col-md-push-9{left:75%}.col-md-push-8{left:66.66666667%}.col-md-push-7{left:58.33333333%}.col-md-push-6{left:50%}.col-md-push-5{left:41.66666667%}.col-md-push-4{left:33.33333333%}.col-md-push-3{left:25%}.col-md-push-2{left:16.66666667%}.col-md-push-1{left:8.33333333%}.col-md-push-0{left:auto}.col-md-offset-12{margin-left:100%}.col-md-offset-11{margin-left:91.66666667%}.col-md-offset-10{margin-left:83.33333333%}.col-md-offset-9{margin-left:75%}.col-md-offset-8{margin-left:66.66666667%}.col-md-offset-7{margin-left:58.33333333%}.col-md-offset-6{margin-left:50%}.col-md-offset-5{margin-left:41.66666667%}.col-md-offset-4{margin-left:33.33333333%}.col-md-offset-3{margin-left:25%}.col-md-offset-2{margin-left:16.66666667%}.col-md-offset-1{margin-left:8.33333333%}.col-md-offset-0{margin-left:0}}@media (min-width:1200px){.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9{float:left}.col-lg-12{width:100%}.col-lg-11{width:91.66666667%}.col-lg-10{width:83.33333333%}.col-lg-9{width:75%}.col-lg-8{width:66.66666667%}.col-lg-7{width:58.33333333%}.col-lg-6{width:50%}.col-lg-5{width:41.66666667%}.col-lg-4{width:33.33333333%}.col-lg-3{width:25%}.col-lg-2{width:16.66666667%}.col-lg-1{width:8.33333333%}.col-lg-pull-12{right:100%}.col-lg-pull-11{right:91.66666667%}.col-lg-pull-10{right:83.33333333%}.col-lg-pull-9{right:75%}.col-lg-pull-8{right:66.66666667%}.col-lg-pull-7{right:58.33333333%}.col-lg-pull-6{right:50%}.col-lg-pull-5{right:41.66666667%}.col-lg-pull-4{right:33.33333333%}.col-lg-pull-3{right:25%}.col-lg-pull-2{right:16.66666667%}.col-lg-pull-1{right:8.33333333%}.col-lg-pull-0{right:auto}.col-lg-push-12{left:100%}.col-lg-push-11{left:91.66666667%}.col-lg-push-10{left:83.33333333%}.col-lg-push-9{left:75%}.col-lg-push-8{left:66.66666667%}.col-lg-push-7{left:58.33333333%}.col-lg-push-6{left:50%}.col-lg-push-5{left:41.66666667%}.col-lg-push-4{left:33.33333333%}.col-lg-push-3{left:25%}.col-lg-push-2{left:16.66666667%}.col-lg-push-1{left:8.33333333%}.col-lg-push-0{left:auto}.col-lg-offset-12{margin-left:100%}.col-lg-offset-11{margin-left:91.66666667%}.col-lg-offset-10{margin-left:83.33333333%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-8{margin-left:66.66666667%}.col-lg-offset-7{margin-left:58.33333333%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-5{margin-left:41.66666667%}.col-lg-offset-4{margin-left:33.33333333%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-2{margin-left:16.66666667%}.col-lg-offset-1{margin-left:8.33333333%}.col-lg-offset-0{margin-left:0}}table{background-color:transparent}caption{padding-top:8px;padding-bottom:8px;color:#777;text-align:left}th{text-align:left}.table{width:100%;max-width:100%;margin-bottom:20px}.table>tbody>tr>td,.table>tbody>tr>th,.table>tfoot>tr>td,.table>tfoot>tr>th,.table>thead>tr>td,.table>thead>tr>th{padding:8px;line-height:1.42857143;vertical-align:top;border-top:1px solid #ddd}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table>caption+thead>tr:first-child>td,.table>caption+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>th,.table>thead:first-child>tr:first-child>td,.table>thead:first-child>tr:first-child>th{border-top:0}.table>tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed>tbody>tr>td,.table-condensed>tbody>tr>th,.table-condensed>tfoot>tr>td,.table-condensed>tfoot>tr>th,.table-condensed>thead>tr>td,.table-condensed>thead>tr>th{padding:5px}.table-bordered{border:1px solid #ddd}.table-bordered>tbody>tr>td,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>td,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border:1px solid #ddd}.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border-bottom-width:2px}.table-striped>tbody>tr:nth-of-type(odd){background-color:#f9f9f9}.table-hover>tbody>tr:hover{background-color:#f5f5f5}table col[class*=col-]{position:static;display:table-column;float:none}table td[class*=col-],table th[class*=col-]{position:static;display:table-cell;float:none}.table>tbody>tr.active>td,.table>tbody>tr.active>th,.table>tbody>tr>td.active,.table>tbody>tr>th.active,.table>tfoot>tr.active>td,.table>tfoot>tr.active>th,.table>tfoot>tr>td.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>thead>tr.active>th,.table>thead>tr>td.active,.table>thead>tr>th.active{background-color:#f5f5f5}.table-hover>tbody>tr.active:hover>td,.table-hover>tbody>tr.active:hover>th,.table-hover>tbody>tr:hover>.active,.table-hover>tbody>tr>td.active:hover,.table-hover>tbody>tr>th.active:hover{background-color:#e8e8e8}.table>tbody>tr.success>td,.table>tbody>tr.success>th,.table>tbody>tr>td.success,.table>tbody>tr>th.success,.table>tfoot>tr.success>td,.table>tfoot>tr.success>th,.table>tfoot>tr>td.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>thead>tr.success>th,.table>thead>tr>td.success,.table>thead>tr>th.success{background-color:#dff0d8}.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr.success:hover>th,.table-hover>tbody>tr:hover>.success,.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover{background-color:#d0e9c6}.table>tbody>tr.info>td,.table>tbody>tr.info>th,.table>tbody>tr>td.info,.table>tbody>tr>th.info,.table>tfoot>tr.info>td,.table>tfoot>tr.info>th,.table>tfoot>tr>td.info,.table>tfoot>tr>th.info,.table>thead>tr.info>td,.table>thead>tr.info>th,.table>thead>tr>td.info,.table>thead>tr>th.info{background-color:#d9edf7}.table-hover>tbody>tr.info:hover>td,.table-hover>tbody>tr.info:hover>th,.table-hover>tbody>tr:hover>.info,.table-hover>tbody>tr>td.info:hover,.table-hover>tbody>tr>th.info:hover{background-color:#c4e3f3}.table>tbody>tr.warning>td,.table>tbody>tr.warning>th,.table>tbody>tr>td.warning,.table>tbody>tr>th.warning,.table>tfoot>tr.warning>td,.table>tfoot>tr.warning>th,.table>tfoot>tr>td.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>thead>tr.warning>th,.table>thead>tr>td.warning,.table>thead>tr>th.warning{background-color:#fcf8e3}.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr.warning:hover>th,.table-hover>tbody>tr:hover>.warning,.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover{background-color:#faf2cc}.table>tbody>tr.danger>td,.table>tbody>tr.danger>th,.table>tbody>tr>td.danger,.table>tbody>tr>th.danger,.table>tfoot>tr.danger>td,.table>tfoot>tr.danger>th,.table>tfoot>tr>td.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>thead>tr.danger>th,.table>thead>tr>td.danger,.table>thead>tr>th.danger{background-color:#f2dede}.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr.danger:hover>th,.table-hover>tbody>tr:hover>.danger,.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover{background-color:#ebcccc}.table-responsive{min-height:.01%;overflow-x:auto}@media screen and (max-width:767px){.table-responsive{width:100%;margin-bottom:15px;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ddd}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>td,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>thead>tr>th{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}label{display:inline-block;max-width:100%;margin-bottom:5px;font-weight:700}input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type=checkbox],input[type=radio]{margin:4px 0 0;margin-top:1px\9;line-height:normal}input[type=file]{display:block}input[type=range]{display:block;width:100%}select[multiple],select[size]{height:auto}input[type=file]:focus,input[type=checkbox]:focus,input[type=radio]:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}output{display:block;padding-top:7px;font-size:14px;line-height:1.42857143;color:#555}.form-control{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.42857143;color:#555;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s;-o-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.form-control::-moz-placeholder{color:#999;opacity:1}.form-control:-ms-input-placeholder{color:#999}.form-control::-webkit-input-placeholder{color:#999}.form-control::-ms-expand{background-color:transparent;border:0}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{background-color:#eee;opacity:1}.form-control[disabled],fieldset[disabled] .form-control{cursor:not-allowed}textarea.form-control{height:auto}input[type=search]{-webkit-appearance:none}@media screen and (-webkit-min-device-pixel-ratio:0){input[type=date].form-control,input[type=time].form-control,input[type=datetime-local].form-control,input[type=month].form-control{line-height:34px}.input-group-sm input[type=date],.input-group-sm input[type=time],.input-group-sm input[type=datetime-local],.input-group-sm input[type=month],input[type=date].input-sm,input[type=time].input-sm,input[type=datetime-local].input-sm,input[type=month].input-sm{line-height:30px}.input-group-lg input[type=date],.input-group-lg input[type=time],.input-group-lg input[type=datetime-local],.input-group-lg input[type=month],input[type=date].input-lg,input[type=time].input-lg,input[type=datetime-local].input-lg,input[type=month].input-lg{line-height:46px}}.form-group{margin-bottom:15px}.checkbox,.radio{position:relative;display:block;margin-top:10px;margin-bottom:10px}.checkbox label,.radio label{min-height:20px;padding-left:20px;margin-bottom:0;font-weight:400;cursor:pointer}.checkbox input[type=checkbox],.checkbox-inline input[type=checkbox],.radio input[type=radio],.radio-inline input[type=radio]{position:absolute;margin-top:4px\9;margin-left:-20px}.checkbox+.checkbox,.radio+.radio{margin-top:-5px}.checkbox-inline,.radio-inline{position:relative;display:inline-block;padding-left:20px;margin-bottom:0;font-weight:400;vertical-align:middle;cursor:pointer}.checkbox-inline+.checkbox-inline,.radio-inline+.radio-inline{margin-top:0;margin-left:10px}fieldset[disabled] input[type=checkbox],fieldset[disabled] input[type=radio],input[type=checkbox].disabled,input[type=checkbox][disabled],input[type=radio].disabled,input[type=radio][disabled]{cursor:not-allowed}.checkbox-inline.disabled,.radio-inline.disabled,fieldset[disabled] .checkbox-inline,fieldset[disabled] .radio-inline{cursor:not-allowed}.checkbox.disabled label,.radio.disabled label,fieldset[disabled] .checkbox label,fieldset[disabled] .radio label{cursor:not-allowed}.form-control-static{min-height:34px;padding-top:7px;padding-bottom:7px;margin-bottom:0}.form-control-static.input-lg,.form-control-static.input-sm{padding-right:0;padding-left:0}.input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-sm{height:30px;line-height:30px}select[multiple].input-sm,textarea.input-sm{height:auto}.form-group-sm .form-control{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.form-group-sm select.form-control{height:30px;line-height:30px}.form-group-sm select[multiple].form-control,.form-group-sm textarea.form-control{height:auto}.form-group-sm .form-control-static{height:30px;min-height:32px;padding:6px 10px;font-size:12px;line-height:1.5}.input-lg{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}select.input-lg{height:46px;line-height:46px}select[multiple].input-lg,textarea.input-lg{height:auto}.form-group-lg .form-control{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}.form-group-lg select.form-control{height:46px;line-height:46px}.form-group-lg select[multiple].form-control,.form-group-lg textarea.form-control{height:auto}.form-group-lg .form-control-static{height:46px;min-height:38px;padding:11px 16px;font-size:18px;line-height:1.3333333}.has-feedback{position:relative}.has-feedback .form-control{padding-right:42.5px}.form-control-feedback{position:absolute;top:0;right:0;z-index:2;display:block;width:34px;height:34px;line-height:34px;text-align:center;pointer-events:none}.form-group-lg .form-control+.form-control-feedback,.input-group-lg+.form-control-feedback,.input-lg+.form-control-feedback{width:46px;height:46px;line-height:46px}.form-group-sm .form-control+.form-control-feedback,.input-group-sm+.form-control-feedback,.input-sm+.form-control-feedback{width:30px;height:30px;line-height:30px}.has-success .checkbox,.has-success .checkbox-inline,.has-success .control-label,.has-success .help-block,.has-success .radio,.has-success .radio-inline,.has-success.checkbox label,.has-success.checkbox-inline label,.has-success.radio label,.has-success.radio-inline label{color:#3c763d}.has-success .form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-success .form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168}.has-success .input-group-addon{color:#3c763d;background-color:#dff0d8;border-color:#3c763d}.has-success .form-control-feedback{color:#3c763d}.has-warning .checkbox,.has-warning .checkbox-inline,.has-warning .control-label,.has-warning .help-block,.has-warning .radio,.has-warning .radio-inline,.has-warning.checkbox label,.has-warning.checkbox-inline label,.has-warning.radio label,.has-warning.radio-inline label{color:#8a6d3b}.has-warning .form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-warning .form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b}.has-warning .input-group-addon{color:#8a6d3b;background-color:#fcf8e3;border-color:#8a6d3b}.has-warning .form-control-feedback{color:#8a6d3b}.has-error .checkbox,.has-error .checkbox-inline,.has-error .control-label,.has-error .help-block,.has-error .radio,.has-error .radio-inline,.has-error.checkbox label,.has-error.checkbox-inline label,.has-error.radio label,.has-error.radio-inline label{color:#a94442}.has-error .form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-error .form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483}.has-error .input-group-addon{color:#a94442;background-color:#f2dede;border-color:#a94442}.has-error .form-control-feedback{color:#a94442}.has-feedback label~.form-control-feedback{top:25px}.has-feedback label.sr-only~.form-control-feedback{top:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media (min-width:768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-static{display:inline-block}.form-inline .input-group{display:inline-table;vertical-align:middle}.form-inline .input-group .form-control,.form-inline .input-group .input-group-addon,.form-inline .input-group .input-group-btn{width:auto}.form-inline .input-group>.form-control{width:100%}.form-inline .control-label{margin-bottom:0;vertical-align:middle}.form-inline .checkbox,.form-inline .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.form-inline .checkbox label,.form-inline .radio label{padding-left:0}.form-inline .checkbox input[type=checkbox],.form-inline .radio input[type=radio]{position:relative;margin-left:0}.form-inline .has-feedback .form-control-feedback{top:0}}.form-horizontal .checkbox,.form-horizontal .checkbox-inline,.form-horizontal .radio,.form-horizontal .radio-inline{padding-top:7px;margin-top:0;margin-bottom:0}.form-horizontal .checkbox,.form-horizontal .radio{min-height:27px}.form-horizontal .form-group{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.form-horizontal .control-label{padding-top:7px;margin-bottom:0;text-align:right}}.form-horizontal .has-feedback .form-control-feedback{right:15px}@media (min-width:768px){.form-horizontal .form-group-lg .control-label{padding-top:11px;font-size:18px}}@media (min-width:768px){.form-horizontal .form-group-sm .control-label{padding-top:6px;font-size:12px}}.btn{display:inline-block;padding:6px 12px;margin-bottom:0;font-size:14px;font-weight:400;line-height:1.42857143;text-align:center;white-space:nowrap;vertical-align:middle;-ms-touch-action:manipulation;touch-action:manipulation;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-image:none;border:1px solid transparent;border-radius:4px}.btn.active.focus,.btn.active:focus,.btn.focus,.btn:active.focus,.btn:active:focus,.btn:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn.focus,.btn:focus,.btn:hover{color:#333;text-decoration:none}.btn.active,.btn:active{background-image:none;outline:0;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{cursor:not-allowed;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none;opacity:.65}a.btn.disabled,fieldset[disabled] a.btn{pointer-events:none}.btn-default{color:#333;background-color:#fff;border-color:#ccc}.btn-default.focus,.btn-default:focus{color:#333;background-color:#e6e6e6;border-color:#8c8c8c}.btn-default:hover{color:#333;background-color:#e6e6e6;border-color:#adadad}.btn-default.active,.btn-default:active,.open>.dropdown-toggle.btn-default{color:#333;background-color:#e6e6e6;border-color:#adadad}.btn-default.active.focus,.btn-default.active:focus,.btn-default.active:hover,.btn-default:active.focus,.btn-default:active:focus,.btn-default:active:hover,.open>.dropdown-toggle.btn-default.focus,.open>.dropdown-toggle.btn-default:focus,.open>.dropdown-toggle.btn-default:hover{color:#333;background-color:#d4d4d4;border-color:#8c8c8c}.btn-default.active,.btn-default:active,.open>.dropdown-toggle.btn-default{background-image:none}.btn-default.disabled.focus,.btn-default.disabled:focus,.btn-default.disabled:hover,.btn-default[disabled].focus,.btn-default[disabled]:focus,.btn-default[disabled]:hover,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default:hover{background-color:#fff;border-color:#ccc}.btn-default .badge{color:#fff;background-color:#333}.btn-primary{color:#fff;background-color:#337ab7;border-color:#2e6da4}.btn-primary.focus,.btn-primary:focus{color:#fff;background-color:#286090;border-color:#122b40}.btn-primary:hover{color:#fff;background-color:#286090;border-color:#204d74}.btn-primary.active,.btn-primary:active,.open>.dropdown-toggle.btn-primary{color:#fff;background-color:#286090;border-color:#204d74}.btn-primary.active.focus,.btn-primary.active:focus,.btn-primary.active:hover,.btn-primary:active.focus,.btn-primary:active:focus,.btn-primary:active:hover,.open>.dropdown-toggle.btn-primary.focus,.open>.dropdown-toggle.btn-primary:focus,.open>.dropdown-toggle.btn-primary:hover{color:#fff;background-color:#204d74;border-color:#122b40}.btn-primary.active,.btn-primary:active,.open>.dropdown-toggle.btn-primary{background-image:none}.btn-primary.disabled.focus,.btn-primary.disabled:focus,.btn-primary.disabled:hover,.btn-primary[disabled].focus,.btn-primary[disabled]:focus,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary:hover{background-color:#337ab7;border-color:#2e6da4}.btn-primary .badge{color:#337ab7;background-color:#fff}.btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.btn-success.focus,.btn-success:focus{color:#fff;background-color:#449d44;border-color:#255625}.btn-success:hover{color:#fff;background-color:#449d44;border-color:#398439}.btn-success.active,.btn-success:active,.open>.dropdown-toggle.btn-success{color:#fff;background-color:#449d44;border-color:#398439}.btn-success.active.focus,.btn-success.active:focus,.btn-success.active:hover,.btn-success:active.focus,.btn-success:active:focus,.btn-success:active:hover,.open>.dropdown-toggle.btn-success.focus,.open>.dropdown-toggle.btn-success:focus,.open>.dropdown-toggle.btn-success:hover{color:#fff;background-color:#398439;border-color:#255625}.btn-success.active,.btn-success:active,.open>.dropdown-toggle.btn-success{background-image:none}.btn-success.disabled.focus,.btn-success.disabled:focus,.btn-success.disabled:hover,.btn-success[disabled].focus,.btn-success[disabled]:focus,.btn-success[disabled]:hover,fieldset[disabled] .btn-success.focus,fieldset[disabled] .btn-success:focus,fieldset[disabled] .btn-success:hover{background-color:#5cb85c;border-color:#4cae4c}.btn-success .badge{color:#5cb85c;background-color:#fff}.btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.btn-info.focus,.btn-info:focus{color:#fff;background-color:#31b0d5;border-color:#1b6d85}.btn-info:hover{color:#fff;background-color:#31b0d5;border-color:#269abc}.btn-info.active,.btn-info:active,.open>.dropdown-toggle.btn-info{color:#fff;background-color:#31b0d5;border-color:#269abc}.btn-info.active.focus,.btn-info.active:focus,.btn-info.active:hover,.btn-info:active.focus,.btn-info:active:focus,.btn-info:active:hover,.open>.dropdown-toggle.btn-info.focus,.open>.dropdown-toggle.btn-info:focus,.open>.dropdown-toggle.btn-info:hover{color:#fff;background-color:#269abc;border-color:#1b6d85}.btn-info.active,.btn-info:active,.open>.dropdown-toggle.btn-info{background-image:none}.btn-info.disabled.focus,.btn-info.disabled:focus,.btn-info.disabled:hover,.btn-info[disabled].focus,.btn-info[disabled]:focus,.btn-info[disabled]:hover,fieldset[disabled] .btn-info.focus,fieldset[disabled] .btn-info:focus,fieldset[disabled] .btn-info:hover{background-color:#5bc0de;border-color:#46b8da}.btn-info .badge{color:#5bc0de;background-color:#fff}.btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.btn-warning.focus,.btn-warning:focus{color:#fff;background-color:#ec971f;border-color:#985f0d}.btn-warning:hover{color:#fff;background-color:#ec971f;border-color:#d58512}.btn-warning.active,.btn-warning:active,.open>.dropdown-toggle.btn-warning{color:#fff;background-color:#ec971f;border-color:#d58512}.btn-warning.active.focus,.btn-warning.active:focus,.btn-warning.active:hover,.btn-warning:active.focus,.btn-warning:active:focus,.btn-warning:active:hover,.open>.dropdown-toggle.btn-warning.focus,.open>.dropdown-toggle.btn-warning:focus,.open>.dropdown-toggle.btn-warning:hover{color:#fff;background-color:#d58512;border-color:#985f0d}.btn-warning.active,.btn-warning:active,.open>.dropdown-toggle.btn-warning{background-image:none}.btn-warning.disabled.focus,.btn-warning.disabled:focus,.btn-warning.disabled:hover,.btn-warning[disabled].focus,.btn-warning[disabled]:focus,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning.focus,fieldset[disabled] .btn-warning:focus,fieldset[disabled] .btn-warning:hover{background-color:#f0ad4e;border-color:#eea236}.btn-warning .badge{color:#f0ad4e;background-color:#fff}.btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.btn-danger.focus,.btn-danger:focus{color:#fff;background-color:#c9302c;border-color:#761c19}.btn-danger:hover{color:#fff;background-color:#c9302c;border-color:#ac2925}.btn-danger.active,.btn-danger:active,.open>.dropdown-toggle.btn-danger{color:#fff;background-color:#c9302c;border-color:#ac2925}.btn-danger.active.focus,.btn-danger.active:focus,.btn-danger.active:hover,.btn-danger:active.focus,.btn-danger:active:focus,.btn-danger:active:hover,.open>.dropdown-toggle.btn-danger.focus,.open>.dropdown-toggle.btn-danger:focus,.open>.dropdown-toggle.btn-danger:hover{color:#fff;background-color:#ac2925;border-color:#761c19}.btn-danger.active,.btn-danger:active,.open>.dropdown-toggle.btn-danger{background-image:none}.btn-danger.disabled.focus,.btn-danger.disabled:focus,.btn-danger.disabled:hover,.btn-danger[disabled].focus,.btn-danger[disabled]:focus,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:hover{background-color:#d9534f;border-color:#d43f3a}.btn-danger .badge{color:#d9534f;background-color:#fff}.btn-link{font-weight:400;color:#337ab7;border-radius:0}.btn-link,.btn-link.active,.btn-link:active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:active,.btn-link:focus,.btn-link:hover{border-color:transparent}.btn-link:focus,.btn-link:hover{color:#23527c;text-decoration:underline;background-color:transparent}.btn-link[disabled]:focus,.btn-link[disabled]:hover,fieldset[disabled] .btn-link:focus,fieldset[disabled] .btn-link:hover{color:#777;text-decoration:none}.btn-group-lg>.btn,.btn-lg{padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}.btn-group-sm>.btn,.btn-sm{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-group-xs>.btn,.btn-xs{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:5px}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}tr.collapse.in{display:table-row}tbody.collapse.in{display:table-row-group}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition-timing-function:ease;-o-transition-timing-function:ease;transition-timing-function:ease;-webkit-transition-duration:.35s;-o-transition-duration:.35s;transition-duration:.35s;-webkit-transition-property:height,visibility;-o-transition-property:height,visibility;transition-property:height,visibility}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px dashed;border-top:4px solid\9;border-right:4px solid transparent;border-left:4px solid transparent}.dropdown,.dropup{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;font-size:14px;text-align:left;list-style:none;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);box-shadow:0 6px 12px rgba(0,0,0,.175)}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:1.42857143;color:#333;white-space:nowrap}.dropdown-menu>li>a:focus,.dropdown-menu>li>a:hover{color:#262626;text-decoration:none;background-color:#f5f5f5}.dropdown-menu>.active>a,.dropdown-menu>.active>a:focus,.dropdown-menu>.active>a:hover{color:#fff;text-decoration:none;background-color:#337ab7;outline:0}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover{color:#777}.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover{text-decoration:none;cursor:not-allowed;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-menu-right{right:0;left:auto}.dropdown-menu-left{right:auto;left:0}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.42857143;color:#777;white-space:nowrap}.dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{content:"";border-top:0;border-bottom:4px dashed;border-bottom:4px solid\9}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:2px}@media (min-width:768px){.navbar-right .dropdown-menu{right:0;left:auto}.navbar-right .dropdown-menu-left{right:auto;left:0}}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;float:left}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:2}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar{margin-left:-5px}.btn-toolbar .btn,.btn-toolbar .btn-group,.btn-toolbar .input-group{float:left}.btn-toolbar>.btn,.btn-toolbar>.btn-group,.btn-toolbar>.input-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-left-radius:0;border-bottom-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{padding-right:8px;padding-left:8px}.btn-group>.btn-lg+.dropdown-toggle{padding-right:12px;padding-left:12px}.btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.btn .caret{margin-left:0}.btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.dropup .btn-lg .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group,.btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-left-radius:0;border-top-right-radius:0}.btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.btn-group-justified>.btn,.btn-group-justified>.btn-group{display:table-cell;float:none;width:1%}.btn-group-justified>.btn-group .btn{width:100%}.btn-group-justified>.btn-group .dropdown-menu{left:auto}[data-toggle=buttons]>.btn input[type=checkbox],[data-toggle=buttons]>.btn input[type=radio],[data-toggle=buttons]>.btn-group>.btn input[type=checkbox],[data-toggle=buttons]>.btn-group>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group[class*=col-]{float:none;padding-right:0;padding-left:0}.input-group .form-control{position:relative;z-index:2;float:left;width:100%;margin-bottom:0}.input-group .form-control:focus{z-index:3}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}select.input-group-lg>.form-control,select.input-group-lg>.input-group-addon,select.input-group-lg>.input-group-btn>.btn{height:46px;line-height:46px}select[multiple].input-group-lg>.form-control,select[multiple].input-group-lg>.input-group-addon,select[multiple].input-group-lg>.input-group-btn>.btn,textarea.input-group-lg>.form-control,textarea.input-group-lg>.input-group-addon,textarea.input-group-lg>.input-group-btn>.btn{height:auto}.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-group-sm>.form-control,select.input-group-sm>.input-group-addon,select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}select[multiple].input-group-sm>.form-control,select[multiple].input-group-sm>.input-group-addon,select[multiple].input-group-sm>.input-group-btn>.btn,textarea.input-group-sm>.form-control,textarea.input-group-sm>.input-group-addon,textarea.input-group-sm>.input-group-btn>.btn{height:auto}.input-group .form-control,.input-group-addon,.input-group-btn{display:table-cell}.input-group .form-control:not(:first-child):not(:last-child),.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:6px 12px;font-size:14px;font-weight:400;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type=checkbox],.input-group-addon input[type=radio]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn-group:not(:last-child)>.btn,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:first-child>.btn-group:not(:first-child)>.btn,.input-group-btn:first-child>.btn:not(:first-child),.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group>.btn,.input-group-btn:last-child>.dropdown-toggle{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;font-size:0;white-space:nowrap}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-1px}.input-group-btn>.btn:active,.input-group-btn>.btn:focus,.input-group-btn>.btn:hover{z-index:2}.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group{margin-right:-1px}.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group{z-index:2;margin-left:-1px}.nav{padding-left:0;margin-bottom:0;list-style:none}.nav>li{position:relative;display:block}.nav>li>a{position:relative;display:block;padding:10px 15px}.nav>li>a:focus,.nav>li>a:hover{text-decoration:none;background-color:#eee}.nav>li.disabled>a{color:#777}.nav>li.disabled>a:focus,.nav>li.disabled>a:hover{color:#777;text-decoration:none;cursor:not-allowed;background-color:transparent}.nav .open>a,.nav .open>a:focus,.nav .open>a:hover{background-color:#eee;border-color:#337ab7}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.42857143;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:focus,.nav-tabs>li.active>a:hover{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.nav-tabs.nav-justified{width:100%;border-bottom:0}.nav-tabs.nav-justified>li{float:none}.nav-tabs.nav-justified>li>a{margin-bottom:5px;text-align:center}.nav-tabs.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-tabs.nav-justified>li{display:table-cell;width:1%}.nav-tabs.nav-justified>li>a{margin-bottom:0}}.nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.nav-tabs.nav-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:hover{border-bottom-color:#fff}}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:4px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:focus,.nav-pills>li.active>a:hover{color:#fff;background-color:#337ab7}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified{width:100%}.nav-justified>li{float:none}.nav-justified>li>a{margin-bottom:5px;text-align:center}.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-justified>li{display:table-cell;width:1%}.nav-justified>li>a{margin-bottom:0}}.nav-tabs-justified{border-bottom:0}.nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:focus,.nav-tabs-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.nav-tabs-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:focus,.nav-tabs-justified>.active>a:hover{border-bottom-color:#fff}}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}@media (min-width:768px){.navbar{border-radius:4px}}@media (min-width:768px){.navbar-header{float:left}}.navbar-collapse{padding-right:15px;padding-left:15px;overflow-x:visible;-webkit-overflow-scrolling:touch;border-top:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.1)}.navbar-collapse.in{overflow-y:auto}@media (min-width:768px){.navbar-collapse{width:auto;border-top:0;-webkit-box-shadow:none;box-shadow:none}.navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important}.navbar-collapse.in{overflow-y:visible}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse,.navbar-static-top .navbar-collapse{padding-right:0;padding-left:0}}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse{max-height:340px}@media (max-device-width:480px) and (orientation:landscape){.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse{max-height:200px}}.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:0;margin-left:0}}.navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width:768px){.navbar-static-top{border-radius:0}}.navbar-fixed-bottom,.navbar-fixed-top{position:fixed;right:0;left:0;z-index:1030}@media (min-width:768px){.navbar-fixed-bottom,.navbar-fixed-top{border-radius:0}}.navbar-fixed-top{top:0;border-width:0 0 1px}.navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.navbar-brand{float:left;height:50px;padding:15px 15px;font-size:18px;line-height:20px}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-brand>img{display:block}@media (min-width:768px){.navbar>.container .navbar-brand,.navbar>.container-fluid .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;padding:9px 10px;margin-top:8px;margin-right:15px;margin-bottom:8px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px}.navbar-toggle:focus{outline:0}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:768px){.navbar-toggle{display:none}}.navbar-nav{margin:7.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media (max-width:767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;-webkit-box-shadow:none;box-shadow:none}.navbar-nav .open .dropdown-menu .dropdown-header,.navbar-nav .open .dropdown-menu>li>a{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:focus,.navbar-nav .open .dropdown-menu>li>a:hover{background-image:none}}@media (min-width:768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}}.navbar-form{padding:10px 15px;margin-top:8px;margin-right:-15px;margin-bottom:8px;margin-left:-15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1)}@media (min-width:768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.navbar-form .form-control-static{display:inline-block}.navbar-form .input-group{display:inline-table;vertical-align:middle}.navbar-form .input-group .form-control,.navbar-form .input-group .input-group-addon,.navbar-form .input-group .input-group-btn{width:auto}.navbar-form .input-group>.form-control{width:100%}.navbar-form .control-label{margin-bottom:0;vertical-align:middle}.navbar-form .checkbox,.navbar-form .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.navbar-form .checkbox label,.navbar-form .radio label{padding-left:0}.navbar-form .checkbox input[type=checkbox],.navbar-form .radio input[type=radio]{position:relative;margin-left:0}.navbar-form .has-feedback .form-control-feedback{top:0}}@media (max-width:767px){.navbar-form .form-group{margin-bottom:5px}.navbar-form .form-group:last-child{margin-bottom:0}}@media (min-width:768px){.navbar-form{width:auto;padding-top:0;padding-bottom:0;margin-right:0;margin-left:0;border:0;-webkit-box-shadow:none;box-shadow:none}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-left-radius:0;border-top-right-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{margin-bottom:0;border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-btn{margin-top:8px;margin-bottom:8px}.navbar-btn.btn-sm{margin-top:10px;margin-bottom:10px}.navbar-btn.btn-xs{margin-top:14px;margin-bottom:14px}.navbar-text{margin-top:15px;margin-bottom:15px}@media (min-width:768px){.navbar-text{float:left;margin-right:15px;margin-left:15px}}@media (min-width:768px){.navbar-left{float:left!important}.navbar-right{float:right!important;margin-right:-15px}.navbar-right~.navbar-right{margin-right:0}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:focus,.navbar-default .navbar-brand:hover{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a{color:#777}.navbar-default .navbar-nav>li>a:focus,.navbar-default .navbar-nav>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:focus,.navbar-default .navbar-nav>.active>a:hover{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:focus,.navbar-default .navbar-nav>.disabled>a:hover{color:#ccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:focus,.navbar-default .navbar-toggle:hover{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#888}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e7e7e7}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:focus,.navbar-default .navbar-nav>.open>a:hover{color:#555;background-color:#e7e7e7}@media (max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#ccc;background-color:transparent}}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-default .btn-link{color:#777}.navbar-default .btn-link:focus,.navbar-default .btn-link:hover{color:#333}.navbar-default .btn-link[disabled]:focus,.navbar-default .btn-link[disabled]:hover,fieldset[disabled] .navbar-default .btn-link:focus,fieldset[disabled] .navbar-default .btn-link:hover{color:#ccc}.navbar-inverse{background-color:#222;border-color:#080808}.navbar-inverse .navbar-brand{color:#9d9d9d}.navbar-inverse .navbar-brand:focus,.navbar-inverse .navbar-brand:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-text{color:#9d9d9d}.navbar-inverse .navbar-nav>li>a{color:#9d9d9d}.navbar-inverse .navbar-nav>li>a:focus,.navbar-inverse .navbar-nav>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:focus,.navbar-inverse .navbar-nav>.active>a:hover{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:focus,.navbar-inverse .navbar-nav>.disabled>a:hover{color:#444;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:focus,.navbar-inverse .navbar-toggle:hover{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#101010}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:focus,.navbar-inverse .navbar-nav>.open>a:hover{color:#fff;background-color:#080808}@media (max-width:767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#9d9d9d}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#444;background-color:transparent}}.navbar-inverse .navbar-link{color:#9d9d9d}.navbar-inverse .navbar-link:hover{color:#fff}.navbar-inverse .btn-link{color:#9d9d9d}.navbar-inverse .btn-link:focus,.navbar-inverse .btn-link:hover{color:#fff}.navbar-inverse .btn-link[disabled]:focus,.navbar-inverse .btn-link[disabled]:hover,fieldset[disabled] .navbar-inverse .btn-link:focus,fieldset[disabled] .navbar-inverse .btn-link:hover{color:#444}.breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{padding:0 5px;color:#ccc;content:"/\00a0"}.breadcrumb>.active{color:#777}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;margin-left:-1px;line-height:1.42857143;color:#337ab7;text-decoration:none;background-color:#fff;border:1px solid #ddd}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-top-left-radius:4px;border-bottom-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-top-right-radius:4px;border-bottom-right-radius:4px}.pagination>li>a:focus,.pagination>li>a:hover,.pagination>li>span:focus,.pagination>li>span:hover{z-index:2;color:#23527c;background-color:#eee;border-color:#ddd}.pagination>.active>a,.pagination>.active>a:focus,.pagination>.active>a:hover,.pagination>.active>span,.pagination>.active>span:focus,.pagination>.active>span:hover{z-index:3;color:#fff;cursor:default;background-color:#337ab7;border-color:#337ab7}.pagination>.disabled>a,.pagination>.disabled>a:focus,.pagination>.disabled>a:hover,.pagination>.disabled>span,.pagination>.disabled>span:focus,.pagination>.disabled>span:hover{color:#777;cursor:not-allowed;background-color:#fff;border-color:#ddd}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:18px;line-height:1.3333333}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-top-left-radius:6px;border-bottom-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-top-right-radius:6px;border-bottom-right-radius:6px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px;line-height:1.5}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-top-left-radius:3px;border-bottom-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-top-right-radius:3px;border-bottom-right-radius:3px}.pager{padding-left:0;margin:20px 0;text-align:center;list-style:none}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.pager li>a:focus,.pager li>a:hover{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:focus,.pager .disabled>a:hover,.pager .disabled>span{color:#777;cursor:not-allowed;background-color:#fff}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}a.label:focus,a.label:hover{color:#fff;text-decoration:none;cursor:pointer}.label:empty{display:none}.btn .label{position:relative;top:-1px}.label-default{background-color:#777}.label-default[href]:focus,.label-default[href]:hover{background-color:#5e5e5e}.label-primary{background-color:#337ab7}.label-primary[href]:focus,.label-primary[href]:hover{background-color:#286090}.label-success{background-color:#5cb85c}.label-success[href]:focus,.label-success[href]:hover{background-color:#449d44}.label-info{background-color:#5bc0de}.label-info[href]:focus,.label-info[href]:hover{background-color:#31b0d5}.label-warning{background-color:#f0ad4e}.label-warning[href]:focus,.label-warning[href]:hover{background-color:#ec971f}.label-danger{background-color:#d9534f}.label-danger[href]:focus,.label-danger[href]:hover{background-color:#c9302c}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:middle;background-color:#777;border-radius:10px}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.btn-group-xs>.btn .badge,.btn-xs .badge{top:0;padding:1px 5px}a.badge:focus,a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#337ab7;background-color:#fff}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}.nav-pills>li>a>.badge{margin-left:3px}.jumbotron{padding-top:30px;padding-bottom:30px;margin-bottom:30px;color:inherit;background-color:#eee}.jumbotron .h1,.jumbotron h1{color:inherit}.jumbotron p{margin-bottom:15px;font-size:21px;font-weight:200}.jumbotron>hr{border-top-color:#d5d5d5}.container .jumbotron,.container-fluid .jumbotron{padding-right:15px;padding-left:15px;border-radius:6px}.jumbotron .container{max-width:100%}@media screen and (min-width:768px){.jumbotron{padding-top:48px;padding-bottom:48px}.container .jumbotron,.container-fluid .jumbotron{padding-right:60px;padding-left:60px}.jumbotron .h1,.jumbotron h1{font-size:63px}}.thumbnail{display:block;padding:4px;margin-bottom:20px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:border .2s ease-in-out;-o-transition:border .2s ease-in-out;transition:border .2s ease-in-out}.thumbnail a>img,.thumbnail>img{margin-right:auto;margin-left:auto}a.thumbnail.active,a.thumbnail:focus,a.thumbnail:hover{border-color:#337ab7}.thumbnail .caption{padding:9px;color:#333}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4{margin-top:0;color:inherit}.alert .alert-link{font-weight:700}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable,.alert-dismissible{padding-right:35px}.alert-dismissable .close,.alert-dismissible .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#2b542c}.alert-info{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#245269}.alert-warning{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.alert-warning hr{border-top-color:#f7e1b5}.alert-warning .alert-link{color:#66512c}.alert-danger{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.alert-danger hr{border-top-color:#e4b9c0}.alert-danger .alert-link{color:#843534}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.progress-bar{float:left;width:0;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;background-color:#337ab7;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-webkit-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.progress-bar-striped,.progress-striped .progress-bar{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);-webkit-background-size:40px 40px;background-size:40px 40px}.progress-bar.active,.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#5cb85c}.progress-striped .progress-bar-success{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-info{background-color:#5bc0de}.progress-striped .progress-bar-info{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-warning{background-color:#f0ad4e}.progress-striped .progress-bar-warning{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-danger{background-color:#d9534f}.progress-striped .progress-bar-danger{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.media{margin-top:15px}.media:first-child{margin-top:0}.media,.media-body{overflow:hidden;zoom:1}.media-body{width:10000px}.media-object{display:block}.media-object.img-thumbnail{max-width:none}.media-right,.media>.pull-right{padding-left:10px}.media-left,.media>.pull-left{padding-right:10px}.media-body,.media-left,.media-right{display:table-cell;vertical-align:top}.media-middle{vertical-align:middle}.media-bottom{vertical-align:bottom}.media-heading{margin-top:0;margin-bottom:5px}.media-list{padding-left:0;list-style:none}.list-group{padding-left:0;margin-bottom:20px}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.list-group-item:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}a.list-group-item,button.list-group-item{color:#555}a.list-group-item .list-group-item-heading,button.list-group-item .list-group-item-heading{color:#333}a.list-group-item:focus,a.list-group-item:hover,button.list-group-item:focus,button.list-group-item:hover{color:#555;text-decoration:none;background-color:#f5f5f5}button.list-group-item{width:100%;text-align:left}.list-group-item.disabled,.list-group-item.disabled:focus,.list-group-item.disabled:hover{color:#777;cursor:not-allowed;background-color:#eee}.list-group-item.disabled .list-group-item-heading,.list-group-item.disabled:focus .list-group-item-heading,.list-group-item.disabled:hover .list-group-item-heading{color:inherit}.list-group-item.disabled .list-group-item-text,.list-group-item.disabled:focus .list-group-item-text,.list-group-item.disabled:hover .list-group-item-text{color:#777}.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover{z-index:2;color:#fff;background-color:#337ab7;border-color:#337ab7}.list-group-item.active .list-group-item-heading,.list-group-item.active .list-group-item-heading>.small,.list-group-item.active .list-group-item-heading>small,.list-group-item.active:focus .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading>.small,.list-group-item.active:focus .list-group-item-heading>small,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading>.small,.list-group-item.active:hover .list-group-item-heading>small{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:focus .list-group-item-text,.list-group-item.active:hover .list-group-item-text{color:#c7ddef}.list-group-item-success{color:#3c763d;background-color:#dff0d8}a.list-group-item-success,button.list-group-item-success{color:#3c763d}a.list-group-item-success .list-group-item-heading,button.list-group-item-success .list-group-item-heading{color:inherit}a.list-group-item-success:focus,a.list-group-item-success:hover,button.list-group-item-success:focus,button.list-group-item-success:hover{color:#3c763d;background-color:#d0e9c6}a.list-group-item-success.active,a.list-group-item-success.active:focus,a.list-group-item-success.active:hover,button.list-group-item-success.active,button.list-group-item-success.active:focus,button.list-group-item-success.active:hover{color:#fff;background-color:#3c763d;border-color:#3c763d}.list-group-item-info{color:#31708f;background-color:#d9edf7}a.list-group-item-info,button.list-group-item-info{color:#31708f}a.list-group-item-info .list-group-item-heading,button.list-group-item-info .list-group-item-heading{color:inherit}a.list-group-item-info:focus,a.list-group-item-info:hover,button.list-group-item-info:focus,button.list-group-item-info:hover{color:#31708f;background-color:#c4e3f3}a.list-group-item-info.active,a.list-group-item-info.active:focus,a.list-group-item-info.active:hover,button.list-group-item-info.active,button.list-group-item-info.active:focus,button.list-group-item-info.active:hover{color:#fff;background-color:#31708f;border-color:#31708f}.list-group-item-warning{color:#8a6d3b;background-color:#fcf8e3}a.list-group-item-warning,button.list-group-item-warning{color:#8a6d3b}a.list-group-item-warning .list-group-item-heading,button.list-group-item-warning .list-group-item-heading{color:inherit}a.list-group-item-warning:focus,a.list-group-item-warning:hover,button.list-group-item-warning:focus,button.list-group-item-warning:hover{color:#8a6d3b;background-color:#faf2cc}a.list-group-item-warning.active,a.list-group-item-warning.active:focus,a.list-group-item-warning.active:hover,button.list-group-item-warning.active,button.list-group-item-warning.active:focus,button.list-group-item-warning.active:hover{color:#fff;background-color:#8a6d3b;border-color:#8a6d3b}.list-group-item-danger{color:#a94442;background-color:#f2dede}a.list-group-item-danger,button.list-group-item-danger{color:#a94442}a.list-group-item-danger .list-group-item-heading,button.list-group-item-danger .list-group-item-heading{color:inherit}a.list-group-item-danger:focus,a.list-group-item-danger:hover,button.list-group-item-danger:focus,button.list-group-item-danger:hover{color:#a94442;background-color:#ebcccc}a.list-group-item-danger.active,a.list-group-item-danger.active:focus,a.list-group-item-danger.active:hover,button.list-group-item-danger.active,button.list-group-item-danger.active:focus,button.list-group-item-danger.active:hover{color:#fff;background-color:#a94442;border-color:#a94442}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.05);box-shadow:0 1px 1px rgba(0,0,0,.05)}.panel-body{padding:15px}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-left-radius:3px;border-top-right-radius:3px}.panel-heading>.dropdown .dropdown-toggle{color:inherit}.panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.panel-title>.small,.panel-title>.small>a,.panel-title>a,.panel-title>small,.panel-title>small>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.list-group,.panel>.panel-collapse>.list-group{margin-bottom:0}.panel>.list-group .list-group-item,.panel>.panel-collapse>.list-group .list-group-item{border-width:1px 0;border-radius:0}.panel>.list-group:first-child .list-group-item:first-child,.panel>.panel-collapse>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-left-radius:3px;border-top-right-radius:3px}.panel>.list-group:last-child .list-group-item:last-child,.panel>.panel-collapse>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.panel-heading+.panel-collapse>.list-group .list-group-item:first-child{border-top-left-radius:0;border-top-right-radius:0}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.list-group+.panel-footer{border-top-width:0}.panel>.panel-collapse>.table,.panel>.table,.panel>.table-responsive>.table{margin-bottom:0}.panel>.panel-collapse>.table caption,.panel>.table caption,.panel>.table-responsive>.table caption{padding-right:15px;padding-left:15px}.panel>.table-responsive:first-child>.table:first-child,.panel>.table:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child,.panel>.table:first-child>thead:first-child>tr:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table:first-child>thead:first-child>tr:first-child th:first-child{border-top-left-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table:first-child>thead:first-child>tr:first-child th:last-child{border-top-right-radius:3px}.panel>.table-responsive:last-child>.table:last-child,.panel>.table:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:3px}.panel>.panel-body+.table,.panel>.panel-body+.table-responsive,.panel>.table+.panel-body,.panel>.table-responsive+.panel-body{border-top:1px solid #ddd}.panel>.table>tbody:first-child>tr:first-child td,.panel>.table>tbody:first-child>tr:first-child th{border-top:0}.panel>.table-bordered,.panel>.table-responsive>.table-bordered{border:0}.panel>.table-bordered>tbody>tr>td:first-child,.panel>.table-bordered>tbody>tr>th:first-child,.panel>.table-bordered>tfoot>tr>td:first-child,.panel>.table-bordered>tfoot>tr>th:first-child,.panel>.table-bordered>thead>tr>td:first-child,.panel>.table-bordered>thead>tr>th:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel>.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.panel>.table-bordered>tbody>tr>td:last-child,.panel>.table-bordered>tbody>tr>th:last-child,.panel>.table-bordered>tfoot>tr>td:last-child,.panel>.table-bordered>tfoot>tr>th:last-child,.panel>.table-bordered>thead>tr>td:last-child,.panel>.table-bordered>thead>tr>th:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel>.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.panel>.table-bordered>tbody>tr:first-child>td,.panel>.table-bordered>tbody>tr:first-child>th,.panel>.table-bordered>thead>tr:first-child>td,.panel>.table-bordered>thead>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>th,.panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel>.table-responsive>.table-bordered>thead>tr:first-child>th{border-bottom:0}.panel>.table-bordered>tbody>tr:last-child>td,.panel>.table-bordered>tbody>tr:last-child>th,.panel>.table-bordered>tfoot>tr:last-child>td,.panel>.table-bordered>tfoot>tr:last-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}.panel>.table-responsive{margin-bottom:0;border:0}.panel-group{margin-bottom:20px}.panel-group .panel{margin-bottom:0;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse>.list-group,.panel-group .panel-heading+.panel-collapse>.panel-body{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ddd}.panel-default>.panel-heading .badge{color:#f5f5f5;background-color:#333}.panel-default>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#337ab7}.panel-primary>.panel-heading{color:#fff;background-color:#337ab7;border-color:#337ab7}.panel-primary>.panel-heading+.panel-collapse>.panel-body{border-top-color:#337ab7}.panel-primary>.panel-heading .badge{color:#337ab7;background-color:#fff}.panel-primary>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#337ab7}.panel-success{border-color:#d6e9c6}.panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.panel-success>.panel-heading+.panel-collapse>.panel-body{border-top-color:#d6e9c6}.panel-success>.panel-heading .badge{color:#dff0d8;background-color:#3c763d}.panel-success>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#d6e9c6}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse>.panel-body{border-top-color:#bce8f1}.panel-info>.panel-heading .badge{color:#d9edf7;background-color:#31708f}.panel-info>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#bce8f1}.panel-warning{border-color:#faebcc}.panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.panel-warning>.panel-heading+.panel-collapse>.panel-body{border-top-color:#faebcc}.panel-warning>.panel-heading .badge{color:#fcf8e3;background-color:#8a6d3b}.panel-warning>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#faebcc}.panel-danger{border-color:#ebccd1}.panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.panel-danger>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ebccd1}.panel-danger>.panel-heading .badge{color:#f2dede;background-color:#a94442}.panel-danger>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ebccd1}.embed-responsive{position:relative;display:block;height:0;padding:0;overflow:hidden}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-16by9{padding-bottom:56.25%}.embed-responsive-4by3{padding-bottom:75%}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);box-shadow:inset 0 1px 1px rgba(0,0,0,.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{float:right;font-size:21px;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;filter:alpha(opacity=20);opacity:.2}.close:focus,.close:hover{color:#000;text-decoration:none;cursor:pointer;filter:alpha(opacity=50);opacity:.5}button.close{-webkit-appearance:none;padding:0;cursor:pointer;background:0 0;border:0}.modal-open{overflow:hidden}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;display:none;overflow:hidden;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transition:-webkit-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out;-webkit-transform:translate(0,-25%);-ms-transform:translate(0,-25%);-o-transform:translate(0,-25%);transform:translate(0,-25%)}.modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);-o-transform:translate(0,0);transform:translate(0,0)}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-dialog{position:relative;width:auto;margin:10px}.modal-content{position:relative;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #999;border:1px solid rgba(0,0,0,.2);border-radius:6px;outline:0;-webkit-box-shadow:0 3px 9px rgba(0,0,0,.5);box-shadow:0 3px 9px rgba(0,0,0,.5)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{filter:alpha(opacity=0);opacity:0}.modal-backdrop.in{filter:alpha(opacity=50);opacity:.5}.modal-header{padding:15px;border-bottom:1px solid #e5e5e5}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.42857143}.modal-body{position:relative;padding:15px}.modal-footer{padding:15px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,.5);box-shadow:0 5px 15px rgba(0,0,0,.5)}.modal-sm{width:300px}}@media (min-width:992px){.modal-lg{width:900px}}.tooltip{position:absolute;z-index:1070;display:block;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:12px;font-style:normal;font-weight:400;line-height:1.42857143;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;filter:alpha(opacity=0);opacity:0;line-break:auto}.tooltip.in{filter:alpha(opacity=90);opacity:.9}.tooltip.top{padding:5px 0;margin-top:-3px}.tooltip.right{padding:0 5px;margin-left:3px}.tooltip.bottom{padding:5px 0;margin-top:3px}.tooltip.left{padding:0 5px;margin-left:-3px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#000}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#000}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.popover{position:absolute;top:0;left:0;z-index:1060;display:none;max-width:276px;padding:1px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;font-style:normal;font-weight:400;line-height:1.42857143;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);line-break:auto}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{padding:8px 14px;margin:0;font-size:14px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover>.arrow,.popover>.arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover>.arrow{border-width:11px}.popover>.arrow:after{content:"";border-width:10px}.popover.top>.arrow{bottom:-11px;left:50%;margin-left:-11px;border-top-color:#999;border-top-color:rgba(0,0,0,.25);border-bottom-width:0}.popover.top>.arrow:after{bottom:1px;margin-left:-10px;content:" ";border-top-color:#fff;border-bottom-width:0}.popover.right>.arrow{top:50%;left:-11px;margin-top:-11px;border-right-color:#999;border-right-color:rgba(0,0,0,.25);border-left-width:0}.popover.right>.arrow:after{bottom:-10px;left:1px;content:" ";border-right-color:#fff;border-left-width:0}.popover.bottom>.arrow{top:-11px;left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25)}.popover.bottom>.arrow:after{top:1px;margin-left:-10px;content:" ";border-top-width:0;border-bottom-color:#fff}.popover.left>.arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,.25)}.popover.left>.arrow:after{right:1px;bottom:-10px;content:" ";border-right-width:0;border-left-color:#fff}.carousel{position:relative}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner>.item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;-o-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>a>img,.carousel-inner>.item>img{line-height:1}@media all and (transform-3d),(-webkit-transform-3d){.carousel-inner>.item{-webkit-transition:-webkit-transform .6s ease-in-out;-o-transition:-o-transform .6s ease-in-out;transition:transform .6s ease-in-out;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000px;perspective:1000px}.carousel-inner>.item.active.right,.carousel-inner>.item.next{left:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}.carousel-inner>.item.active.left,.carousel-inner>.item.prev{left:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}.carousel-inner>.item.active,.carousel-inner>.item.next.left,.carousel-inner>.item.prev.right{left:0;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}.carousel-inner>.active{left:0}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.carousel-inner>.next{left:100%}.carousel-inner>.prev{left:-100%}.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}.carousel-inner>.active.left{left:-100%}.carousel-inner>.active.right{left:100%}.carousel-control{position:absolute;top:0;bottom:0;left:0;width:15%;font-size:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6);background-color:rgba(0,0,0,0);filter:alpha(opacity=50);opacity:.5}.carousel-control.left{background-image:-webkit-linear-gradient(left,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-image:-o-linear-gradient(left,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.5)),to(rgba(0,0,0,.0001)));background-image:linear-gradient(to right,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);background-repeat:repeat-x}.carousel-control.right{right:0;left:auto;background-image:-webkit-linear-gradient(left,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-image:-o-linear-gradient(left,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.0001)),to(rgba(0,0,0,.5)));background-image:linear-gradient(to right,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);background-repeat:repeat-x}.carousel-control:focus,.carousel-control:hover{color:#fff;text-decoration:none;filter:alpha(opacity=90);outline:0;opacity:.9}.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next,.carousel-control .icon-prev{position:absolute;top:50%;z-index:5;display:inline-block;margin-top:-10px}.carousel-control .glyphicon-chevron-left,.carousel-control .icon-prev{left:50%;margin-left:-10px}.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next{right:50%;margin-right:-10px}.carousel-control .icon-next,.carousel-control .icon-prev{width:20px;height:20px;font-family:serif;line-height:1}.carousel-control .icon-prev:before{content:'\2039'}.carousel-control .icon-next:before{content:'\203a'}.carousel-indicators{position:absolute;bottom:10px;left:50%;z-index:15;width:60%;padding-left:0;margin-left:-30%;text-align:center;list-style:none}.carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;cursor:pointer;background-color:#000\9;background-color:rgba(0,0,0,0);border:1px solid #fff;border-radius:10px}.carousel-indicators .active{width:12px;height:12px;margin:0;background-color:#fff}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6)}.carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next,.carousel-control .icon-prev{width:30px;height:30px;margin-top:-10px;font-size:30px}.carousel-control .glyphicon-chevron-left,.carousel-control .icon-prev{margin-left:-10px}.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next{margin-right:-10px}.carousel-caption{right:20%;left:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.btn-group-vertical>.btn-group:after,.btn-group-vertical>.btn-group:before,.btn-toolbar:after,.btn-toolbar:before,.clearfix:after,.clearfix:before,.container-fluid:after,.container-fluid:before,.container:after,.container:before,.dl-horizontal dd:after,.dl-horizontal dd:before,.form-horizontal .form-group:after,.form-horizontal .form-group:before,.modal-footer:after,.modal-footer:before,.modal-header:after,.modal-header:before,.nav:after,.nav:before,.navbar-collapse:after,.navbar-collapse:before,.navbar-header:after,.navbar-header:before,.navbar:after,.navbar:before,.pager:after,.pager:before,.panel-body:after,.panel-body:before,.row:after,.row:before{display:table;content:" "}.btn-group-vertical>.btn-group:after,.btn-toolbar:after,.clearfix:after,.container-fluid:after,.container:after,.dl-horizontal dd:after,.form-horizontal .form-group:after,.modal-footer:after,.modal-header:after,.nav:after,.navbar-collapse:after,.navbar-header:after,.navbar:after,.pager:after,.panel-body:after,.row:after{clear:both}.center-block{display:block;margin-right:auto;margin-left:auto}.pull-right{float:right!important}.pull-left{float:left!important}.hide{display:none!important}.show{display:block!important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.hidden{display:none!important}.affix{position:fixed}@-ms-viewport{width:device-width}.visible-lg,.visible-md,.visible-sm,.visible-xs{display:none!important}.visible-lg-block,.visible-lg-inline,.visible-lg-inline-block,.visible-md-block,.visible-md-inline,.visible-md-inline-block,.visible-sm-block,.visible-sm-inline,.visible-sm-inline-block,.visible-xs-block,.visible-xs-inline,.visible-xs-inline-block{display:none!important}@media (max-width:767px){.visible-xs{display:block!important}table.visible-xs{display:table!important}tr.visible-xs{display:table-row!important}td.visible-xs,th.visible-xs{display:table-cell!important}}@media (max-width:767px){.visible-xs-block{display:block!important}}@media (max-width:767px){.visible-xs-inline{display:inline!important}}@media (max-width:767px){.visible-xs-inline-block{display:inline-block!important}}@media (min-width:768px) and (max-width:991px){.visible-sm{display:block!important}table.visible-sm{display:table!important}tr.visible-sm{display:table-row!important}td.visible-sm,th.visible-sm{display:table-cell!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-block{display:block!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline{display:inline!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline-block{display:inline-block!important}}@media (min-width:992px) and (max-width:1199px){.visible-md{display:block!important}table.visible-md{display:table!important}tr.visible-md{display:table-row!important}td.visible-md,th.visible-md{display:table-cell!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-block{display:block!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline{display:inline!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline-block{display:inline-block!important}}@media (min-width:1200px){.visible-lg{display:block!important}table.visible-lg{display:table!important}tr.visible-lg{display:table-row!important}td.visible-lg,th.visible-lg{display:table-cell!important}}@media (min-width:1200px){.visible-lg-block{display:block!important}}@media (min-width:1200px){.visible-lg-inline{display:inline!important}}@media (min-width:1200px){.visible-lg-inline-block{display:inline-block!important}}@media (max-width:767px){.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.hidden-md{display:none!important}}@media (min-width:1200px){.hidden-lg{display:none!important}}.visible-print{display:none!important}@media print{.visible-print{display:block!important}table.visible-print{display:table!important}tr.visible-print{display:table-row!important}td.visible-print,th.visible-print{display:table-cell!important}}.visible-print-block{display:none!important}@media print{.visible-print-block{display:block!important}}.visible-print-inline{display:none!important}@media print{.visible-print-inline{display:inline!important}}.visible-print-inline-block{display:none!important}@media print{.visible-print-inline-block{display:inline-block!important}}@media print{.hidden-print{display:none!important}} +/*# sourceMappingURL=bootstrap.min.css.map */ \ No newline at end of file diff --git a/vraptor/src/main/webapp/vendor/bootstrap/fonts/glyphicons-halflings-regular.eot b/vraptor/src/main/webapp/vendor/bootstrap/fonts/glyphicons-halflings-regular.eot new file mode 100644 index 0000000000000000000000000000000000000000..b93a4953fff68df523aa7656497ee339d6026d64 GIT binary patch literal 20127 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/vraptor/src/main/webapp/vendor/bootstrap/fonts/glyphicons-halflings-regular.ttf b/vraptor/src/main/webapp/vendor/bootstrap/fonts/glyphicons-halflings-regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..1413fc609ab6f21774de0cb7e01360095584f65b GIT binary patch literal 45404 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 G`u_lkUM?>H literal 0 HcmV?d00001 diff --git a/vraptor/src/main/webapp/vendor/bootstrap/fonts/glyphicons-halflings-regular.woff2 b/vraptor/src/main/webapp/vendor/bootstrap/fonts/glyphicons-halflings-regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..64539b54c3751a6d9adb44c8e3a45ba5a73b77f0 GIT binary patch literal 18028 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 literal 0 HcmV?d00001 diff --git a/vraptor/src/main/webapp/vendor/bootstrap/js/bootstrap.js b/vraptor/src/main/webapp/vendor/bootstrap/js/bootstrap.js new file mode 100644 index 0000000000..8a2e99a535 --- /dev/null +++ b/vraptor/src/main/webapp/vendor/bootstrap/js/bootstrap.js @@ -0,0 +1,2377 @@ +/*! + * Bootstrap v3.3.7 (http://getbootstrap.com) + * Copyright 2011-2016 Twitter, Inc. + * Licensed under the MIT license + */ + +if (typeof jQuery === 'undefined') { + throw new Error('Bootstrap\'s JavaScript requires jQuery') +} + ++function ($) { + 'use strict'; + var version = $.fn.jquery.split(' ')[0].split('.') + if ((version[0] < 2 && version[1] < 9) || (version[0] == 1 && version[1] == 9 && version[2] < 1) || (version[0] > 3)) { + throw new Error('Bootstrap\'s JavaScript requires jQuery version 1.9.1 or higher, but lower than version 4') + } +}(jQuery); + +/* ======================================================================== + * Bootstrap: transition.js v3.3.7 + * http://getbootstrap.com/javascript/#transitions + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // CSS TRANSITION SUPPORT (Shoutout: http://www.modernizr.com/) + // ============================================================ + + function transitionEnd() { + var el = document.createElement('bootstrap') + + var transEndEventNames = { + WebkitTransition : 'webkitTransitionEnd', + MozTransition : 'transitionend', + OTransition : 'oTransitionEnd otransitionend', + transition : 'transitionend' + } + + for (var name in transEndEventNames) { + if (el.style[name] !== undefined) { + return { end: transEndEventNames[name] } + } + } + + return false // explicit for ie8 ( ._.) + } + + // http://blog.alexmaccaw.com/css-transitions + $.fn.emulateTransitionEnd = function (duration) { + var called = false + var $el = this + $(this).one('bsTransitionEnd', function () { called = true }) + var callback = function () { if (!called) $($el).trigger($.support.transition.end) } + setTimeout(callback, duration) + return this + } + + $(function () { + $.support.transition = transitionEnd() + + if (!$.support.transition) return + + $.event.special.bsTransitionEnd = { + bindType: $.support.transition.end, + delegateType: $.support.transition.end, + handle: function (e) { + if ($(e.target).is(this)) return e.handleObj.handler.apply(this, arguments) + } + } + }) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: alert.js v3.3.7 + * http://getbootstrap.com/javascript/#alerts + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // ALERT CLASS DEFINITION + // ====================== + + var dismiss = '[data-dismiss="alert"]' + var Alert = function (el) { + $(el).on('click', dismiss, this.close) + } + + Alert.VERSION = '3.3.7' + + Alert.TRANSITION_DURATION = 150 + + Alert.prototype.close = function (e) { + var $this = $(this) + var selector = $this.attr('data-target') + + if (!selector) { + selector = $this.attr('href') + selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7 + } + + var $parent = $(selector === '#' ? [] : selector) + + if (e) e.preventDefault() + + if (!$parent.length) { + $parent = $this.closest('.alert') + } + + $parent.trigger(e = $.Event('close.bs.alert')) + + if (e.isDefaultPrevented()) return + + $parent.removeClass('in') + + function removeElement() { + // detach from parent, fire event then clean up data + $parent.detach().trigger('closed.bs.alert').remove() + } + + $.support.transition && $parent.hasClass('fade') ? + $parent + .one('bsTransitionEnd', removeElement) + .emulateTransitionEnd(Alert.TRANSITION_DURATION) : + removeElement() + } + + + // ALERT PLUGIN DEFINITION + // ======================= + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.alert') + + if (!data) $this.data('bs.alert', (data = new Alert(this))) + if (typeof option == 'string') data[option].call($this) + }) + } + + var old = $.fn.alert + + $.fn.alert = Plugin + $.fn.alert.Constructor = Alert + + + // ALERT NO CONFLICT + // ================= + + $.fn.alert.noConflict = function () { + $.fn.alert = old + return this + } + + + // ALERT DATA-API + // ============== + + $(document).on('click.bs.alert.data-api', dismiss, Alert.prototype.close) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: button.js v3.3.7 + * http://getbootstrap.com/javascript/#buttons + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // BUTTON PUBLIC CLASS DEFINITION + // ============================== + + var Button = function (element, options) { + this.$element = $(element) + this.options = $.extend({}, Button.DEFAULTS, options) + this.isLoading = false + } + + Button.VERSION = '3.3.7' + + Button.DEFAULTS = { + loadingText: 'loading...' + } + + Button.prototype.setState = function (state) { + var d = 'disabled' + var $el = this.$element + var val = $el.is('input') ? 'val' : 'html' + var data = $el.data() + + state += 'Text' + + if (data.resetText == null) $el.data('resetText', $el[val]()) + + // push to event loop to allow forms to submit + setTimeout($.proxy(function () { + $el[val](data[state] == null ? this.options[state] : data[state]) + + if (state == 'loadingText') { + this.isLoading = true + $el.addClass(d).attr(d, d).prop(d, true) + } else if (this.isLoading) { + this.isLoading = false + $el.removeClass(d).removeAttr(d).prop(d, false) + } + }, this), 0) + } + + Button.prototype.toggle = function () { + var changed = true + var $parent = this.$element.closest('[data-toggle="buttons"]') + + if ($parent.length) { + var $input = this.$element.find('input') + if ($input.prop('type') == 'radio') { + if ($input.prop('checked')) changed = false + $parent.find('.active').removeClass('active') + this.$element.addClass('active') + } else if ($input.prop('type') == 'checkbox') { + if (($input.prop('checked')) !== this.$element.hasClass('active')) changed = false + this.$element.toggleClass('active') + } + $input.prop('checked', this.$element.hasClass('active')) + if (changed) $input.trigger('change') + } else { + this.$element.attr('aria-pressed', !this.$element.hasClass('active')) + this.$element.toggleClass('active') + } + } + + + // BUTTON PLUGIN DEFINITION + // ======================== + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.button') + var options = typeof option == 'object' && option + + if (!data) $this.data('bs.button', (data = new Button(this, options))) + + if (option == 'toggle') data.toggle() + else if (option) data.setState(option) + }) + } + + var old = $.fn.button + + $.fn.button = Plugin + $.fn.button.Constructor = Button + + + // BUTTON NO CONFLICT + // ================== + + $.fn.button.noConflict = function () { + $.fn.button = old + return this + } + + + // BUTTON DATA-API + // =============== + + $(document) + .on('click.bs.button.data-api', '[data-toggle^="button"]', function (e) { + var $btn = $(e.target).closest('.btn') + Plugin.call($btn, 'toggle') + if (!($(e.target).is('input[type="radio"], input[type="checkbox"]'))) { + // Prevent double click on radios, and the double selections (so cancellation) on checkboxes + e.preventDefault() + // The target component still receive the focus + if ($btn.is('input,button')) $btn.trigger('focus') + else $btn.find('input:visible,button:visible').first().trigger('focus') + } + }) + .on('focus.bs.button.data-api blur.bs.button.data-api', '[data-toggle^="button"]', function (e) { + $(e.target).closest('.btn').toggleClass('focus', /^focus(in)?$/.test(e.type)) + }) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: carousel.js v3.3.7 + * http://getbootstrap.com/javascript/#carousel + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // CAROUSEL CLASS DEFINITION + // ========================= + + var Carousel = function (element, options) { + this.$element = $(element) + this.$indicators = this.$element.find('.carousel-indicators') + this.options = options + this.paused = null + this.sliding = null + this.interval = null + this.$active = null + this.$items = null + + this.options.keyboard && this.$element.on('keydown.bs.carousel', $.proxy(this.keydown, this)) + + this.options.pause == 'hover' && !('ontouchstart' in document.documentElement) && this.$element + .on('mouseenter.bs.carousel', $.proxy(this.pause, this)) + .on('mouseleave.bs.carousel', $.proxy(this.cycle, this)) + } + + Carousel.VERSION = '3.3.7' + + Carousel.TRANSITION_DURATION = 600 + + Carousel.DEFAULTS = { + interval: 5000, + pause: 'hover', + wrap: true, + keyboard: true + } + + Carousel.prototype.keydown = function (e) { + if (/input|textarea/i.test(e.target.tagName)) return + switch (e.which) { + case 37: this.prev(); break + case 39: this.next(); break + default: return + } + + e.preventDefault() + } + + Carousel.prototype.cycle = function (e) { + e || (this.paused = false) + + this.interval && clearInterval(this.interval) + + this.options.interval + && !this.paused + && (this.interval = setInterval($.proxy(this.next, this), this.options.interval)) + + return this + } + + Carousel.prototype.getItemIndex = function (item) { + this.$items = item.parent().children('.item') + return this.$items.index(item || this.$active) + } + + Carousel.prototype.getItemForDirection = function (direction, active) { + var activeIndex = this.getItemIndex(active) + var willWrap = (direction == 'prev' && activeIndex === 0) + || (direction == 'next' && activeIndex == (this.$items.length - 1)) + if (willWrap && !this.options.wrap) return active + var delta = direction == 'prev' ? -1 : 1 + var itemIndex = (activeIndex + delta) % this.$items.length + return this.$items.eq(itemIndex) + } + + Carousel.prototype.to = function (pos) { + var that = this + var activeIndex = this.getItemIndex(this.$active = this.$element.find('.item.active')) + + if (pos > (this.$items.length - 1) || pos < 0) return + + if (this.sliding) return this.$element.one('slid.bs.carousel', function () { that.to(pos) }) // yes, "slid" + if (activeIndex == pos) return this.pause().cycle() + + return this.slide(pos > activeIndex ? 'next' : 'prev', this.$items.eq(pos)) + } + + Carousel.prototype.pause = function (e) { + e || (this.paused = true) + + if (this.$element.find('.next, .prev').length && $.support.transition) { + this.$element.trigger($.support.transition.end) + this.cycle(true) + } + + this.interval = clearInterval(this.interval) + + return this + } + + Carousel.prototype.next = function () { + if (this.sliding) return + return this.slide('next') + } + + Carousel.prototype.prev = function () { + if (this.sliding) return + return this.slide('prev') + } + + Carousel.prototype.slide = function (type, next) { + var $active = this.$element.find('.item.active') + var $next = next || this.getItemForDirection(type, $active) + var isCycling = this.interval + var direction = type == 'next' ? 'left' : 'right' + var that = this + + if ($next.hasClass('active')) return (this.sliding = false) + + var relatedTarget = $next[0] + var slideEvent = $.Event('slide.bs.carousel', { + relatedTarget: relatedTarget, + direction: direction + }) + this.$element.trigger(slideEvent) + if (slideEvent.isDefaultPrevented()) return + + this.sliding = true + + isCycling && this.pause() + + if (this.$indicators.length) { + this.$indicators.find('.active').removeClass('active') + var $nextIndicator = $(this.$indicators.children()[this.getItemIndex($next)]) + $nextIndicator && $nextIndicator.addClass('active') + } + + var slidEvent = $.Event('slid.bs.carousel', { relatedTarget: relatedTarget, direction: direction }) // yes, "slid" + if ($.support.transition && this.$element.hasClass('slide')) { + $next.addClass(type) + $next[0].offsetWidth // force reflow + $active.addClass(direction) + $next.addClass(direction) + $active + .one('bsTransitionEnd', function () { + $next.removeClass([type, direction].join(' ')).addClass('active') + $active.removeClass(['active', direction].join(' ')) + that.sliding = false + setTimeout(function () { + that.$element.trigger(slidEvent) + }, 0) + }) + .emulateTransitionEnd(Carousel.TRANSITION_DURATION) + } else { + $active.removeClass('active') + $next.addClass('active') + this.sliding = false + this.$element.trigger(slidEvent) + } + + isCycling && this.cycle() + + return this + } + + + // CAROUSEL PLUGIN DEFINITION + // ========================== + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.carousel') + var options = $.extend({}, Carousel.DEFAULTS, $this.data(), typeof option == 'object' && option) + var action = typeof option == 'string' ? option : options.slide + + if (!data) $this.data('bs.carousel', (data = new Carousel(this, options))) + if (typeof option == 'number') data.to(option) + else if (action) data[action]() + else if (options.interval) data.pause().cycle() + }) + } + + var old = $.fn.carousel + + $.fn.carousel = Plugin + $.fn.carousel.Constructor = Carousel + + + // CAROUSEL NO CONFLICT + // ==================== + + $.fn.carousel.noConflict = function () { + $.fn.carousel = old + return this + } + + + // CAROUSEL DATA-API + // ================= + + var clickHandler = function (e) { + var href + var $this = $(this) + var $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) // strip for ie7 + if (!$target.hasClass('carousel')) return + var options = $.extend({}, $target.data(), $this.data()) + var slideIndex = $this.attr('data-slide-to') + if (slideIndex) options.interval = false + + Plugin.call($target, options) + + if (slideIndex) { + $target.data('bs.carousel').to(slideIndex) + } + + e.preventDefault() + } + + $(document) + .on('click.bs.carousel.data-api', '[data-slide]', clickHandler) + .on('click.bs.carousel.data-api', '[data-slide-to]', clickHandler) + + $(window).on('load', function () { + $('[data-ride="carousel"]').each(function () { + var $carousel = $(this) + Plugin.call($carousel, $carousel.data()) + }) + }) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: collapse.js v3.3.7 + * http://getbootstrap.com/javascript/#collapse + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + +/* jshint latedef: false */ + ++function ($) { + 'use strict'; + + // COLLAPSE PUBLIC CLASS DEFINITION + // ================================ + + var Collapse = function (element, options) { + this.$element = $(element) + this.options = $.extend({}, Collapse.DEFAULTS, options) + this.$trigger = $('[data-toggle="collapse"][href="#' + element.id + '"],' + + '[data-toggle="collapse"][data-target="#' + element.id + '"]') + this.transitioning = null + + if (this.options.parent) { + this.$parent = this.getParent() + } else { + this.addAriaAndCollapsedClass(this.$element, this.$trigger) + } + + if (this.options.toggle) this.toggle() + } + + Collapse.VERSION = '3.3.7' + + Collapse.TRANSITION_DURATION = 350 + + Collapse.DEFAULTS = { + toggle: true + } + + Collapse.prototype.dimension = function () { + var hasWidth = this.$element.hasClass('width') + return hasWidth ? 'width' : 'height' + } + + Collapse.prototype.show = function () { + if (this.transitioning || this.$element.hasClass('in')) return + + var activesData + var actives = this.$parent && this.$parent.children('.panel').children('.in, .collapsing') + + if (actives && actives.length) { + activesData = actives.data('bs.collapse') + if (activesData && activesData.transitioning) return + } + + var startEvent = $.Event('show.bs.collapse') + this.$element.trigger(startEvent) + if (startEvent.isDefaultPrevented()) return + + if (actives && actives.length) { + Plugin.call(actives, 'hide') + activesData || actives.data('bs.collapse', null) + } + + var dimension = this.dimension() + + this.$element + .removeClass('collapse') + .addClass('collapsing')[dimension](0) + .attr('aria-expanded', true) + + this.$trigger + .removeClass('collapsed') + .attr('aria-expanded', true) + + this.transitioning = 1 + + var complete = function () { + this.$element + .removeClass('collapsing') + .addClass('collapse in')[dimension]('') + this.transitioning = 0 + this.$element + .trigger('shown.bs.collapse') + } + + if (!$.support.transition) return complete.call(this) + + var scrollSize = $.camelCase(['scroll', dimension].join('-')) + + this.$element + .one('bsTransitionEnd', $.proxy(complete, this)) + .emulateTransitionEnd(Collapse.TRANSITION_DURATION)[dimension](this.$element[0][scrollSize]) + } + + Collapse.prototype.hide = function () { + if (this.transitioning || !this.$element.hasClass('in')) return + + var startEvent = $.Event('hide.bs.collapse') + this.$element.trigger(startEvent) + if (startEvent.isDefaultPrevented()) return + + var dimension = this.dimension() + + this.$element[dimension](this.$element[dimension]())[0].offsetHeight + + this.$element + .addClass('collapsing') + .removeClass('collapse in') + .attr('aria-expanded', false) + + this.$trigger + .addClass('collapsed') + .attr('aria-expanded', false) + + this.transitioning = 1 + + var complete = function () { + this.transitioning = 0 + this.$element + .removeClass('collapsing') + .addClass('collapse') + .trigger('hidden.bs.collapse') + } + + if (!$.support.transition) return complete.call(this) + + this.$element + [dimension](0) + .one('bsTransitionEnd', $.proxy(complete, this)) + .emulateTransitionEnd(Collapse.TRANSITION_DURATION) + } + + Collapse.prototype.toggle = function () { + this[this.$element.hasClass('in') ? 'hide' : 'show']() + } + + Collapse.prototype.getParent = function () { + return $(this.options.parent) + .find('[data-toggle="collapse"][data-parent="' + this.options.parent + '"]') + .each($.proxy(function (i, element) { + var $element = $(element) + this.addAriaAndCollapsedClass(getTargetFromTrigger($element), $element) + }, this)) + .end() + } + + Collapse.prototype.addAriaAndCollapsedClass = function ($element, $trigger) { + var isOpen = $element.hasClass('in') + + $element.attr('aria-expanded', isOpen) + $trigger + .toggleClass('collapsed', !isOpen) + .attr('aria-expanded', isOpen) + } + + function getTargetFromTrigger($trigger) { + var href + var target = $trigger.attr('data-target') + || (href = $trigger.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') // strip for ie7 + + return $(target) + } + + + // COLLAPSE PLUGIN DEFINITION + // ========================== + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.collapse') + var options = $.extend({}, Collapse.DEFAULTS, $this.data(), typeof option == 'object' && option) + + if (!data && options.toggle && /show|hide/.test(option)) options.toggle = false + if (!data) $this.data('bs.collapse', (data = new Collapse(this, options))) + if (typeof option == 'string') data[option]() + }) + } + + var old = $.fn.collapse + + $.fn.collapse = Plugin + $.fn.collapse.Constructor = Collapse + + + // COLLAPSE NO CONFLICT + // ==================== + + $.fn.collapse.noConflict = function () { + $.fn.collapse = old + return this + } + + + // COLLAPSE DATA-API + // ================= + + $(document).on('click.bs.collapse.data-api', '[data-toggle="collapse"]', function (e) { + var $this = $(this) + + if (!$this.attr('data-target')) e.preventDefault() + + var $target = getTargetFromTrigger($this) + var data = $target.data('bs.collapse') + var option = data ? 'toggle' : $this.data() + + Plugin.call($target, option) + }) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: dropdown.js v3.3.7 + * http://getbootstrap.com/javascript/#dropdowns + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // DROPDOWN CLASS DEFINITION + // ========================= + + var backdrop = '.dropdown-backdrop' + var toggle = '[data-toggle="dropdown"]' + var Dropdown = function (element) { + $(element).on('click.bs.dropdown', this.toggle) + } + + Dropdown.VERSION = '3.3.7' + + function getParent($this) { + var selector = $this.attr('data-target') + + if (!selector) { + selector = $this.attr('href') + selector = selector && /#[A-Za-z]/.test(selector) && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7 + } + + var $parent = selector && $(selector) + + return $parent && $parent.length ? $parent : $this.parent() + } + + function clearMenus(e) { + if (e && e.which === 3) return + $(backdrop).remove() + $(toggle).each(function () { + var $this = $(this) + var $parent = getParent($this) + var relatedTarget = { relatedTarget: this } + + if (!$parent.hasClass('open')) return + + if (e && e.type == 'click' && /input|textarea/i.test(e.target.tagName) && $.contains($parent[0], e.target)) return + + $parent.trigger(e = $.Event('hide.bs.dropdown', relatedTarget)) + + if (e.isDefaultPrevented()) return + + $this.attr('aria-expanded', 'false') + $parent.removeClass('open').trigger($.Event('hidden.bs.dropdown', relatedTarget)) + }) + } + + Dropdown.prototype.toggle = function (e) { + var $this = $(this) + + if ($this.is('.disabled, :disabled')) return + + var $parent = getParent($this) + var isActive = $parent.hasClass('open') + + clearMenus() + + if (!isActive) { + if ('ontouchstart' in document.documentElement && !$parent.closest('.navbar-nav').length) { + // if mobile we use a backdrop because click events don't delegate + $(document.createElement('div')) + .addClass('dropdown-backdrop') + .insertAfter($(this)) + .on('click', clearMenus) + } + + var relatedTarget = { relatedTarget: this } + $parent.trigger(e = $.Event('show.bs.dropdown', relatedTarget)) + + if (e.isDefaultPrevented()) return + + $this + .trigger('focus') + .attr('aria-expanded', 'true') + + $parent + .toggleClass('open') + .trigger($.Event('shown.bs.dropdown', relatedTarget)) + } + + return false + } + + Dropdown.prototype.keydown = function (e) { + if (!/(38|40|27|32)/.test(e.which) || /input|textarea/i.test(e.target.tagName)) return + + var $this = $(this) + + e.preventDefault() + e.stopPropagation() + + if ($this.is('.disabled, :disabled')) return + + var $parent = getParent($this) + var isActive = $parent.hasClass('open') + + if (!isActive && e.which != 27 || isActive && e.which == 27) { + if (e.which == 27) $parent.find(toggle).trigger('focus') + return $this.trigger('click') + } + + var desc = ' li:not(.disabled):visible a' + var $items = $parent.find('.dropdown-menu' + desc) + + if (!$items.length) return + + var index = $items.index(e.target) + + if (e.which == 38 && index > 0) index-- // up + if (e.which == 40 && index < $items.length - 1) index++ // down + if (!~index) index = 0 + + $items.eq(index).trigger('focus') + } + + + // DROPDOWN PLUGIN DEFINITION + // ========================== + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.dropdown') + + if (!data) $this.data('bs.dropdown', (data = new Dropdown(this))) + if (typeof option == 'string') data[option].call($this) + }) + } + + var old = $.fn.dropdown + + $.fn.dropdown = Plugin + $.fn.dropdown.Constructor = Dropdown + + + // DROPDOWN NO CONFLICT + // ==================== + + $.fn.dropdown.noConflict = function () { + $.fn.dropdown = old + return this + } + + + // APPLY TO STANDARD DROPDOWN ELEMENTS + // =================================== + + $(document) + .on('click.bs.dropdown.data-api', clearMenus) + .on('click.bs.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() }) + .on('click.bs.dropdown.data-api', toggle, Dropdown.prototype.toggle) + .on('keydown.bs.dropdown.data-api', toggle, Dropdown.prototype.keydown) + .on('keydown.bs.dropdown.data-api', '.dropdown-menu', Dropdown.prototype.keydown) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: modal.js v3.3.7 + * http://getbootstrap.com/javascript/#modals + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // MODAL CLASS DEFINITION + // ====================== + + var Modal = function (element, options) { + this.options = options + this.$body = $(document.body) + this.$element = $(element) + this.$dialog = this.$element.find('.modal-dialog') + this.$backdrop = null + this.isShown = null + this.originalBodyPad = null + this.scrollbarWidth = 0 + this.ignoreBackdropClick = false + + if (this.options.remote) { + this.$element + .find('.modal-content') + .load(this.options.remote, $.proxy(function () { + this.$element.trigger('loaded.bs.modal') + }, this)) + } + } + + Modal.VERSION = '3.3.7' + + Modal.TRANSITION_DURATION = 300 + Modal.BACKDROP_TRANSITION_DURATION = 150 + + Modal.DEFAULTS = { + backdrop: true, + keyboard: true, + show: true + } + + Modal.prototype.toggle = function (_relatedTarget) { + return this.isShown ? this.hide() : this.show(_relatedTarget) + } + + Modal.prototype.show = function (_relatedTarget) { + var that = this + var e = $.Event('show.bs.modal', { relatedTarget: _relatedTarget }) + + this.$element.trigger(e) + + if (this.isShown || e.isDefaultPrevented()) return + + this.isShown = true + + this.checkScrollbar() + this.setScrollbar() + this.$body.addClass('modal-open') + + this.escape() + this.resize() + + this.$element.on('click.dismiss.bs.modal', '[data-dismiss="modal"]', $.proxy(this.hide, this)) + + this.$dialog.on('mousedown.dismiss.bs.modal', function () { + that.$element.one('mouseup.dismiss.bs.modal', function (e) { + if ($(e.target).is(that.$element)) that.ignoreBackdropClick = true + }) + }) + + this.backdrop(function () { + var transition = $.support.transition && that.$element.hasClass('fade') + + if (!that.$element.parent().length) { + that.$element.appendTo(that.$body) // don't move modals dom position + } + + that.$element + .show() + .scrollTop(0) + + that.adjustDialog() + + if (transition) { + that.$element[0].offsetWidth // force reflow + } + + that.$element.addClass('in') + + that.enforceFocus() + + var e = $.Event('shown.bs.modal', { relatedTarget: _relatedTarget }) + + transition ? + that.$dialog // wait for modal to slide in + .one('bsTransitionEnd', function () { + that.$element.trigger('focus').trigger(e) + }) + .emulateTransitionEnd(Modal.TRANSITION_DURATION) : + that.$element.trigger('focus').trigger(e) + }) + } + + Modal.prototype.hide = function (e) { + if (e) e.preventDefault() + + e = $.Event('hide.bs.modal') + + this.$element.trigger(e) + + if (!this.isShown || e.isDefaultPrevented()) return + + this.isShown = false + + this.escape() + this.resize() + + $(document).off('focusin.bs.modal') + + this.$element + .removeClass('in') + .off('click.dismiss.bs.modal') + .off('mouseup.dismiss.bs.modal') + + this.$dialog.off('mousedown.dismiss.bs.modal') + + $.support.transition && this.$element.hasClass('fade') ? + this.$element + .one('bsTransitionEnd', $.proxy(this.hideModal, this)) + .emulateTransitionEnd(Modal.TRANSITION_DURATION) : + this.hideModal() + } + + Modal.prototype.enforceFocus = function () { + $(document) + .off('focusin.bs.modal') // guard against infinite focus loop + .on('focusin.bs.modal', $.proxy(function (e) { + if (document !== e.target && + this.$element[0] !== e.target && + !this.$element.has(e.target).length) { + this.$element.trigger('focus') + } + }, this)) + } + + Modal.prototype.escape = function () { + if (this.isShown && this.options.keyboard) { + this.$element.on('keydown.dismiss.bs.modal', $.proxy(function (e) { + e.which == 27 && this.hide() + }, this)) + } else if (!this.isShown) { + this.$element.off('keydown.dismiss.bs.modal') + } + } + + Modal.prototype.resize = function () { + if (this.isShown) { + $(window).on('resize.bs.modal', $.proxy(this.handleUpdate, this)) + } else { + $(window).off('resize.bs.modal') + } + } + + Modal.prototype.hideModal = function () { + var that = this + this.$element.hide() + this.backdrop(function () { + that.$body.removeClass('modal-open') + that.resetAdjustments() + that.resetScrollbar() + that.$element.trigger('hidden.bs.modal') + }) + } + + Modal.prototype.removeBackdrop = function () { + this.$backdrop && this.$backdrop.remove() + this.$backdrop = null + } + + Modal.prototype.backdrop = function (callback) { + var that = this + var animate = this.$element.hasClass('fade') ? 'fade' : '' + + if (this.isShown && this.options.backdrop) { + var doAnimate = $.support.transition && animate + + this.$backdrop = $(document.createElement('div')) + .addClass('modal-backdrop ' + animate) + .appendTo(this.$body) + + this.$element.on('click.dismiss.bs.modal', $.proxy(function (e) { + if (this.ignoreBackdropClick) { + this.ignoreBackdropClick = false + return + } + if (e.target !== e.currentTarget) return + this.options.backdrop == 'static' + ? this.$element[0].focus() + : this.hide() + }, this)) + + if (doAnimate) this.$backdrop[0].offsetWidth // force reflow + + this.$backdrop.addClass('in') + + if (!callback) return + + doAnimate ? + this.$backdrop + .one('bsTransitionEnd', callback) + .emulateTransitionEnd(Modal.BACKDROP_TRANSITION_DURATION) : + callback() + + } else if (!this.isShown && this.$backdrop) { + this.$backdrop.removeClass('in') + + var callbackRemove = function () { + that.removeBackdrop() + callback && callback() + } + $.support.transition && this.$element.hasClass('fade') ? + this.$backdrop + .one('bsTransitionEnd', callbackRemove) + .emulateTransitionEnd(Modal.BACKDROP_TRANSITION_DURATION) : + callbackRemove() + + } else if (callback) { + callback() + } + } + + // these following methods are used to handle overflowing modals + + Modal.prototype.handleUpdate = function () { + this.adjustDialog() + } + + Modal.prototype.adjustDialog = function () { + var modalIsOverflowing = this.$element[0].scrollHeight > document.documentElement.clientHeight + + this.$element.css({ + paddingLeft: !this.bodyIsOverflowing && modalIsOverflowing ? this.scrollbarWidth : '', + paddingRight: this.bodyIsOverflowing && !modalIsOverflowing ? this.scrollbarWidth : '' + }) + } + + Modal.prototype.resetAdjustments = function () { + this.$element.css({ + paddingLeft: '', + paddingRight: '' + }) + } + + Modal.prototype.checkScrollbar = function () { + var fullWindowWidth = window.innerWidth + if (!fullWindowWidth) { // workaround for missing window.innerWidth in IE8 + var documentElementRect = document.documentElement.getBoundingClientRect() + fullWindowWidth = documentElementRect.right - Math.abs(documentElementRect.left) + } + this.bodyIsOverflowing = document.body.clientWidth < fullWindowWidth + this.scrollbarWidth = this.measureScrollbar() + } + + Modal.prototype.setScrollbar = function () { + var bodyPad = parseInt((this.$body.css('padding-right') || 0), 10) + this.originalBodyPad = document.body.style.paddingRight || '' + if (this.bodyIsOverflowing) this.$body.css('padding-right', bodyPad + this.scrollbarWidth) + } + + Modal.prototype.resetScrollbar = function () { + this.$body.css('padding-right', this.originalBodyPad) + } + + Modal.prototype.measureScrollbar = function () { // thx walsh + var scrollDiv = document.createElement('div') + scrollDiv.className = 'modal-scrollbar-measure' + this.$body.append(scrollDiv) + var scrollbarWidth = scrollDiv.offsetWidth - scrollDiv.clientWidth + this.$body[0].removeChild(scrollDiv) + return scrollbarWidth + } + + + // MODAL PLUGIN DEFINITION + // ======================= + + function Plugin(option, _relatedTarget) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.modal') + var options = $.extend({}, Modal.DEFAULTS, $this.data(), typeof option == 'object' && option) + + if (!data) $this.data('bs.modal', (data = new Modal(this, options))) + if (typeof option == 'string') data[option](_relatedTarget) + else if (options.show) data.show(_relatedTarget) + }) + } + + var old = $.fn.modal + + $.fn.modal = Plugin + $.fn.modal.Constructor = Modal + + + // MODAL NO CONFLICT + // ================= + + $.fn.modal.noConflict = function () { + $.fn.modal = old + return this + } + + + // MODAL DATA-API + // ============== + + $(document).on('click.bs.modal.data-api', '[data-toggle="modal"]', function (e) { + var $this = $(this) + var href = $this.attr('href') + var $target = $($this.attr('data-target') || (href && href.replace(/.*(?=#[^\s]+$)/, ''))) // strip for ie7 + var option = $target.data('bs.modal') ? 'toggle' : $.extend({ remote: !/#/.test(href) && href }, $target.data(), $this.data()) + + if ($this.is('a')) e.preventDefault() + + $target.one('show.bs.modal', function (showEvent) { + if (showEvent.isDefaultPrevented()) return // only register focus restorer if modal will actually get shown + $target.one('hidden.bs.modal', function () { + $this.is(':visible') && $this.trigger('focus') + }) + }) + Plugin.call($target, option, this) + }) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: tooltip.js v3.3.7 + * http://getbootstrap.com/javascript/#tooltip + * Inspired by the original jQuery.tipsy by Jason Frame + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // TOOLTIP PUBLIC CLASS DEFINITION + // =============================== + + var Tooltip = function (element, options) { + this.type = null + this.options = null + this.enabled = null + this.timeout = null + this.hoverState = null + this.$element = null + this.inState = null + + this.init('tooltip', element, options) + } + + Tooltip.VERSION = '3.3.7' + + Tooltip.TRANSITION_DURATION = 150 + + Tooltip.DEFAULTS = { + animation: true, + placement: 'top', + selector: false, + template: '', + trigger: 'hover focus', + title: '', + delay: 0, + html: false, + container: false, + viewport: { + selector: 'body', + padding: 0 + } + } + + Tooltip.prototype.init = function (type, element, options) { + this.enabled = true + this.type = type + this.$element = $(element) + this.options = this.getOptions(options) + this.$viewport = this.options.viewport && $($.isFunction(this.options.viewport) ? this.options.viewport.call(this, this.$element) : (this.options.viewport.selector || this.options.viewport)) + this.inState = { click: false, hover: false, focus: false } + + if (this.$element[0] instanceof document.constructor && !this.options.selector) { + throw new Error('`selector` option must be specified when initializing ' + this.type + ' on the window.document object!') + } + + var triggers = this.options.trigger.split(' ') + + for (var i = triggers.length; i--;) { + var trigger = triggers[i] + + if (trigger == 'click') { + this.$element.on('click.' + this.type, this.options.selector, $.proxy(this.toggle, this)) + } else if (trigger != 'manual') { + var eventIn = trigger == 'hover' ? 'mouseenter' : 'focusin' + var eventOut = trigger == 'hover' ? 'mouseleave' : 'focusout' + + this.$element.on(eventIn + '.' + this.type, this.options.selector, $.proxy(this.enter, this)) + this.$element.on(eventOut + '.' + this.type, this.options.selector, $.proxy(this.leave, this)) + } + } + + this.options.selector ? + (this._options = $.extend({}, this.options, { trigger: 'manual', selector: '' })) : + this.fixTitle() + } + + Tooltip.prototype.getDefaults = function () { + return Tooltip.DEFAULTS + } + + Tooltip.prototype.getOptions = function (options) { + options = $.extend({}, this.getDefaults(), this.$element.data(), options) + + if (options.delay && typeof options.delay == 'number') { + options.delay = { + show: options.delay, + hide: options.delay + } + } + + return options + } + + Tooltip.prototype.getDelegateOptions = function () { + var options = {} + var defaults = this.getDefaults() + + this._options && $.each(this._options, function (key, value) { + if (defaults[key] != value) options[key] = value + }) + + return options + } + + Tooltip.prototype.enter = function (obj) { + var self = obj instanceof this.constructor ? + obj : $(obj.currentTarget).data('bs.' + this.type) + + if (!self) { + self = new this.constructor(obj.currentTarget, this.getDelegateOptions()) + $(obj.currentTarget).data('bs.' + this.type, self) + } + + if (obj instanceof $.Event) { + self.inState[obj.type == 'focusin' ? 'focus' : 'hover'] = true + } + + if (self.tip().hasClass('in') || self.hoverState == 'in') { + self.hoverState = 'in' + return + } + + clearTimeout(self.timeout) + + self.hoverState = 'in' + + if (!self.options.delay || !self.options.delay.show) return self.show() + + self.timeout = setTimeout(function () { + if (self.hoverState == 'in') self.show() + }, self.options.delay.show) + } + + Tooltip.prototype.isInStateTrue = function () { + for (var key in this.inState) { + if (this.inState[key]) return true + } + + return false + } + + Tooltip.prototype.leave = function (obj) { + var self = obj instanceof this.constructor ? + obj : $(obj.currentTarget).data('bs.' + this.type) + + if (!self) { + self = new this.constructor(obj.currentTarget, this.getDelegateOptions()) + $(obj.currentTarget).data('bs.' + this.type, self) + } + + if (obj instanceof $.Event) { + self.inState[obj.type == 'focusout' ? 'focus' : 'hover'] = false + } + + if (self.isInStateTrue()) return + + clearTimeout(self.timeout) + + self.hoverState = 'out' + + if (!self.options.delay || !self.options.delay.hide) return self.hide() + + self.timeout = setTimeout(function () { + if (self.hoverState == 'out') self.hide() + }, self.options.delay.hide) + } + + Tooltip.prototype.show = function () { + var e = $.Event('show.bs.' + this.type) + + if (this.hasContent() && this.enabled) { + this.$element.trigger(e) + + var inDom = $.contains(this.$element[0].ownerDocument.documentElement, this.$element[0]) + if (e.isDefaultPrevented() || !inDom) return + var that = this + + var $tip = this.tip() + + var tipId = this.getUID(this.type) + + this.setContent() + $tip.attr('id', tipId) + this.$element.attr('aria-describedby', tipId) + + if (this.options.animation) $tip.addClass('fade') + + var placement = typeof this.options.placement == 'function' ? + this.options.placement.call(this, $tip[0], this.$element[0]) : + this.options.placement + + var autoToken = /\s?auto?\s?/i + var autoPlace = autoToken.test(placement) + if (autoPlace) placement = placement.replace(autoToken, '') || 'top' + + $tip + .detach() + .css({ top: 0, left: 0, display: 'block' }) + .addClass(placement) + .data('bs.' + this.type, this) + + this.options.container ? $tip.appendTo(this.options.container) : $tip.insertAfter(this.$element) + this.$element.trigger('inserted.bs.' + this.type) + + var pos = this.getPosition() + var actualWidth = $tip[0].offsetWidth + var actualHeight = $tip[0].offsetHeight + + if (autoPlace) { + var orgPlacement = placement + var viewportDim = this.getPosition(this.$viewport) + + placement = placement == 'bottom' && pos.bottom + actualHeight > viewportDim.bottom ? 'top' : + placement == 'top' && pos.top - actualHeight < viewportDim.top ? 'bottom' : + placement == 'right' && pos.right + actualWidth > viewportDim.width ? 'left' : + placement == 'left' && pos.left - actualWidth < viewportDim.left ? 'right' : + placement + + $tip + .removeClass(orgPlacement) + .addClass(placement) + } + + var calculatedOffset = this.getCalculatedOffset(placement, pos, actualWidth, actualHeight) + + this.applyPlacement(calculatedOffset, placement) + + var complete = function () { + var prevHoverState = that.hoverState + that.$element.trigger('shown.bs.' + that.type) + that.hoverState = null + + if (prevHoverState == 'out') that.leave(that) + } + + $.support.transition && this.$tip.hasClass('fade') ? + $tip + .one('bsTransitionEnd', complete) + .emulateTransitionEnd(Tooltip.TRANSITION_DURATION) : + complete() + } + } + + Tooltip.prototype.applyPlacement = function (offset, placement) { + var $tip = this.tip() + var width = $tip[0].offsetWidth + var height = $tip[0].offsetHeight + + // manually read margins because getBoundingClientRect includes difference + var marginTop = parseInt($tip.css('margin-top'), 10) + var marginLeft = parseInt($tip.css('margin-left'), 10) + + // we must check for NaN for ie 8/9 + if (isNaN(marginTop)) marginTop = 0 + if (isNaN(marginLeft)) marginLeft = 0 + + offset.top += marginTop + offset.left += marginLeft + + // $.fn.offset doesn't round pixel values + // so we use setOffset directly with our own function B-0 + $.offset.setOffset($tip[0], $.extend({ + using: function (props) { + $tip.css({ + top: Math.round(props.top), + left: Math.round(props.left) + }) + } + }, offset), 0) + + $tip.addClass('in') + + // check to see if placing tip in new offset caused the tip to resize itself + var actualWidth = $tip[0].offsetWidth + var actualHeight = $tip[0].offsetHeight + + if (placement == 'top' && actualHeight != height) { + offset.top = offset.top + height - actualHeight + } + + var delta = this.getViewportAdjustedDelta(placement, offset, actualWidth, actualHeight) + + if (delta.left) offset.left += delta.left + else offset.top += delta.top + + var isVertical = /top|bottom/.test(placement) + var arrowDelta = isVertical ? delta.left * 2 - width + actualWidth : delta.top * 2 - height + actualHeight + var arrowOffsetPosition = isVertical ? 'offsetWidth' : 'offsetHeight' + + $tip.offset(offset) + this.replaceArrow(arrowDelta, $tip[0][arrowOffsetPosition], isVertical) + } + + Tooltip.prototype.replaceArrow = function (delta, dimension, isVertical) { + this.arrow() + .css(isVertical ? 'left' : 'top', 50 * (1 - delta / dimension) + '%') + .css(isVertical ? 'top' : 'left', '') + } + + Tooltip.prototype.setContent = function () { + var $tip = this.tip() + var title = this.getTitle() + + $tip.find('.tooltip-inner')[this.options.html ? 'html' : 'text'](title) + $tip.removeClass('fade in top bottom left right') + } + + Tooltip.prototype.hide = function (callback) { + var that = this + var $tip = $(this.$tip) + var e = $.Event('hide.bs.' + this.type) + + function complete() { + if (that.hoverState != 'in') $tip.detach() + if (that.$element) { // TODO: Check whether guarding this code with this `if` is really necessary. + that.$element + .removeAttr('aria-describedby') + .trigger('hidden.bs.' + that.type) + } + callback && callback() + } + + this.$element.trigger(e) + + if (e.isDefaultPrevented()) return + + $tip.removeClass('in') + + $.support.transition && $tip.hasClass('fade') ? + $tip + .one('bsTransitionEnd', complete) + .emulateTransitionEnd(Tooltip.TRANSITION_DURATION) : + complete() + + this.hoverState = null + + return this + } + + Tooltip.prototype.fixTitle = function () { + var $e = this.$element + if ($e.attr('title') || typeof $e.attr('data-original-title') != 'string') { + $e.attr('data-original-title', $e.attr('title') || '').attr('title', '') + } + } + + Tooltip.prototype.hasContent = function () { + return this.getTitle() + } + + Tooltip.prototype.getPosition = function ($element) { + $element = $element || this.$element + + var el = $element[0] + var isBody = el.tagName == 'BODY' + + var elRect = el.getBoundingClientRect() + if (elRect.width == null) { + // width and height are missing in IE8, so compute them manually; see https://github.com/twbs/bootstrap/issues/14093 + elRect = $.extend({}, elRect, { width: elRect.right - elRect.left, height: elRect.bottom - elRect.top }) + } + var isSvg = window.SVGElement && el instanceof window.SVGElement + // Avoid using $.offset() on SVGs since it gives incorrect results in jQuery 3. + // See https://github.com/twbs/bootstrap/issues/20280 + var elOffset = isBody ? { top: 0, left: 0 } : (isSvg ? null : $element.offset()) + var scroll = { scroll: isBody ? document.documentElement.scrollTop || document.body.scrollTop : $element.scrollTop() } + var outerDims = isBody ? { width: $(window).width(), height: $(window).height() } : null + + return $.extend({}, elRect, scroll, outerDims, elOffset) + } + + Tooltip.prototype.getCalculatedOffset = function (placement, pos, actualWidth, actualHeight) { + return placement == 'bottom' ? { top: pos.top + pos.height, left: pos.left + pos.width / 2 - actualWidth / 2 } : + placement == 'top' ? { top: pos.top - actualHeight, left: pos.left + pos.width / 2 - actualWidth / 2 } : + placement == 'left' ? { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth } : + /* placement == 'right' */ { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width } + + } + + Tooltip.prototype.getViewportAdjustedDelta = function (placement, pos, actualWidth, actualHeight) { + var delta = { top: 0, left: 0 } + if (!this.$viewport) return delta + + var viewportPadding = this.options.viewport && this.options.viewport.padding || 0 + var viewportDimensions = this.getPosition(this.$viewport) + + if (/right|left/.test(placement)) { + var topEdgeOffset = pos.top - viewportPadding - viewportDimensions.scroll + var bottomEdgeOffset = pos.top + viewportPadding - viewportDimensions.scroll + actualHeight + if (topEdgeOffset < viewportDimensions.top) { // top overflow + delta.top = viewportDimensions.top - topEdgeOffset + } else if (bottomEdgeOffset > viewportDimensions.top + viewportDimensions.height) { // bottom overflow + delta.top = viewportDimensions.top + viewportDimensions.height - bottomEdgeOffset + } + } else { + var leftEdgeOffset = pos.left - viewportPadding + var rightEdgeOffset = pos.left + viewportPadding + actualWidth + if (leftEdgeOffset < viewportDimensions.left) { // left overflow + delta.left = viewportDimensions.left - leftEdgeOffset + } else if (rightEdgeOffset > viewportDimensions.right) { // right overflow + delta.left = viewportDimensions.left + viewportDimensions.width - rightEdgeOffset + } + } + + return delta + } + + Tooltip.prototype.getTitle = function () { + var title + var $e = this.$element + var o = this.options + + title = $e.attr('data-original-title') + || (typeof o.title == 'function' ? o.title.call($e[0]) : o.title) + + return title + } + + Tooltip.prototype.getUID = function (prefix) { + do prefix += ~~(Math.random() * 1000000) + while (document.getElementById(prefix)) + return prefix + } + + Tooltip.prototype.tip = function () { + if (!this.$tip) { + this.$tip = $(this.options.template) + if (this.$tip.length != 1) { + throw new Error(this.type + ' `template` option must consist of exactly 1 top-level element!') + } + } + return this.$tip + } + + Tooltip.prototype.arrow = function () { + return (this.$arrow = this.$arrow || this.tip().find('.tooltip-arrow')) + } + + Tooltip.prototype.enable = function () { + this.enabled = true + } + + Tooltip.prototype.disable = function () { + this.enabled = false + } + + Tooltip.prototype.toggleEnabled = function () { + this.enabled = !this.enabled + } + + Tooltip.prototype.toggle = function (e) { + var self = this + if (e) { + self = $(e.currentTarget).data('bs.' + this.type) + if (!self) { + self = new this.constructor(e.currentTarget, this.getDelegateOptions()) + $(e.currentTarget).data('bs.' + this.type, self) + } + } + + if (e) { + self.inState.click = !self.inState.click + if (self.isInStateTrue()) self.enter(self) + else self.leave(self) + } else { + self.tip().hasClass('in') ? self.leave(self) : self.enter(self) + } + } + + Tooltip.prototype.destroy = function () { + var that = this + clearTimeout(this.timeout) + this.hide(function () { + that.$element.off('.' + that.type).removeData('bs.' + that.type) + if (that.$tip) { + that.$tip.detach() + } + that.$tip = null + that.$arrow = null + that.$viewport = null + that.$element = null + }) + } + + + // TOOLTIP PLUGIN DEFINITION + // ========================= + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.tooltip') + var options = typeof option == 'object' && option + + if (!data && /destroy|hide/.test(option)) return + if (!data) $this.data('bs.tooltip', (data = new Tooltip(this, options))) + if (typeof option == 'string') data[option]() + }) + } + + var old = $.fn.tooltip + + $.fn.tooltip = Plugin + $.fn.tooltip.Constructor = Tooltip + + + // TOOLTIP NO CONFLICT + // =================== + + $.fn.tooltip.noConflict = function () { + $.fn.tooltip = old + return this + } + +}(jQuery); + +/* ======================================================================== + * Bootstrap: popover.js v3.3.7 + * http://getbootstrap.com/javascript/#popovers + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // POPOVER PUBLIC CLASS DEFINITION + // =============================== + + var Popover = function (element, options) { + this.init('popover', element, options) + } + + if (!$.fn.tooltip) throw new Error('Popover requires tooltip.js') + + Popover.VERSION = '3.3.7' + + Popover.DEFAULTS = $.extend({}, $.fn.tooltip.Constructor.DEFAULTS, { + placement: 'right', + trigger: 'click', + content: '', + template: '' + }) + + + // NOTE: POPOVER EXTENDS tooltip.js + // ================================ + + Popover.prototype = $.extend({}, $.fn.tooltip.Constructor.prototype) + + Popover.prototype.constructor = Popover + + Popover.prototype.getDefaults = function () { + return Popover.DEFAULTS + } + + Popover.prototype.setContent = function () { + var $tip = this.tip() + var title = this.getTitle() + var content = this.getContent() + + $tip.find('.popover-title')[this.options.html ? 'html' : 'text'](title) + $tip.find('.popover-content').children().detach().end()[ // we use append for html objects to maintain js events + this.options.html ? (typeof content == 'string' ? 'html' : 'append') : 'text' + ](content) + + $tip.removeClass('fade top bottom left right in') + + // IE8 doesn't accept hiding via the `:empty` pseudo selector, we have to do + // this manually by checking the contents. + if (!$tip.find('.popover-title').html()) $tip.find('.popover-title').hide() + } + + Popover.prototype.hasContent = function () { + return this.getTitle() || this.getContent() + } + + Popover.prototype.getContent = function () { + var $e = this.$element + var o = this.options + + return $e.attr('data-content') + || (typeof o.content == 'function' ? + o.content.call($e[0]) : + o.content) + } + + Popover.prototype.arrow = function () { + return (this.$arrow = this.$arrow || this.tip().find('.arrow')) + } + + + // POPOVER PLUGIN DEFINITION + // ========================= + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.popover') + var options = typeof option == 'object' && option + + if (!data && /destroy|hide/.test(option)) return + if (!data) $this.data('bs.popover', (data = new Popover(this, options))) + if (typeof option == 'string') data[option]() + }) + } + + var old = $.fn.popover + + $.fn.popover = Plugin + $.fn.popover.Constructor = Popover + + + // POPOVER NO CONFLICT + // =================== + + $.fn.popover.noConflict = function () { + $.fn.popover = old + return this + } + +}(jQuery); + +/* ======================================================================== + * Bootstrap: scrollspy.js v3.3.7 + * http://getbootstrap.com/javascript/#scrollspy + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // SCROLLSPY CLASS DEFINITION + // ========================== + + function ScrollSpy(element, options) { + this.$body = $(document.body) + this.$scrollElement = $(element).is(document.body) ? $(window) : $(element) + this.options = $.extend({}, ScrollSpy.DEFAULTS, options) + this.selector = (this.options.target || '') + ' .nav li > a' + this.offsets = [] + this.targets = [] + this.activeTarget = null + this.scrollHeight = 0 + + this.$scrollElement.on('scroll.bs.scrollspy', $.proxy(this.process, this)) + this.refresh() + this.process() + } + + ScrollSpy.VERSION = '3.3.7' + + ScrollSpy.DEFAULTS = { + offset: 10 + } + + ScrollSpy.prototype.getScrollHeight = function () { + return this.$scrollElement[0].scrollHeight || Math.max(this.$body[0].scrollHeight, document.documentElement.scrollHeight) + } + + ScrollSpy.prototype.refresh = function () { + var that = this + var offsetMethod = 'offset' + var offsetBase = 0 + + this.offsets = [] + this.targets = [] + this.scrollHeight = this.getScrollHeight() + + if (!$.isWindow(this.$scrollElement[0])) { + offsetMethod = 'position' + offsetBase = this.$scrollElement.scrollTop() + } + + this.$body + .find(this.selector) + .map(function () { + var $el = $(this) + var href = $el.data('target') || $el.attr('href') + var $href = /^#./.test(href) && $(href) + + return ($href + && $href.length + && $href.is(':visible') + && [[$href[offsetMethod]().top + offsetBase, href]]) || null + }) + .sort(function (a, b) { return a[0] - b[0] }) + .each(function () { + that.offsets.push(this[0]) + that.targets.push(this[1]) + }) + } + + ScrollSpy.prototype.process = function () { + var scrollTop = this.$scrollElement.scrollTop() + this.options.offset + var scrollHeight = this.getScrollHeight() + var maxScroll = this.options.offset + scrollHeight - this.$scrollElement.height() + var offsets = this.offsets + var targets = this.targets + var activeTarget = this.activeTarget + var i + + if (this.scrollHeight != scrollHeight) { + this.refresh() + } + + if (scrollTop >= maxScroll) { + return activeTarget != (i = targets[targets.length - 1]) && this.activate(i) + } + + if (activeTarget && scrollTop < offsets[0]) { + this.activeTarget = null + return this.clear() + } + + for (i = offsets.length; i--;) { + activeTarget != targets[i] + && scrollTop >= offsets[i] + && (offsets[i + 1] === undefined || scrollTop < offsets[i + 1]) + && this.activate(targets[i]) + } + } + + ScrollSpy.prototype.activate = function (target) { + this.activeTarget = target + + this.clear() + + var selector = this.selector + + '[data-target="' + target + '"],' + + this.selector + '[href="' + target + '"]' + + var active = $(selector) + .parents('li') + .addClass('active') + + if (active.parent('.dropdown-menu').length) { + active = active + .closest('li.dropdown') + .addClass('active') + } + + active.trigger('activate.bs.scrollspy') + } + + ScrollSpy.prototype.clear = function () { + $(this.selector) + .parentsUntil(this.options.target, '.active') + .removeClass('active') + } + + + // SCROLLSPY PLUGIN DEFINITION + // =========================== + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.scrollspy') + var options = typeof option == 'object' && option + + if (!data) $this.data('bs.scrollspy', (data = new ScrollSpy(this, options))) + if (typeof option == 'string') data[option]() + }) + } + + var old = $.fn.scrollspy + + $.fn.scrollspy = Plugin + $.fn.scrollspy.Constructor = ScrollSpy + + + // SCROLLSPY NO CONFLICT + // ===================== + + $.fn.scrollspy.noConflict = function () { + $.fn.scrollspy = old + return this + } + + + // SCROLLSPY DATA-API + // ================== + + $(window).on('load.bs.scrollspy.data-api', function () { + $('[data-spy="scroll"]').each(function () { + var $spy = $(this) + Plugin.call($spy, $spy.data()) + }) + }) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: tab.js v3.3.7 + * http://getbootstrap.com/javascript/#tabs + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // TAB CLASS DEFINITION + // ==================== + + var Tab = function (element) { + // jscs:disable requireDollarBeforejQueryAssignment + this.element = $(element) + // jscs:enable requireDollarBeforejQueryAssignment + } + + Tab.VERSION = '3.3.7' + + Tab.TRANSITION_DURATION = 150 + + Tab.prototype.show = function () { + var $this = this.element + var $ul = $this.closest('ul:not(.dropdown-menu)') + var selector = $this.data('target') + + if (!selector) { + selector = $this.attr('href') + selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7 + } + + if ($this.parent('li').hasClass('active')) return + + var $previous = $ul.find('.active:last a') + var hideEvent = $.Event('hide.bs.tab', { + relatedTarget: $this[0] + }) + var showEvent = $.Event('show.bs.tab', { + relatedTarget: $previous[0] + }) + + $previous.trigger(hideEvent) + $this.trigger(showEvent) + + if (showEvent.isDefaultPrevented() || hideEvent.isDefaultPrevented()) return + + var $target = $(selector) + + this.activate($this.closest('li'), $ul) + this.activate($target, $target.parent(), function () { + $previous.trigger({ + type: 'hidden.bs.tab', + relatedTarget: $this[0] + }) + $this.trigger({ + type: 'shown.bs.tab', + relatedTarget: $previous[0] + }) + }) + } + + Tab.prototype.activate = function (element, container, callback) { + var $active = container.find('> .active') + var transition = callback + && $.support.transition + && ($active.length && $active.hasClass('fade') || !!container.find('> .fade').length) + + function next() { + $active + .removeClass('active') + .find('> .dropdown-menu > .active') + .removeClass('active') + .end() + .find('[data-toggle="tab"]') + .attr('aria-expanded', false) + + element + .addClass('active') + .find('[data-toggle="tab"]') + .attr('aria-expanded', true) + + if (transition) { + element[0].offsetWidth // reflow for transition + element.addClass('in') + } else { + element.removeClass('fade') + } + + if (element.parent('.dropdown-menu').length) { + element + .closest('li.dropdown') + .addClass('active') + .end() + .find('[data-toggle="tab"]') + .attr('aria-expanded', true) + } + + callback && callback() + } + + $active.length && transition ? + $active + .one('bsTransitionEnd', next) + .emulateTransitionEnd(Tab.TRANSITION_DURATION) : + next() + + $active.removeClass('in') + } + + + // TAB PLUGIN DEFINITION + // ===================== + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.tab') + + if (!data) $this.data('bs.tab', (data = new Tab(this))) + if (typeof option == 'string') data[option]() + }) + } + + var old = $.fn.tab + + $.fn.tab = Plugin + $.fn.tab.Constructor = Tab + + + // TAB NO CONFLICT + // =============== + + $.fn.tab.noConflict = function () { + $.fn.tab = old + return this + } + + + // TAB DATA-API + // ============ + + var clickHandler = function (e) { + e.preventDefault() + Plugin.call($(this), 'show') + } + + $(document) + .on('click.bs.tab.data-api', '[data-toggle="tab"]', clickHandler) + .on('click.bs.tab.data-api', '[data-toggle="pill"]', clickHandler) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: affix.js v3.3.7 + * http://getbootstrap.com/javascript/#affix + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // AFFIX CLASS DEFINITION + // ====================== + + var Affix = function (element, options) { + this.options = $.extend({}, Affix.DEFAULTS, options) + + this.$target = $(this.options.target) + .on('scroll.bs.affix.data-api', $.proxy(this.checkPosition, this)) + .on('click.bs.affix.data-api', $.proxy(this.checkPositionWithEventLoop, this)) + + this.$element = $(element) + this.affixed = null + this.unpin = null + this.pinnedOffset = null + + this.checkPosition() + } + + Affix.VERSION = '3.3.7' + + Affix.RESET = 'affix affix-top affix-bottom' + + Affix.DEFAULTS = { + offset: 0, + target: window + } + + Affix.prototype.getState = function (scrollHeight, height, offsetTop, offsetBottom) { + var scrollTop = this.$target.scrollTop() + var position = this.$element.offset() + var targetHeight = this.$target.height() + + if (offsetTop != null && this.affixed == 'top') return scrollTop < offsetTop ? 'top' : false + + if (this.affixed == 'bottom') { + if (offsetTop != null) return (scrollTop + this.unpin <= position.top) ? false : 'bottom' + return (scrollTop + targetHeight <= scrollHeight - offsetBottom) ? false : 'bottom' + } + + var initializing = this.affixed == null + var colliderTop = initializing ? scrollTop : position.top + var colliderHeight = initializing ? targetHeight : height + + if (offsetTop != null && scrollTop <= offsetTop) return 'top' + if (offsetBottom != null && (colliderTop + colliderHeight >= scrollHeight - offsetBottom)) return 'bottom' + + return false + } + + Affix.prototype.getPinnedOffset = function () { + if (this.pinnedOffset) return this.pinnedOffset + this.$element.removeClass(Affix.RESET).addClass('affix') + var scrollTop = this.$target.scrollTop() + var position = this.$element.offset() + return (this.pinnedOffset = position.top - scrollTop) + } + + Affix.prototype.checkPositionWithEventLoop = function () { + setTimeout($.proxy(this.checkPosition, this), 1) + } + + Affix.prototype.checkPosition = function () { + if (!this.$element.is(':visible')) return + + var height = this.$element.height() + var offset = this.options.offset + var offsetTop = offset.top + var offsetBottom = offset.bottom + var scrollHeight = Math.max($(document).height(), $(document.body).height()) + + if (typeof offset != 'object') offsetBottom = offsetTop = offset + if (typeof offsetTop == 'function') offsetTop = offset.top(this.$element) + if (typeof offsetBottom == 'function') offsetBottom = offset.bottom(this.$element) + + var affix = this.getState(scrollHeight, height, offsetTop, offsetBottom) + + if (this.affixed != affix) { + if (this.unpin != null) this.$element.css('top', '') + + var affixType = 'affix' + (affix ? '-' + affix : '') + var e = $.Event(affixType + '.bs.affix') + + this.$element.trigger(e) + + if (e.isDefaultPrevented()) return + + this.affixed = affix + this.unpin = affix == 'bottom' ? this.getPinnedOffset() : null + + this.$element + .removeClass(Affix.RESET) + .addClass(affixType) + .trigger(affixType.replace('affix', 'affixed') + '.bs.affix') + } + + if (affix == 'bottom') { + this.$element.offset({ + top: scrollHeight - height - offsetBottom + }) + } + } + + + // AFFIX PLUGIN DEFINITION + // ======================= + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.affix') + var options = typeof option == 'object' && option + + if (!data) $this.data('bs.affix', (data = new Affix(this, options))) + if (typeof option == 'string') data[option]() + }) + } + + var old = $.fn.affix + + $.fn.affix = Plugin + $.fn.affix.Constructor = Affix + + + // AFFIX NO CONFLICT + // ================= + + $.fn.affix.noConflict = function () { + $.fn.affix = old + return this + } + + + // AFFIX DATA-API + // ============== + + $(window).on('load', function () { + $('[data-spy="affix"]').each(function () { + var $spy = $(this) + var data = $spy.data() + + data.offset = data.offset || {} + + if (data.offsetBottom != null) data.offset.bottom = data.offsetBottom + if (data.offsetTop != null) data.offset.top = data.offsetTop + + Plugin.call($spy, data) + }) + }) + +}(jQuery); diff --git a/vraptor/src/main/webapp/vendor/bootstrap/js/bootstrap.min.js b/vraptor/src/main/webapp/vendor/bootstrap/js/bootstrap.min.js new file mode 100644 index 0000000000..9bcd2fccae --- /dev/null +++ b/vraptor/src/main/webapp/vendor/bootstrap/js/bootstrap.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap v3.3.7 (http://getbootstrap.com) + * Copyright 2011-2016 Twitter, Inc. + * Licensed under the MIT license + */ +if("undefined"==typeof jQuery)throw new Error("Bootstrap's JavaScript requires jQuery");+function(a){"use strict";var b=a.fn.jquery.split(" ")[0].split(".");if(b[0]<2&&b[1]<9||1==b[0]&&9==b[1]&&b[2]<1||b[0]>3)throw new Error("Bootstrap's JavaScript requires jQuery version 1.9.1 or higher, but lower than version 4")}(jQuery),+function(a){"use strict";function b(){var a=document.createElement("bootstrap"),b={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(var c in b)if(void 0!==a.style[c])return{end:b[c]};return!1}a.fn.emulateTransitionEnd=function(b){var c=!1,d=this;a(this).one("bsTransitionEnd",function(){c=!0});var e=function(){c||a(d).trigger(a.support.transition.end)};return setTimeout(e,b),this},a(function(){a.support.transition=b(),a.support.transition&&(a.event.special.bsTransitionEnd={bindType:a.support.transition.end,delegateType:a.support.transition.end,handle:function(b){if(a(b.target).is(this))return b.handleObj.handler.apply(this,arguments)}})})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var c=a(this),e=c.data("bs.alert");e||c.data("bs.alert",e=new d(this)),"string"==typeof b&&e[b].call(c)})}var c='[data-dismiss="alert"]',d=function(b){a(b).on("click",c,this.close)};d.VERSION="3.3.7",d.TRANSITION_DURATION=150,d.prototype.close=function(b){function c(){g.detach().trigger("closed.bs.alert").remove()}var e=a(this),f=e.attr("data-target");f||(f=e.attr("href"),f=f&&f.replace(/.*(?=#[^\s]*$)/,""));var g=a("#"===f?[]:f);b&&b.preventDefault(),g.length||(g=e.closest(".alert")),g.trigger(b=a.Event("close.bs.alert")),b.isDefaultPrevented()||(g.removeClass("in"),a.support.transition&&g.hasClass("fade")?g.one("bsTransitionEnd",c).emulateTransitionEnd(d.TRANSITION_DURATION):c())};var e=a.fn.alert;a.fn.alert=b,a.fn.alert.Constructor=d,a.fn.alert.noConflict=function(){return a.fn.alert=e,this},a(document).on("click.bs.alert.data-api",c,d.prototype.close)}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.button"),f="object"==typeof b&&b;e||d.data("bs.button",e=new c(this,f)),"toggle"==b?e.toggle():b&&e.setState(b)})}var c=function(b,d){this.$element=a(b),this.options=a.extend({},c.DEFAULTS,d),this.isLoading=!1};c.VERSION="3.3.7",c.DEFAULTS={loadingText:"loading..."},c.prototype.setState=function(b){var c="disabled",d=this.$element,e=d.is("input")?"val":"html",f=d.data();b+="Text",null==f.resetText&&d.data("resetText",d[e]()),setTimeout(a.proxy(function(){d[e](null==f[b]?this.options[b]:f[b]),"loadingText"==b?(this.isLoading=!0,d.addClass(c).attr(c,c).prop(c,!0)):this.isLoading&&(this.isLoading=!1,d.removeClass(c).removeAttr(c).prop(c,!1))},this),0)},c.prototype.toggle=function(){var a=!0,b=this.$element.closest('[data-toggle="buttons"]');if(b.length){var c=this.$element.find("input");"radio"==c.prop("type")?(c.prop("checked")&&(a=!1),b.find(".active").removeClass("active"),this.$element.addClass("active")):"checkbox"==c.prop("type")&&(c.prop("checked")!==this.$element.hasClass("active")&&(a=!1),this.$element.toggleClass("active")),c.prop("checked",this.$element.hasClass("active")),a&&c.trigger("change")}else this.$element.attr("aria-pressed",!this.$element.hasClass("active")),this.$element.toggleClass("active")};var d=a.fn.button;a.fn.button=b,a.fn.button.Constructor=c,a.fn.button.noConflict=function(){return a.fn.button=d,this},a(document).on("click.bs.button.data-api",'[data-toggle^="button"]',function(c){var d=a(c.target).closest(".btn");b.call(d,"toggle"),a(c.target).is('input[type="radio"], input[type="checkbox"]')||(c.preventDefault(),d.is("input,button")?d.trigger("focus"):d.find("input:visible,button:visible").first().trigger("focus"))}).on("focus.bs.button.data-api blur.bs.button.data-api",'[data-toggle^="button"]',function(b){a(b.target).closest(".btn").toggleClass("focus",/^focus(in)?$/.test(b.type))})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.carousel"),f=a.extend({},c.DEFAULTS,d.data(),"object"==typeof b&&b),g="string"==typeof b?b:f.slide;e||d.data("bs.carousel",e=new c(this,f)),"number"==typeof b?e.to(b):g?e[g]():f.interval&&e.pause().cycle()})}var c=function(b,c){this.$element=a(b),this.$indicators=this.$element.find(".carousel-indicators"),this.options=c,this.paused=null,this.sliding=null,this.interval=null,this.$active=null,this.$items=null,this.options.keyboard&&this.$element.on("keydown.bs.carousel",a.proxy(this.keydown,this)),"hover"==this.options.pause&&!("ontouchstart"in document.documentElement)&&this.$element.on("mouseenter.bs.carousel",a.proxy(this.pause,this)).on("mouseleave.bs.carousel",a.proxy(this.cycle,this))};c.VERSION="3.3.7",c.TRANSITION_DURATION=600,c.DEFAULTS={interval:5e3,pause:"hover",wrap:!0,keyboard:!0},c.prototype.keydown=function(a){if(!/input|textarea/i.test(a.target.tagName)){switch(a.which){case 37:this.prev();break;case 39:this.next();break;default:return}a.preventDefault()}},c.prototype.cycle=function(b){return b||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(a.proxy(this.next,this),this.options.interval)),this},c.prototype.getItemIndex=function(a){return this.$items=a.parent().children(".item"),this.$items.index(a||this.$active)},c.prototype.getItemForDirection=function(a,b){var c=this.getItemIndex(b),d="prev"==a&&0===c||"next"==a&&c==this.$items.length-1;if(d&&!this.options.wrap)return b;var e="prev"==a?-1:1,f=(c+e)%this.$items.length;return this.$items.eq(f)},c.prototype.to=function(a){var b=this,c=this.getItemIndex(this.$active=this.$element.find(".item.active"));if(!(a>this.$items.length-1||a<0))return this.sliding?this.$element.one("slid.bs.carousel",function(){b.to(a)}):c==a?this.pause().cycle():this.slide(a>c?"next":"prev",this.$items.eq(a))},c.prototype.pause=function(b){return b||(this.paused=!0),this.$element.find(".next, .prev").length&&a.support.transition&&(this.$element.trigger(a.support.transition.end),this.cycle(!0)),this.interval=clearInterval(this.interval),this},c.prototype.next=function(){if(!this.sliding)return this.slide("next")},c.prototype.prev=function(){if(!this.sliding)return this.slide("prev")},c.prototype.slide=function(b,d){var e=this.$element.find(".item.active"),f=d||this.getItemForDirection(b,e),g=this.interval,h="next"==b?"left":"right",i=this;if(f.hasClass("active"))return this.sliding=!1;var j=f[0],k=a.Event("slide.bs.carousel",{relatedTarget:j,direction:h});if(this.$element.trigger(k),!k.isDefaultPrevented()){if(this.sliding=!0,g&&this.pause(),this.$indicators.length){this.$indicators.find(".active").removeClass("active");var l=a(this.$indicators.children()[this.getItemIndex(f)]);l&&l.addClass("active")}var m=a.Event("slid.bs.carousel",{relatedTarget:j,direction:h});return a.support.transition&&this.$element.hasClass("slide")?(f.addClass(b),f[0].offsetWidth,e.addClass(h),f.addClass(h),e.one("bsTransitionEnd",function(){f.removeClass([b,h].join(" ")).addClass("active"),e.removeClass(["active",h].join(" ")),i.sliding=!1,setTimeout(function(){i.$element.trigger(m)},0)}).emulateTransitionEnd(c.TRANSITION_DURATION)):(e.removeClass("active"),f.addClass("active"),this.sliding=!1,this.$element.trigger(m)),g&&this.cycle(),this}};var d=a.fn.carousel;a.fn.carousel=b,a.fn.carousel.Constructor=c,a.fn.carousel.noConflict=function(){return a.fn.carousel=d,this};var e=function(c){var d,e=a(this),f=a(e.attr("data-target")||(d=e.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,""));if(f.hasClass("carousel")){var g=a.extend({},f.data(),e.data()),h=e.attr("data-slide-to");h&&(g.interval=!1),b.call(f,g),h&&f.data("bs.carousel").to(h),c.preventDefault()}};a(document).on("click.bs.carousel.data-api","[data-slide]",e).on("click.bs.carousel.data-api","[data-slide-to]",e),a(window).on("load",function(){a('[data-ride="carousel"]').each(function(){var c=a(this);b.call(c,c.data())})})}(jQuery),+function(a){"use strict";function b(b){var c,d=b.attr("data-target")||(c=b.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,"");return a(d)}function c(b){return this.each(function(){var c=a(this),e=c.data("bs.collapse"),f=a.extend({},d.DEFAULTS,c.data(),"object"==typeof b&&b);!e&&f.toggle&&/show|hide/.test(b)&&(f.toggle=!1),e||c.data("bs.collapse",e=new d(this,f)),"string"==typeof b&&e[b]()})}var d=function(b,c){this.$element=a(b),this.options=a.extend({},d.DEFAULTS,c),this.$trigger=a('[data-toggle="collapse"][href="#'+b.id+'"],[data-toggle="collapse"][data-target="#'+b.id+'"]'),this.transitioning=null,this.options.parent?this.$parent=this.getParent():this.addAriaAndCollapsedClass(this.$element,this.$trigger),this.options.toggle&&this.toggle()};d.VERSION="3.3.7",d.TRANSITION_DURATION=350,d.DEFAULTS={toggle:!0},d.prototype.dimension=function(){var a=this.$element.hasClass("width");return a?"width":"height"},d.prototype.show=function(){if(!this.transitioning&&!this.$element.hasClass("in")){var b,e=this.$parent&&this.$parent.children(".panel").children(".in, .collapsing");if(!(e&&e.length&&(b=e.data("bs.collapse"),b&&b.transitioning))){var f=a.Event("show.bs.collapse");if(this.$element.trigger(f),!f.isDefaultPrevented()){e&&e.length&&(c.call(e,"hide"),b||e.data("bs.collapse",null));var g=this.dimension();this.$element.removeClass("collapse").addClass("collapsing")[g](0).attr("aria-expanded",!0),this.$trigger.removeClass("collapsed").attr("aria-expanded",!0),this.transitioning=1;var h=function(){this.$element.removeClass("collapsing").addClass("collapse in")[g](""),this.transitioning=0,this.$element.trigger("shown.bs.collapse")};if(!a.support.transition)return h.call(this);var i=a.camelCase(["scroll",g].join("-"));this.$element.one("bsTransitionEnd",a.proxy(h,this)).emulateTransitionEnd(d.TRANSITION_DURATION)[g](this.$element[0][i])}}}},d.prototype.hide=function(){if(!this.transitioning&&this.$element.hasClass("in")){var b=a.Event("hide.bs.collapse");if(this.$element.trigger(b),!b.isDefaultPrevented()){var c=this.dimension();this.$element[c](this.$element[c]())[0].offsetHeight,this.$element.addClass("collapsing").removeClass("collapse in").attr("aria-expanded",!1),this.$trigger.addClass("collapsed").attr("aria-expanded",!1),this.transitioning=1;var e=function(){this.transitioning=0,this.$element.removeClass("collapsing").addClass("collapse").trigger("hidden.bs.collapse")};return a.support.transition?void this.$element[c](0).one("bsTransitionEnd",a.proxy(e,this)).emulateTransitionEnd(d.TRANSITION_DURATION):e.call(this)}}},d.prototype.toggle=function(){this[this.$element.hasClass("in")?"hide":"show"]()},d.prototype.getParent=function(){return a(this.options.parent).find('[data-toggle="collapse"][data-parent="'+this.options.parent+'"]').each(a.proxy(function(c,d){var e=a(d);this.addAriaAndCollapsedClass(b(e),e)},this)).end()},d.prototype.addAriaAndCollapsedClass=function(a,b){var c=a.hasClass("in");a.attr("aria-expanded",c),b.toggleClass("collapsed",!c).attr("aria-expanded",c)};var e=a.fn.collapse;a.fn.collapse=c,a.fn.collapse.Constructor=d,a.fn.collapse.noConflict=function(){return a.fn.collapse=e,this},a(document).on("click.bs.collapse.data-api",'[data-toggle="collapse"]',function(d){var e=a(this);e.attr("data-target")||d.preventDefault();var f=b(e),g=f.data("bs.collapse"),h=g?"toggle":e.data();c.call(f,h)})}(jQuery),+function(a){"use strict";function b(b){var c=b.attr("data-target");c||(c=b.attr("href"),c=c&&/#[A-Za-z]/.test(c)&&c.replace(/.*(?=#[^\s]*$)/,""));var d=c&&a(c);return d&&d.length?d:b.parent()}function c(c){c&&3===c.which||(a(e).remove(),a(f).each(function(){var d=a(this),e=b(d),f={relatedTarget:this};e.hasClass("open")&&(c&&"click"==c.type&&/input|textarea/i.test(c.target.tagName)&&a.contains(e[0],c.target)||(e.trigger(c=a.Event("hide.bs.dropdown",f)),c.isDefaultPrevented()||(d.attr("aria-expanded","false"),e.removeClass("open").trigger(a.Event("hidden.bs.dropdown",f)))))}))}function d(b){return this.each(function(){var c=a(this),d=c.data("bs.dropdown");d||c.data("bs.dropdown",d=new g(this)),"string"==typeof b&&d[b].call(c)})}var e=".dropdown-backdrop",f='[data-toggle="dropdown"]',g=function(b){a(b).on("click.bs.dropdown",this.toggle)};g.VERSION="3.3.7",g.prototype.toggle=function(d){var e=a(this);if(!e.is(".disabled, :disabled")){var f=b(e),g=f.hasClass("open");if(c(),!g){"ontouchstart"in document.documentElement&&!f.closest(".navbar-nav").length&&a(document.createElement("div")).addClass("dropdown-backdrop").insertAfter(a(this)).on("click",c);var h={relatedTarget:this};if(f.trigger(d=a.Event("show.bs.dropdown",h)),d.isDefaultPrevented())return;e.trigger("focus").attr("aria-expanded","true"),f.toggleClass("open").trigger(a.Event("shown.bs.dropdown",h))}return!1}},g.prototype.keydown=function(c){if(/(38|40|27|32)/.test(c.which)&&!/input|textarea/i.test(c.target.tagName)){var d=a(this);if(c.preventDefault(),c.stopPropagation(),!d.is(".disabled, :disabled")){var e=b(d),g=e.hasClass("open");if(!g&&27!=c.which||g&&27==c.which)return 27==c.which&&e.find(f).trigger("focus"),d.trigger("click");var h=" li:not(.disabled):visible a",i=e.find(".dropdown-menu"+h);if(i.length){var j=i.index(c.target);38==c.which&&j>0&&j--,40==c.which&&jdocument.documentElement.clientHeight;this.$element.css({paddingLeft:!this.bodyIsOverflowing&&a?this.scrollbarWidth:"",paddingRight:this.bodyIsOverflowing&&!a?this.scrollbarWidth:""})},c.prototype.resetAdjustments=function(){this.$element.css({paddingLeft:"",paddingRight:""})},c.prototype.checkScrollbar=function(){var a=window.innerWidth;if(!a){var b=document.documentElement.getBoundingClientRect();a=b.right-Math.abs(b.left)}this.bodyIsOverflowing=document.body.clientWidth
',trigger:"hover focus",title:"",delay:0,html:!1,container:!1,viewport:{selector:"body",padding:0}},c.prototype.init=function(b,c,d){if(this.enabled=!0,this.type=b,this.$element=a(c),this.options=this.getOptions(d),this.$viewport=this.options.viewport&&a(a.isFunction(this.options.viewport)?this.options.viewport.call(this,this.$element):this.options.viewport.selector||this.options.viewport),this.inState={click:!1,hover:!1,focus:!1},this.$element[0]instanceof document.constructor&&!this.options.selector)throw new Error("`selector` option must be specified when initializing "+this.type+" on the window.document object!");for(var e=this.options.trigger.split(" "),f=e.length;f--;){var g=e[f];if("click"==g)this.$element.on("click."+this.type,this.options.selector,a.proxy(this.toggle,this));else if("manual"!=g){var h="hover"==g?"mouseenter":"focusin",i="hover"==g?"mouseleave":"focusout";this.$element.on(h+"."+this.type,this.options.selector,a.proxy(this.enter,this)),this.$element.on(i+"."+this.type,this.options.selector,a.proxy(this.leave,this))}}this.options.selector?this._options=a.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},c.prototype.getDefaults=function(){return c.DEFAULTS},c.prototype.getOptions=function(b){return b=a.extend({},this.getDefaults(),this.$element.data(),b),b.delay&&"number"==typeof b.delay&&(b.delay={show:b.delay,hide:b.delay}),b},c.prototype.getDelegateOptions=function(){var b={},c=this.getDefaults();return this._options&&a.each(this._options,function(a,d){c[a]!=d&&(b[a]=d)}),b},c.prototype.enter=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget).data("bs."+this.type);return c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c)),b instanceof a.Event&&(c.inState["focusin"==b.type?"focus":"hover"]=!0),c.tip().hasClass("in")||"in"==c.hoverState?void(c.hoverState="in"):(clearTimeout(c.timeout),c.hoverState="in",c.options.delay&&c.options.delay.show?void(c.timeout=setTimeout(function(){"in"==c.hoverState&&c.show()},c.options.delay.show)):c.show())},c.prototype.isInStateTrue=function(){for(var a in this.inState)if(this.inState[a])return!0;return!1},c.prototype.leave=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget).data("bs."+this.type);if(c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c)),b instanceof a.Event&&(c.inState["focusout"==b.type?"focus":"hover"]=!1),!c.isInStateTrue())return clearTimeout(c.timeout),c.hoverState="out",c.options.delay&&c.options.delay.hide?void(c.timeout=setTimeout(function(){"out"==c.hoverState&&c.hide()},c.options.delay.hide)):c.hide()},c.prototype.show=function(){var b=a.Event("show.bs."+this.type);if(this.hasContent()&&this.enabled){this.$element.trigger(b);var d=a.contains(this.$element[0].ownerDocument.documentElement,this.$element[0]);if(b.isDefaultPrevented()||!d)return;var e=this,f=this.tip(),g=this.getUID(this.type);this.setContent(),f.attr("id",g),this.$element.attr("aria-describedby",g),this.options.animation&&f.addClass("fade");var h="function"==typeof this.options.placement?this.options.placement.call(this,f[0],this.$element[0]):this.options.placement,i=/\s?auto?\s?/i,j=i.test(h);j&&(h=h.replace(i,"")||"top"),f.detach().css({top:0,left:0,display:"block"}).addClass(h).data("bs."+this.type,this),this.options.container?f.appendTo(this.options.container):f.insertAfter(this.$element),this.$element.trigger("inserted.bs."+this.type);var k=this.getPosition(),l=f[0].offsetWidth,m=f[0].offsetHeight;if(j){var n=h,o=this.getPosition(this.$viewport);h="bottom"==h&&k.bottom+m>o.bottom?"top":"top"==h&&k.top-mo.width?"left":"left"==h&&k.left-lg.top+g.height&&(e.top=g.top+g.height-i)}else{var j=b.left-f,k=b.left+f+c;jg.right&&(e.left=g.left+g.width-k)}return e},c.prototype.getTitle=function(){var a,b=this.$element,c=this.options;return a=b.attr("data-original-title")||("function"==typeof c.title?c.title.call(b[0]):c.title)},c.prototype.getUID=function(a){do a+=~~(1e6*Math.random());while(document.getElementById(a));return a},c.prototype.tip=function(){if(!this.$tip&&(this.$tip=a(this.options.template),1!=this.$tip.length))throw new Error(this.type+" `template` option must consist of exactly 1 top-level element!");return this.$tip},c.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".tooltip-arrow")},c.prototype.enable=function(){this.enabled=!0},c.prototype.disable=function(){this.enabled=!1},c.prototype.toggleEnabled=function(){this.enabled=!this.enabled},c.prototype.toggle=function(b){var c=this;b&&(c=a(b.currentTarget).data("bs."+this.type),c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c))),b?(c.inState.click=!c.inState.click,c.isInStateTrue()?c.enter(c):c.leave(c)):c.tip().hasClass("in")?c.leave(c):c.enter(c)},c.prototype.destroy=function(){var a=this;clearTimeout(this.timeout),this.hide(function(){a.$element.off("."+a.type).removeData("bs."+a.type),a.$tip&&a.$tip.detach(),a.$tip=null,a.$arrow=null,a.$viewport=null,a.$element=null})};var d=a.fn.tooltip;a.fn.tooltip=b,a.fn.tooltip.Constructor=c,a.fn.tooltip.noConflict=function(){return a.fn.tooltip=d,this}}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.popover"),f="object"==typeof b&&b;!e&&/destroy|hide/.test(b)||(e||d.data("bs.popover",e=new c(this,f)),"string"==typeof b&&e[b]())})}var c=function(a,b){this.init("popover",a,b)};if(!a.fn.tooltip)throw new Error("Popover requires tooltip.js");c.VERSION="3.3.7",c.DEFAULTS=a.extend({},a.fn.tooltip.Constructor.DEFAULTS,{placement:"right",trigger:"click",content:"",template:''}),c.prototype=a.extend({},a.fn.tooltip.Constructor.prototype),c.prototype.constructor=c,c.prototype.getDefaults=function(){return c.DEFAULTS},c.prototype.setContent=function(){var a=this.tip(),b=this.getTitle(),c=this.getContent();a.find(".popover-title")[this.options.html?"html":"text"](b),a.find(".popover-content").children().detach().end()[this.options.html?"string"==typeof c?"html":"append":"text"](c),a.removeClass("fade top bottom left right in"),a.find(".popover-title").html()||a.find(".popover-title").hide()},c.prototype.hasContent=function(){return this.getTitle()||this.getContent()},c.prototype.getContent=function(){var a=this.$element,b=this.options;return a.attr("data-content")||("function"==typeof b.content?b.content.call(a[0]):b.content)},c.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".arrow")};var d=a.fn.popover;a.fn.popover=b,a.fn.popover.Constructor=c,a.fn.popover.noConflict=function(){return a.fn.popover=d,this}}(jQuery),+function(a){"use strict";function b(c,d){this.$body=a(document.body),this.$scrollElement=a(a(c).is(document.body)?window:c),this.options=a.extend({},b.DEFAULTS,d),this.selector=(this.options.target||"")+" .nav li > a",this.offsets=[],this.targets=[],this.activeTarget=null,this.scrollHeight=0,this.$scrollElement.on("scroll.bs.scrollspy",a.proxy(this.process,this)),this.refresh(),this.process()}function c(c){return this.each(function(){var d=a(this),e=d.data("bs.scrollspy"),f="object"==typeof c&&c;e||d.data("bs.scrollspy",e=new b(this,f)),"string"==typeof c&&e[c]()})}b.VERSION="3.3.7",b.DEFAULTS={offset:10},b.prototype.getScrollHeight=function(){return this.$scrollElement[0].scrollHeight||Math.max(this.$body[0].scrollHeight,document.documentElement.scrollHeight)},b.prototype.refresh=function(){var b=this,c="offset",d=0;this.offsets=[],this.targets=[],this.scrollHeight=this.getScrollHeight(),a.isWindow(this.$scrollElement[0])||(c="position",d=this.$scrollElement.scrollTop()),this.$body.find(this.selector).map(function(){var b=a(this),e=b.data("target")||b.attr("href"),f=/^#./.test(e)&&a(e);return f&&f.length&&f.is(":visible")&&[[f[c]().top+d,e]]||null}).sort(function(a,b){return a[0]-b[0]}).each(function(){b.offsets.push(this[0]),b.targets.push(this[1])})},b.prototype.process=function(){var a,b=this.$scrollElement.scrollTop()+this.options.offset,c=this.getScrollHeight(),d=this.options.offset+c-this.$scrollElement.height(),e=this.offsets,f=this.targets,g=this.activeTarget;if(this.scrollHeight!=c&&this.refresh(),b>=d)return g!=(a=f[f.length-1])&&this.activate(a);if(g&&b=e[a]&&(void 0===e[a+1]||b .dropdown-menu > .active").removeClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!1),b.addClass("active").find('[data-toggle="tab"]').attr("aria-expanded",!0),h?(b[0].offsetWidth,b.addClass("in")):b.removeClass("fade"),b.parent(".dropdown-menu").length&&b.closest("li.dropdown").addClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!0),e&&e()}var g=d.find("> .active"),h=e&&a.support.transition&&(g.length&&g.hasClass("fade")||!!d.find("> .fade").length);g.length&&h?g.one("bsTransitionEnd",f).emulateTransitionEnd(c.TRANSITION_DURATION):f(),g.removeClass("in")};var d=a.fn.tab;a.fn.tab=b,a.fn.tab.Constructor=c,a.fn.tab.noConflict=function(){return a.fn.tab=d,this};var e=function(c){c.preventDefault(),b.call(a(this),"show")};a(document).on("click.bs.tab.data-api",'[data-toggle="tab"]',e).on("click.bs.tab.data-api",'[data-toggle="pill"]',e)}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.affix"),f="object"==typeof b&&b;e||d.data("bs.affix",e=new c(this,f)),"string"==typeof b&&e[b]()})}var c=function(b,d){this.options=a.extend({},c.DEFAULTS,d),this.$target=a(this.options.target).on("scroll.bs.affix.data-api",a.proxy(this.checkPosition,this)).on("click.bs.affix.data-api",a.proxy(this.checkPositionWithEventLoop,this)),this.$element=a(b),this.affixed=null,this.unpin=null,this.pinnedOffset=null,this.checkPosition()};c.VERSION="3.3.7",c.RESET="affix affix-top affix-bottom",c.DEFAULTS={offset:0,target:window},c.prototype.getState=function(a,b,c,d){var e=this.$target.scrollTop(),f=this.$element.offset(),g=this.$target.height();if(null!=c&&"top"==this.affixed)return e=a-d&&"bottom"},c.prototype.getPinnedOffset=function(){if(this.pinnedOffset)return this.pinnedOffset;this.$element.removeClass(c.RESET).addClass("affix");var a=this.$target.scrollTop(),b=this.$element.offset();return this.pinnedOffset=b.top-a},c.prototype.checkPositionWithEventLoop=function(){setTimeout(a.proxy(this.checkPosition,this),1)},c.prototype.checkPosition=function(){if(this.$element.is(":visible")){var b=this.$element.height(),d=this.options.offset,e=d.top,f=d.bottom,g=Math.max(a(document).height(),a(document.body).height());"object"!=typeof d&&(f=e=d),"function"==typeof e&&(e=d.top(this.$element)),"function"==typeof f&&(f=d.bottom(this.$element));var h=this.getState(g,b,e,f);if(this.affixed!=h){null!=this.unpin&&this.$element.css("top","");var i="affix"+(h?"-"+h:""),j=a.Event(i+".bs.affix");if(this.$element.trigger(j),j.isDefaultPrevented())return;this.affixed=h,this.unpin="bottom"==h?this.getPinnedOffset():null,this.$element.removeClass(c.RESET).addClass(i).trigger(i.replace("affix","affixed")+".bs.affix")}"bottom"==h&&this.$element.offset({top:g-b-f})}};var d=a.fn.affix;a.fn.affix=b,a.fn.affix.Constructor=c,a.fn.affix.noConflict=function(){return a.fn.affix=d,this},a(window).on("load",function(){a('[data-spy="affix"]').each(function(){var c=a(this),d=c.data();d.offset=d.offset||{},null!=d.offsetBottom&&(d.offset.bottom=d.offsetBottom),null!=d.offsetTop&&(d.offset.top=d.offsetTop),b.call(c,d)})})}(jQuery); \ No newline at end of file diff --git a/vraptor/src/main/webapp/vendor/font-awesome/css/font-awesome.css b/vraptor/src/main/webapp/vendor/font-awesome/css/font-awesome.css new file mode 100644 index 0000000000..a0b879fa00 --- /dev/null +++ b/vraptor/src/main/webapp/vendor/font-awesome/css/font-awesome.css @@ -0,0 +1,2199 @@ +/*! + * Font Awesome 4.6.3 by @davegandy - http://fontawesome.io - @fontawesome + * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) + */ +/* FONT PATH + * -------------------------- */ +@font-face { + font-family: 'FontAwesome'; + src: url('../fonts/fontawesome-webfont.eot?v=4.6.3'); + src: url('../fonts/fontawesome-webfont.eot?#iefix&v=4.6.3') format('embedded-opentype'), url('../fonts/fontawesome-webfont.woff2?v=4.6.3') format('woff2'), url('../fonts/fontawesome-webfont.woff?v=4.6.3') format('woff'), url('../fonts/fontawesome-webfont.ttf?v=4.6.3') format('truetype'), url('../fonts/fontawesome-webfont.svg?v=4.6.3#fontawesomeregular') format('svg'); + font-weight: normal; + font-style: normal; +} +.fa { + display: inline-block; + font: normal normal normal 14px/1 FontAwesome; + font-size: inherit; + text-rendering: auto; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} +/* makes the font 33% larger relative to the icon container */ +.fa-lg { + font-size: 1.33333333em; + line-height: 0.75em; + vertical-align: -15%; +} +.fa-2x { + font-size: 2em; +} +.fa-3x { + font-size: 3em; +} +.fa-4x { + font-size: 4em; +} +.fa-5x { + font-size: 5em; +} +.fa-fw { + width: 1.28571429em; + text-align: center; +} +.fa-ul { + padding-left: 0; + margin-left: 2.14285714em; + list-style-type: none; +} +.fa-ul > li { + position: relative; +} +.fa-li { + position: absolute; + left: -2.14285714em; + width: 2.14285714em; + top: 0.14285714em; + text-align: center; +} +.fa-li.fa-lg { + left: -1.85714286em; +} +.fa-border { + padding: .2em .25em .15em; + border: solid 0.08em #eeeeee; + border-radius: .1em; +} +.fa-pull-left { + float: left; +} +.fa-pull-right { + float: right; +} +.fa.fa-pull-left { + margin-right: .3em; +} +.fa.fa-pull-right { + margin-left: .3em; +} +/* Deprecated as of 4.4.0 */ +.pull-right { + float: right; +} +.pull-left { + float: left; +} +.fa.pull-left { + margin-right: .3em; +} +.fa.pull-right { + margin-left: .3em; +} +.fa-spin { + -webkit-animation: fa-spin 2s infinite linear; + animation: fa-spin 2s infinite linear; +} +.fa-pulse { + -webkit-animation: fa-spin 1s infinite steps(8); + animation: fa-spin 1s infinite steps(8); +} +@-webkit-keyframes fa-spin { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + 100% { + -webkit-transform: rotate(359deg); + transform: rotate(359deg); + } +} +@keyframes fa-spin { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + 100% { + -webkit-transform: rotate(359deg); + transform: rotate(359deg); + } +} +.fa-rotate-90 { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)"; + -webkit-transform: rotate(90deg); + -ms-transform: rotate(90deg); + transform: rotate(90deg); +} +.fa-rotate-180 { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)"; + -webkit-transform: rotate(180deg); + -ms-transform: rotate(180deg); + transform: rotate(180deg); +} +.fa-rotate-270 { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)"; + -webkit-transform: rotate(270deg); + -ms-transform: rotate(270deg); + transform: rotate(270deg); +} +.fa-flip-horizontal { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)"; + -webkit-transform: scale(-1, 1); + -ms-transform: scale(-1, 1); + transform: scale(-1, 1); +} +.fa-flip-vertical { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"; + -webkit-transform: scale(1, -1); + -ms-transform: scale(1, -1); + transform: scale(1, -1); +} +:root .fa-rotate-90, +:root .fa-rotate-180, +:root .fa-rotate-270, +:root .fa-flip-horizontal, +:root .fa-flip-vertical { + filter: none; +} +.fa-stack { + position: relative; + display: inline-block; + width: 2em; + height: 2em; + line-height: 2em; + vertical-align: middle; +} +.fa-stack-1x, +.fa-stack-2x { + position: absolute; + left: 0; + width: 100%; + text-align: center; +} +.fa-stack-1x { + line-height: inherit; +} +.fa-stack-2x { + font-size: 2em; +} +.fa-inverse { + color: #ffffff; +} +/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen + readers do not read off random characters that represent icons */ +.fa-glass:before { + content: "\f000"; +} +.fa-music:before { + content: "\f001"; +} +.fa-search:before { + content: "\f002"; +} +.fa-envelope-o:before { + content: "\f003"; +} +.fa-heart:before { + content: "\f004"; +} +.fa-star:before { + content: "\f005"; +} +.fa-star-o:before { + content: "\f006"; +} +.fa-user:before { + content: "\f007"; +} +.fa-film:before { + content: "\f008"; +} +.fa-th-large:before { + content: "\f009"; +} +.fa-th:before { + content: "\f00a"; +} +.fa-th-list:before { + content: "\f00b"; +} +.fa-check:before { + content: "\f00c"; +} +.fa-remove:before, +.fa-close:before, +.fa-times:before { + content: "\f00d"; +} +.fa-search-plus:before { + content: "\f00e"; +} +.fa-search-minus:before { + content: "\f010"; +} +.fa-power-off:before { + content: "\f011"; +} +.fa-signal:before { + content: "\f012"; +} +.fa-gear:before, +.fa-cog:before { + content: "\f013"; +} +.fa-trash-o:before { + content: "\f014"; +} +.fa-home:before { + content: "\f015"; +} +.fa-file-o:before { + content: "\f016"; +} +.fa-clock-o:before { + content: "\f017"; +} +.fa-road:before { + content: "\f018"; +} +.fa-download:before { + content: "\f019"; +} +.fa-arrow-circle-o-down:before { + content: "\f01a"; +} +.fa-arrow-circle-o-up:before { + content: "\f01b"; +} +.fa-inbox:before { + content: "\f01c"; +} +.fa-play-circle-o:before { + content: "\f01d"; +} +.fa-rotate-right:before, +.fa-repeat:before { + content: "\f01e"; +} +.fa-refresh:before { + content: "\f021"; +} +.fa-list-alt:before { + content: "\f022"; +} +.fa-lock:before { + content: "\f023"; +} +.fa-flag:before { + content: "\f024"; +} +.fa-headphones:before { + content: "\f025"; +} +.fa-volume-off:before { + content: "\f026"; +} +.fa-volume-down:before { + content: "\f027"; +} +.fa-volume-up:before { + content: "\f028"; +} +.fa-qrcode:before { + content: "\f029"; +} +.fa-barcode:before { + content: "\f02a"; +} +.fa-tag:before { + content: "\f02b"; +} +.fa-tags:before { + content: "\f02c"; +} +.fa-book:before { + content: "\f02d"; +} +.fa-bookmark:before { + content: "\f02e"; +} +.fa-print:before { + content: "\f02f"; +} +.fa-camera:before { + content: "\f030"; +} +.fa-font:before { + content: "\f031"; +} +.fa-bold:before { + content: "\f032"; +} +.fa-italic:before { + content: "\f033"; +} +.fa-text-height:before { + content: "\f034"; +} +.fa-text-width:before { + content: "\f035"; +} +.fa-align-left:before { + content: "\f036"; +} +.fa-align-center:before { + content: "\f037"; +} +.fa-align-right:before { + content: "\f038"; +} +.fa-align-justify:before { + content: "\f039"; +} +.fa-list:before { + content: "\f03a"; +} +.fa-dedent:before, +.fa-outdent:before { + content: "\f03b"; +} +.fa-indent:before { + content: "\f03c"; +} +.fa-video-camera:before { + content: "\f03d"; +} +.fa-photo:before, +.fa-image:before, +.fa-picture-o:before { + content: "\f03e"; +} +.fa-pencil:before { + content: "\f040"; +} +.fa-map-marker:before { + content: "\f041"; +} +.fa-adjust:before { + content: "\f042"; +} +.fa-tint:before { + content: "\f043"; +} +.fa-edit:before, +.fa-pencil-square-o:before { + content: "\f044"; +} +.fa-share-square-o:before { + content: "\f045"; +} +.fa-check-square-o:before { + content: "\f046"; +} +.fa-arrows:before { + content: "\f047"; +} +.fa-step-backward:before { + content: "\f048"; +} +.fa-fast-backward:before { + content: "\f049"; +} +.fa-backward:before { + content: "\f04a"; +} +.fa-play:before { + content: "\f04b"; +} +.fa-pause:before { + content: "\f04c"; +} +.fa-stop:before { + content: "\f04d"; +} +.fa-forward:before { + content: "\f04e"; +} +.fa-fast-forward:before { + content: "\f050"; +} +.fa-step-forward:before { + content: "\f051"; +} +.fa-eject:before { + content: "\f052"; +} +.fa-chevron-left:before { + content: "\f053"; +} +.fa-chevron-right:before { + content: "\f054"; +} +.fa-plus-circle:before { + content: "\f055"; +} +.fa-minus-circle:before { + content: "\f056"; +} +.fa-times-circle:before { + content: "\f057"; +} +.fa-check-circle:before { + content: "\f058"; +} +.fa-question-circle:before { + content: "\f059"; +} +.fa-info-circle:before { + content: "\f05a"; +} +.fa-crosshairs:before { + content: "\f05b"; +} +.fa-times-circle-o:before { + content: "\f05c"; +} +.fa-check-circle-o:before { + content: "\f05d"; +} +.fa-ban:before { + content: "\f05e"; +} +.fa-arrow-left:before { + content: "\f060"; +} +.fa-arrow-right:before { + content: "\f061"; +} +.fa-arrow-up:before { + content: "\f062"; +} +.fa-arrow-down:before { + content: "\f063"; +} +.fa-mail-forward:before, +.fa-share:before { + content: "\f064"; +} +.fa-expand:before { + content: "\f065"; +} +.fa-compress:before { + content: "\f066"; +} +.fa-plus:before { + content: "\f067"; +} +.fa-minus:before { + content: "\f068"; +} +.fa-asterisk:before { + content: "\f069"; +} +.fa-exclamation-circle:before { + content: "\f06a"; +} +.fa-gift:before { + content: "\f06b"; +} +.fa-leaf:before { + content: "\f06c"; +} +.fa-fire:before { + content: "\f06d"; +} +.fa-eye:before { + content: "\f06e"; +} +.fa-eye-slash:before { + content: "\f070"; +} +.fa-warning:before, +.fa-exclamation-triangle:before { + content: "\f071"; +} +.fa-plane:before { + content: "\f072"; +} +.fa-calendar:before { + content: "\f073"; +} +.fa-random:before { + content: "\f074"; +} +.fa-comment:before { + content: "\f075"; +} +.fa-magnet:before { + content: "\f076"; +} +.fa-chevron-up:before { + content: "\f077"; +} +.fa-chevron-down:before { + content: "\f078"; +} +.fa-retweet:before { + content: "\f079"; +} +.fa-shopping-cart:before { + content: "\f07a"; +} +.fa-folder:before { + content: "\f07b"; +} +.fa-folder-open:before { + content: "\f07c"; +} +.fa-arrows-v:before { + content: "\f07d"; +} +.fa-arrows-h:before { + content: "\f07e"; +} +.fa-bar-chart-o:before, +.fa-bar-chart:before { + content: "\f080"; +} +.fa-twitter-square:before { + content: "\f081"; +} +.fa-facebook-square:before { + content: "\f082"; +} +.fa-camera-retro:before { + content: "\f083"; +} +.fa-key:before { + content: "\f084"; +} +.fa-gears:before, +.fa-cogs:before { + content: "\f085"; +} +.fa-comments:before { + content: "\f086"; +} +.fa-thumbs-o-up:before { + content: "\f087"; +} +.fa-thumbs-o-down:before { + content: "\f088"; +} +.fa-star-half:before { + content: "\f089"; +} +.fa-heart-o:before { + content: "\f08a"; +} +.fa-sign-out:before { + content: "\f08b"; +} +.fa-linkedin-square:before { + content: "\f08c"; +} +.fa-thumb-tack:before { + content: "\f08d"; +} +.fa-external-link:before { + content: "\f08e"; +} +.fa-sign-in:before { + content: "\f090"; +} +.fa-trophy:before { + content: "\f091"; +} +.fa-github-square:before { + content: "\f092"; +} +.fa-upload:before { + content: "\f093"; +} +.fa-lemon-o:before { + content: "\f094"; +} +.fa-phone:before { + content: "\f095"; +} +.fa-square-o:before { + content: "\f096"; +} +.fa-bookmark-o:before { + content: "\f097"; +} +.fa-phone-square:before { + content: "\f098"; +} +.fa-twitter:before { + content: "\f099"; +} +.fa-facebook-f:before, +.fa-facebook:before { + content: "\f09a"; +} +.fa-github:before { + content: "\f09b"; +} +.fa-unlock:before { + content: "\f09c"; +} +.fa-credit-card:before { + content: "\f09d"; +} +.fa-feed:before, +.fa-rss:before { + content: "\f09e"; +} +.fa-hdd-o:before { + content: "\f0a0"; +} +.fa-bullhorn:before { + content: "\f0a1"; +} +.fa-bell:before { + content: "\f0f3"; +} +.fa-certificate:before { + content: "\f0a3"; +} +.fa-hand-o-right:before { + content: "\f0a4"; +} +.fa-hand-o-left:before { + content: "\f0a5"; +} +.fa-hand-o-up:before { + content: "\f0a6"; +} +.fa-hand-o-down:before { + content: "\f0a7"; +} +.fa-arrow-circle-left:before { + content: "\f0a8"; +} +.fa-arrow-circle-right:before { + content: "\f0a9"; +} +.fa-arrow-circle-up:before { + content: "\f0aa"; +} +.fa-arrow-circle-down:before { + content: "\f0ab"; +} +.fa-globe:before { + content: "\f0ac"; +} +.fa-wrench:before { + content: "\f0ad"; +} +.fa-tasks:before { + content: "\f0ae"; +} +.fa-filter:before { + content: "\f0b0"; +} +.fa-briefcase:before { + content: "\f0b1"; +} +.fa-arrows-alt:before { + content: "\f0b2"; +} +.fa-group:before, +.fa-users:before { + content: "\f0c0"; +} +.fa-chain:before, +.fa-link:before { + content: "\f0c1"; +} +.fa-cloud:before { + content: "\f0c2"; +} +.fa-flask:before { + content: "\f0c3"; +} +.fa-cut:before, +.fa-scissors:before { + content: "\f0c4"; +} +.fa-copy:before, +.fa-files-o:before { + content: "\f0c5"; +} +.fa-paperclip:before { + content: "\f0c6"; +} +.fa-save:before, +.fa-floppy-o:before { + content: "\f0c7"; +} +.fa-square:before { + content: "\f0c8"; +} +.fa-navicon:before, +.fa-reorder:before, +.fa-bars:before { + content: "\f0c9"; +} +.fa-list-ul:before { + content: "\f0ca"; +} +.fa-list-ol:before { + content: "\f0cb"; +} +.fa-strikethrough:before { + content: "\f0cc"; +} +.fa-underline:before { + content: "\f0cd"; +} +.fa-table:before { + content: "\f0ce"; +} +.fa-magic:before { + content: "\f0d0"; +} +.fa-truck:before { + content: "\f0d1"; +} +.fa-pinterest:before { + content: "\f0d2"; +} +.fa-pinterest-square:before { + content: "\f0d3"; +} +.fa-google-plus-square:before { + content: "\f0d4"; +} +.fa-google-plus:before { + content: "\f0d5"; +} +.fa-money:before { + content: "\f0d6"; +} +.fa-caret-down:before { + content: "\f0d7"; +} +.fa-caret-up:before { + content: "\f0d8"; +} +.fa-caret-left:before { + content: "\f0d9"; +} +.fa-caret-right:before { + content: "\f0da"; +} +.fa-columns:before { + content: "\f0db"; +} +.fa-unsorted:before, +.fa-sort:before { + content: "\f0dc"; +} +.fa-sort-down:before, +.fa-sort-desc:before { + content: "\f0dd"; +} +.fa-sort-up:before, +.fa-sort-asc:before { + content: "\f0de"; +} +.fa-envelope:before { + content: "\f0e0"; +} +.fa-linkedin:before { + content: "\f0e1"; +} +.fa-rotate-left:before, +.fa-undo:before { + content: "\f0e2"; +} +.fa-legal:before, +.fa-gavel:before { + content: "\f0e3"; +} +.fa-dashboard:before, +.fa-tachometer:before { + content: "\f0e4"; +} +.fa-comment-o:before { + content: "\f0e5"; +} +.fa-comments-o:before { + content: "\f0e6"; +} +.fa-flash:before, +.fa-bolt:before { + content: "\f0e7"; +} +.fa-sitemap:before { + content: "\f0e8"; +} +.fa-umbrella:before { + content: "\f0e9"; +} +.fa-paste:before, +.fa-clipboard:before { + content: "\f0ea"; +} +.fa-lightbulb-o:before { + content: "\f0eb"; +} +.fa-exchange:before { + content: "\f0ec"; +} +.fa-cloud-download:before { + content: "\f0ed"; +} +.fa-cloud-upload:before { + content: "\f0ee"; +} +.fa-user-md:before { + content: "\f0f0"; +} +.fa-stethoscope:before { + content: "\f0f1"; +} +.fa-suitcase:before { + content: "\f0f2"; +} +.fa-bell-o:before { + content: "\f0a2"; +} +.fa-coffee:before { + content: "\f0f4"; +} +.fa-cutlery:before { + content: "\f0f5"; +} +.fa-file-text-o:before { + content: "\f0f6"; +} +.fa-building-o:before { + content: "\f0f7"; +} +.fa-hospital-o:before { + content: "\f0f8"; +} +.fa-ambulance:before { + content: "\f0f9"; +} +.fa-medkit:before { + content: "\f0fa"; +} +.fa-fighter-jet:before { + content: "\f0fb"; +} +.fa-beer:before { + content: "\f0fc"; +} +.fa-h-square:before { + content: "\f0fd"; +} +.fa-plus-square:before { + content: "\f0fe"; +} +.fa-angle-double-left:before { + content: "\f100"; +} +.fa-angle-double-right:before { + content: "\f101"; +} +.fa-angle-double-up:before { + content: "\f102"; +} +.fa-angle-double-down:before { + content: "\f103"; +} +.fa-angle-left:before { + content: "\f104"; +} +.fa-angle-right:before { + content: "\f105"; +} +.fa-angle-up:before { + content: "\f106"; +} +.fa-angle-down:before { + content: "\f107"; +} +.fa-desktop:before { + content: "\f108"; +} +.fa-laptop:before { + content: "\f109"; +} +.fa-tablet:before { + content: "\f10a"; +} +.fa-mobile-phone:before, +.fa-mobile:before { + content: "\f10b"; +} +.fa-circle-o:before { + content: "\f10c"; +} +.fa-quote-left:before { + content: "\f10d"; +} +.fa-quote-right:before { + content: "\f10e"; +} +.fa-spinner:before { + content: "\f110"; +} +.fa-circle:before { + content: "\f111"; +} +.fa-mail-reply:before, +.fa-reply:before { + content: "\f112"; +} +.fa-github-alt:before { + content: "\f113"; +} +.fa-folder-o:before { + content: "\f114"; +} +.fa-folder-open-o:before { + content: "\f115"; +} +.fa-smile-o:before { + content: "\f118"; +} +.fa-frown-o:before { + content: "\f119"; +} +.fa-meh-o:before { + content: "\f11a"; +} +.fa-gamepad:before { + content: "\f11b"; +} +.fa-keyboard-o:before { + content: "\f11c"; +} +.fa-flag-o:before { + content: "\f11d"; +} +.fa-flag-checkered:before { + content: "\f11e"; +} +.fa-terminal:before { + content: "\f120"; +} +.fa-code:before { + content: "\f121"; +} +.fa-mail-reply-all:before, +.fa-reply-all:before { + content: "\f122"; +} +.fa-star-half-empty:before, +.fa-star-half-full:before, +.fa-star-half-o:before { + content: "\f123"; +} +.fa-location-arrow:before { + content: "\f124"; +} +.fa-crop:before { + content: "\f125"; +} +.fa-code-fork:before { + content: "\f126"; +} +.fa-unlink:before, +.fa-chain-broken:before { + content: "\f127"; +} +.fa-question:before { + content: "\f128"; +} +.fa-info:before { + content: "\f129"; +} +.fa-exclamation:before { + content: "\f12a"; +} +.fa-superscript:before { + content: "\f12b"; +} +.fa-subscript:before { + content: "\f12c"; +} +.fa-eraser:before { + content: "\f12d"; +} +.fa-puzzle-piece:before { + content: "\f12e"; +} +.fa-microphone:before { + content: "\f130"; +} +.fa-microphone-slash:before { + content: "\f131"; +} +.fa-shield:before { + content: "\f132"; +} +.fa-calendar-o:before { + content: "\f133"; +} +.fa-fire-extinguisher:before { + content: "\f134"; +} +.fa-rocket:before { + content: "\f135"; +} +.fa-maxcdn:before { + content: "\f136"; +} +.fa-chevron-circle-left:before { + content: "\f137"; +} +.fa-chevron-circle-right:before { + content: "\f138"; +} +.fa-chevron-circle-up:before { + content: "\f139"; +} +.fa-chevron-circle-down:before { + content: "\f13a"; +} +.fa-html5:before { + content: "\f13b"; +} +.fa-css3:before { + content: "\f13c"; +} +.fa-anchor:before { + content: "\f13d"; +} +.fa-unlock-alt:before { + content: "\f13e"; +} +.fa-bullseye:before { + content: "\f140"; +} +.fa-ellipsis-h:before { + content: "\f141"; +} +.fa-ellipsis-v:before { + content: "\f142"; +} +.fa-rss-square:before { + content: "\f143"; +} +.fa-play-circle:before { + content: "\f144"; +} +.fa-ticket:before { + content: "\f145"; +} +.fa-minus-square:before { + content: "\f146"; +} +.fa-minus-square-o:before { + content: "\f147"; +} +.fa-level-up:before { + content: "\f148"; +} +.fa-level-down:before { + content: "\f149"; +} +.fa-check-square:before { + content: "\f14a"; +} +.fa-pencil-square:before { + content: "\f14b"; +} +.fa-external-link-square:before { + content: "\f14c"; +} +.fa-share-square:before { + content: "\f14d"; +} +.fa-compass:before { + content: "\f14e"; +} +.fa-toggle-down:before, +.fa-caret-square-o-down:before { + content: "\f150"; +} +.fa-toggle-up:before, +.fa-caret-square-o-up:before { + content: "\f151"; +} +.fa-toggle-right:before, +.fa-caret-square-o-right:before { + content: "\f152"; +} +.fa-euro:before, +.fa-eur:before { + content: "\f153"; +} +.fa-gbp:before { + content: "\f154"; +} +.fa-dollar:before, +.fa-usd:before { + content: "\f155"; +} +.fa-rupee:before, +.fa-inr:before { + content: "\f156"; +} +.fa-cny:before, +.fa-rmb:before, +.fa-yen:before, +.fa-jpy:before { + content: "\f157"; +} +.fa-ruble:before, +.fa-rouble:before, +.fa-rub:before { + content: "\f158"; +} +.fa-won:before, +.fa-krw:before { + content: "\f159"; +} +.fa-bitcoin:before, +.fa-btc:before { + content: "\f15a"; +} +.fa-file:before { + content: "\f15b"; +} +.fa-file-text:before { + content: "\f15c"; +} +.fa-sort-alpha-asc:before { + content: "\f15d"; +} +.fa-sort-alpha-desc:before { + content: "\f15e"; +} +.fa-sort-amount-asc:before { + content: "\f160"; +} +.fa-sort-amount-desc:before { + content: "\f161"; +} +.fa-sort-numeric-asc:before { + content: "\f162"; +} +.fa-sort-numeric-desc:before { + content: "\f163"; +} +.fa-thumbs-up:before { + content: "\f164"; +} +.fa-thumbs-down:before { + content: "\f165"; +} +.fa-youtube-square:before { + content: "\f166"; +} +.fa-youtube:before { + content: "\f167"; +} +.fa-xing:before { + content: "\f168"; +} +.fa-xing-square:before { + content: "\f169"; +} +.fa-youtube-play:before { + content: "\f16a"; +} +.fa-dropbox:before { + content: "\f16b"; +} +.fa-stack-overflow:before { + content: "\f16c"; +} +.fa-instagram:before { + content: "\f16d"; +} +.fa-flickr:before { + content: "\f16e"; +} +.fa-adn:before { + content: "\f170"; +} +.fa-bitbucket:before { + content: "\f171"; +} +.fa-bitbucket-square:before { + content: "\f172"; +} +.fa-tumblr:before { + content: "\f173"; +} +.fa-tumblr-square:before { + content: "\f174"; +} +.fa-long-arrow-down:before { + content: "\f175"; +} +.fa-long-arrow-up:before { + content: "\f176"; +} +.fa-long-arrow-left:before { + content: "\f177"; +} +.fa-long-arrow-right:before { + content: "\f178"; +} +.fa-apple:before { + content: "\f179"; +} +.fa-windows:before { + content: "\f17a"; +} +.fa-android:before { + content: "\f17b"; +} +.fa-linux:before { + content: "\f17c"; +} +.fa-dribbble:before { + content: "\f17d"; +} +.fa-skype:before { + content: "\f17e"; +} +.fa-foursquare:before { + content: "\f180"; +} +.fa-trello:before { + content: "\f181"; +} +.fa-female:before { + content: "\f182"; +} +.fa-male:before { + content: "\f183"; +} +.fa-gittip:before, +.fa-gratipay:before { + content: "\f184"; +} +.fa-sun-o:before { + content: "\f185"; +} +.fa-moon-o:before { + content: "\f186"; +} +.fa-archive:before { + content: "\f187"; +} +.fa-bug:before { + content: "\f188"; +} +.fa-vk:before { + content: "\f189"; +} +.fa-weibo:before { + content: "\f18a"; +} +.fa-renren:before { + content: "\f18b"; +} +.fa-pagelines:before { + content: "\f18c"; +} +.fa-stack-exchange:before { + content: "\f18d"; +} +.fa-arrow-circle-o-right:before { + content: "\f18e"; +} +.fa-arrow-circle-o-left:before { + content: "\f190"; +} +.fa-toggle-left:before, +.fa-caret-square-o-left:before { + content: "\f191"; +} +.fa-dot-circle-o:before { + content: "\f192"; +} +.fa-wheelchair:before { + content: "\f193"; +} +.fa-vimeo-square:before { + content: "\f194"; +} +.fa-turkish-lira:before, +.fa-try:before { + content: "\f195"; +} +.fa-plus-square-o:before { + content: "\f196"; +} +.fa-space-shuttle:before { + content: "\f197"; +} +.fa-slack:before { + content: "\f198"; +} +.fa-envelope-square:before { + content: "\f199"; +} +.fa-wordpress:before { + content: "\f19a"; +} +.fa-openid:before { + content: "\f19b"; +} +.fa-institution:before, +.fa-bank:before, +.fa-university:before { + content: "\f19c"; +} +.fa-mortar-board:before, +.fa-graduation-cap:before { + content: "\f19d"; +} +.fa-yahoo:before { + content: "\f19e"; +} +.fa-google:before { + content: "\f1a0"; +} +.fa-reddit:before { + content: "\f1a1"; +} +.fa-reddit-square:before { + content: "\f1a2"; +} +.fa-stumbleupon-circle:before { + content: "\f1a3"; +} +.fa-stumbleupon:before { + content: "\f1a4"; +} +.fa-delicious:before { + content: "\f1a5"; +} +.fa-digg:before { + content: "\f1a6"; +} +.fa-pied-piper-pp:before { + content: "\f1a7"; +} +.fa-pied-piper-alt:before { + content: "\f1a8"; +} +.fa-drupal:before { + content: "\f1a9"; +} +.fa-joomla:before { + content: "\f1aa"; +} +.fa-language:before { + content: "\f1ab"; +} +.fa-fax:before { + content: "\f1ac"; +} +.fa-building:before { + content: "\f1ad"; +} +.fa-child:before { + content: "\f1ae"; +} +.fa-paw:before { + content: "\f1b0"; +} +.fa-spoon:before { + content: "\f1b1"; +} +.fa-cube:before { + content: "\f1b2"; +} +.fa-cubes:before { + content: "\f1b3"; +} +.fa-behance:before { + content: "\f1b4"; +} +.fa-behance-square:before { + content: "\f1b5"; +} +.fa-steam:before { + content: "\f1b6"; +} +.fa-steam-square:before { + content: "\f1b7"; +} +.fa-recycle:before { + content: "\f1b8"; +} +.fa-automobile:before, +.fa-car:before { + content: "\f1b9"; +} +.fa-cab:before, +.fa-taxi:before { + content: "\f1ba"; +} +.fa-tree:before { + content: "\f1bb"; +} +.fa-spotify:before { + content: "\f1bc"; +} +.fa-deviantart:before { + content: "\f1bd"; +} +.fa-soundcloud:before { + content: "\f1be"; +} +.fa-database:before { + content: "\f1c0"; +} +.fa-file-pdf-o:before { + content: "\f1c1"; +} +.fa-file-word-o:before { + content: "\f1c2"; +} +.fa-file-excel-o:before { + content: "\f1c3"; +} +.fa-file-powerpoint-o:before { + content: "\f1c4"; +} +.fa-file-photo-o:before, +.fa-file-picture-o:before, +.fa-file-image-o:before { + content: "\f1c5"; +} +.fa-file-zip-o:before, +.fa-file-archive-o:before { + content: "\f1c6"; +} +.fa-file-sound-o:before, +.fa-file-audio-o:before { + content: "\f1c7"; +} +.fa-file-movie-o:before, +.fa-file-video-o:before { + content: "\f1c8"; +} +.fa-file-code-o:before { + content: "\f1c9"; +} +.fa-vine:before { + content: "\f1ca"; +} +.fa-codepen:before { + content: "\f1cb"; +} +.fa-jsfiddle:before { + content: "\f1cc"; +} +.fa-life-bouy:before, +.fa-life-buoy:before, +.fa-life-saver:before, +.fa-support:before, +.fa-life-ring:before { + content: "\f1cd"; +} +.fa-circle-o-notch:before { + content: "\f1ce"; +} +.fa-ra:before, +.fa-resistance:before, +.fa-rebel:before { + content: "\f1d0"; +} +.fa-ge:before, +.fa-empire:before { + content: "\f1d1"; +} +.fa-git-square:before { + content: "\f1d2"; +} +.fa-git:before { + content: "\f1d3"; +} +.fa-y-combinator-square:before, +.fa-yc-square:before, +.fa-hacker-news:before { + content: "\f1d4"; +} +.fa-tencent-weibo:before { + content: "\f1d5"; +} +.fa-qq:before { + content: "\f1d6"; +} +.fa-wechat:before, +.fa-weixin:before { + content: "\f1d7"; +} +.fa-send:before, +.fa-paper-plane:before { + content: "\f1d8"; +} +.fa-send-o:before, +.fa-paper-plane-o:before { + content: "\f1d9"; +} +.fa-history:before { + content: "\f1da"; +} +.fa-circle-thin:before { + content: "\f1db"; +} +.fa-header:before { + content: "\f1dc"; +} +.fa-paragraph:before { + content: "\f1dd"; +} +.fa-sliders:before { + content: "\f1de"; +} +.fa-share-alt:before { + content: "\f1e0"; +} +.fa-share-alt-square:before { + content: "\f1e1"; +} +.fa-bomb:before { + content: "\f1e2"; +} +.fa-soccer-ball-o:before, +.fa-futbol-o:before { + content: "\f1e3"; +} +.fa-tty:before { + content: "\f1e4"; +} +.fa-binoculars:before { + content: "\f1e5"; +} +.fa-plug:before { + content: "\f1e6"; +} +.fa-slideshare:before { + content: "\f1e7"; +} +.fa-twitch:before { + content: "\f1e8"; +} +.fa-yelp:before { + content: "\f1e9"; +} +.fa-newspaper-o:before { + content: "\f1ea"; +} +.fa-wifi:before { + content: "\f1eb"; +} +.fa-calculator:before { + content: "\f1ec"; +} +.fa-paypal:before { + content: "\f1ed"; +} +.fa-google-wallet:before { + content: "\f1ee"; +} +.fa-cc-visa:before { + content: "\f1f0"; +} +.fa-cc-mastercard:before { + content: "\f1f1"; +} +.fa-cc-discover:before { + content: "\f1f2"; +} +.fa-cc-amex:before { + content: "\f1f3"; +} +.fa-cc-paypal:before { + content: "\f1f4"; +} +.fa-cc-stripe:before { + content: "\f1f5"; +} +.fa-bell-slash:before { + content: "\f1f6"; +} +.fa-bell-slash-o:before { + content: "\f1f7"; +} +.fa-trash:before { + content: "\f1f8"; +} +.fa-copyright:before { + content: "\f1f9"; +} +.fa-at:before { + content: "\f1fa"; +} +.fa-eyedropper:before { + content: "\f1fb"; +} +.fa-paint-brush:before { + content: "\f1fc"; +} +.fa-birthday-cake:before { + content: "\f1fd"; +} +.fa-area-chart:before { + content: "\f1fe"; +} +.fa-pie-chart:before { + content: "\f200"; +} +.fa-line-chart:before { + content: "\f201"; +} +.fa-lastfm:before { + content: "\f202"; +} +.fa-lastfm-square:before { + content: "\f203"; +} +.fa-toggle-off:before { + content: "\f204"; +} +.fa-toggle-on:before { + content: "\f205"; +} +.fa-bicycle:before { + content: "\f206"; +} +.fa-bus:before { + content: "\f207"; +} +.fa-ioxhost:before { + content: "\f208"; +} +.fa-angellist:before { + content: "\f209"; +} +.fa-cc:before { + content: "\f20a"; +} +.fa-shekel:before, +.fa-sheqel:before, +.fa-ils:before { + content: "\f20b"; +} +.fa-meanpath:before { + content: "\f20c"; +} +.fa-buysellads:before { + content: "\f20d"; +} +.fa-connectdevelop:before { + content: "\f20e"; +} +.fa-dashcube:before { + content: "\f210"; +} +.fa-forumbee:before { + content: "\f211"; +} +.fa-leanpub:before { + content: "\f212"; +} +.fa-sellsy:before { + content: "\f213"; +} +.fa-shirtsinbulk:before { + content: "\f214"; +} +.fa-simplybuilt:before { + content: "\f215"; +} +.fa-skyatlas:before { + content: "\f216"; +} +.fa-cart-plus:before { + content: "\f217"; +} +.fa-cart-arrow-down:before { + content: "\f218"; +} +.fa-diamond:before { + content: "\f219"; +} +.fa-ship:before { + content: "\f21a"; +} +.fa-user-secret:before { + content: "\f21b"; +} +.fa-motorcycle:before { + content: "\f21c"; +} +.fa-street-view:before { + content: "\f21d"; +} +.fa-heartbeat:before { + content: "\f21e"; +} +.fa-venus:before { + content: "\f221"; +} +.fa-mars:before { + content: "\f222"; +} +.fa-mercury:before { + content: "\f223"; +} +.fa-intersex:before, +.fa-transgender:before { + content: "\f224"; +} +.fa-transgender-alt:before { + content: "\f225"; +} +.fa-venus-double:before { + content: "\f226"; +} +.fa-mars-double:before { + content: "\f227"; +} +.fa-venus-mars:before { + content: "\f228"; +} +.fa-mars-stroke:before { + content: "\f229"; +} +.fa-mars-stroke-v:before { + content: "\f22a"; +} +.fa-mars-stroke-h:before { + content: "\f22b"; +} +.fa-neuter:before { + content: "\f22c"; +} +.fa-genderless:before { + content: "\f22d"; +} +.fa-facebook-official:before { + content: "\f230"; +} +.fa-pinterest-p:before { + content: "\f231"; +} +.fa-whatsapp:before { + content: "\f232"; +} +.fa-server:before { + content: "\f233"; +} +.fa-user-plus:before { + content: "\f234"; +} +.fa-user-times:before { + content: "\f235"; +} +.fa-hotel:before, +.fa-bed:before { + content: "\f236"; +} +.fa-viacoin:before { + content: "\f237"; +} +.fa-train:before { + content: "\f238"; +} +.fa-subway:before { + content: "\f239"; +} +.fa-medium:before { + content: "\f23a"; +} +.fa-yc:before, +.fa-y-combinator:before { + content: "\f23b"; +} +.fa-optin-monster:before { + content: "\f23c"; +} +.fa-opencart:before { + content: "\f23d"; +} +.fa-expeditedssl:before { + content: "\f23e"; +} +.fa-battery-4:before, +.fa-battery-full:before { + content: "\f240"; +} +.fa-battery-3:before, +.fa-battery-three-quarters:before { + content: "\f241"; +} +.fa-battery-2:before, +.fa-battery-half:before { + content: "\f242"; +} +.fa-battery-1:before, +.fa-battery-quarter:before { + content: "\f243"; +} +.fa-battery-0:before, +.fa-battery-empty:before { + content: "\f244"; +} +.fa-mouse-pointer:before { + content: "\f245"; +} +.fa-i-cursor:before { + content: "\f246"; +} +.fa-object-group:before { + content: "\f247"; +} +.fa-object-ungroup:before { + content: "\f248"; +} +.fa-sticky-note:before { + content: "\f249"; +} +.fa-sticky-note-o:before { + content: "\f24a"; +} +.fa-cc-jcb:before { + content: "\f24b"; +} +.fa-cc-diners-club:before { + content: "\f24c"; +} +.fa-clone:before { + content: "\f24d"; +} +.fa-balance-scale:before { + content: "\f24e"; +} +.fa-hourglass-o:before { + content: "\f250"; +} +.fa-hourglass-1:before, +.fa-hourglass-start:before { + content: "\f251"; +} +.fa-hourglass-2:before, +.fa-hourglass-half:before { + content: "\f252"; +} +.fa-hourglass-3:before, +.fa-hourglass-end:before { + content: "\f253"; +} +.fa-hourglass:before { + content: "\f254"; +} +.fa-hand-grab-o:before, +.fa-hand-rock-o:before { + content: "\f255"; +} +.fa-hand-stop-o:before, +.fa-hand-paper-o:before { + content: "\f256"; +} +.fa-hand-scissors-o:before { + content: "\f257"; +} +.fa-hand-lizard-o:before { + content: "\f258"; +} +.fa-hand-spock-o:before { + content: "\f259"; +} +.fa-hand-pointer-o:before { + content: "\f25a"; +} +.fa-hand-peace-o:before { + content: "\f25b"; +} +.fa-trademark:before { + content: "\f25c"; +} +.fa-registered:before { + content: "\f25d"; +} +.fa-creative-commons:before { + content: "\f25e"; +} +.fa-gg:before { + content: "\f260"; +} +.fa-gg-circle:before { + content: "\f261"; +} +.fa-tripadvisor:before { + content: "\f262"; +} +.fa-odnoklassniki:before { + content: "\f263"; +} +.fa-odnoklassniki-square:before { + content: "\f264"; +} +.fa-get-pocket:before { + content: "\f265"; +} +.fa-wikipedia-w:before { + content: "\f266"; +} +.fa-safari:before { + content: "\f267"; +} +.fa-chrome:before { + content: "\f268"; +} +.fa-firefox:before { + content: "\f269"; +} +.fa-opera:before { + content: "\f26a"; +} +.fa-internet-explorer:before { + content: "\f26b"; +} +.fa-tv:before, +.fa-television:before { + content: "\f26c"; +} +.fa-contao:before { + content: "\f26d"; +} +.fa-500px:before { + content: "\f26e"; +} +.fa-amazon:before { + content: "\f270"; +} +.fa-calendar-plus-o:before { + content: "\f271"; +} +.fa-calendar-minus-o:before { + content: "\f272"; +} +.fa-calendar-times-o:before { + content: "\f273"; +} +.fa-calendar-check-o:before { + content: "\f274"; +} +.fa-industry:before { + content: "\f275"; +} +.fa-map-pin:before { + content: "\f276"; +} +.fa-map-signs:before { + content: "\f277"; +} +.fa-map-o:before { + content: "\f278"; +} +.fa-map:before { + content: "\f279"; +} +.fa-commenting:before { + content: "\f27a"; +} +.fa-commenting-o:before { + content: "\f27b"; +} +.fa-houzz:before { + content: "\f27c"; +} +.fa-vimeo:before { + content: "\f27d"; +} +.fa-black-tie:before { + content: "\f27e"; +} +.fa-fonticons:before { + content: "\f280"; +} +.fa-reddit-alien:before { + content: "\f281"; +} +.fa-edge:before { + content: "\f282"; +} +.fa-credit-card-alt:before { + content: "\f283"; +} +.fa-codiepie:before { + content: "\f284"; +} +.fa-modx:before { + content: "\f285"; +} +.fa-fort-awesome:before { + content: "\f286"; +} +.fa-usb:before { + content: "\f287"; +} +.fa-product-hunt:before { + content: "\f288"; +} +.fa-mixcloud:before { + content: "\f289"; +} +.fa-scribd:before { + content: "\f28a"; +} +.fa-pause-circle:before { + content: "\f28b"; +} +.fa-pause-circle-o:before { + content: "\f28c"; +} +.fa-stop-circle:before { + content: "\f28d"; +} +.fa-stop-circle-o:before { + content: "\f28e"; +} +.fa-shopping-bag:before { + content: "\f290"; +} +.fa-shopping-basket:before { + content: "\f291"; +} +.fa-hashtag:before { + content: "\f292"; +} +.fa-bluetooth:before { + content: "\f293"; +} +.fa-bluetooth-b:before { + content: "\f294"; +} +.fa-percent:before { + content: "\f295"; +} +.fa-gitlab:before { + content: "\f296"; +} +.fa-wpbeginner:before { + content: "\f297"; +} +.fa-wpforms:before { + content: "\f298"; +} +.fa-envira:before { + content: "\f299"; +} +.fa-universal-access:before { + content: "\f29a"; +} +.fa-wheelchair-alt:before { + content: "\f29b"; +} +.fa-question-circle-o:before { + content: "\f29c"; +} +.fa-blind:before { + content: "\f29d"; +} +.fa-audio-description:before { + content: "\f29e"; +} +.fa-volume-control-phone:before { + content: "\f2a0"; +} +.fa-braille:before { + content: "\f2a1"; +} +.fa-assistive-listening-systems:before { + content: "\f2a2"; +} +.fa-asl-interpreting:before, +.fa-american-sign-language-interpreting:before { + content: "\f2a3"; +} +.fa-deafness:before, +.fa-hard-of-hearing:before, +.fa-deaf:before { + content: "\f2a4"; +} +.fa-glide:before { + content: "\f2a5"; +} +.fa-glide-g:before { + content: "\f2a6"; +} +.fa-signing:before, +.fa-sign-language:before { + content: "\f2a7"; +} +.fa-low-vision:before { + content: "\f2a8"; +} +.fa-viadeo:before { + content: "\f2a9"; +} +.fa-viadeo-square:before { + content: "\f2aa"; +} +.fa-snapchat:before { + content: "\f2ab"; +} +.fa-snapchat-ghost:before { + content: "\f2ac"; +} +.fa-snapchat-square:before { + content: "\f2ad"; +} +.fa-pied-piper:before { + content: "\f2ae"; +} +.fa-first-order:before { + content: "\f2b0"; +} +.fa-yoast:before { + content: "\f2b1"; +} +.fa-themeisle:before { + content: "\f2b2"; +} +.fa-google-plus-circle:before, +.fa-google-plus-official:before { + content: "\f2b3"; +} +.fa-fa:before, +.fa-font-awesome:before { + content: "\f2b4"; +} +.sr-only { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + margin: -1px; + overflow: hidden; + clip: rect(0, 0, 0, 0); + border: 0; +} +.sr-only-focusable:active, +.sr-only-focusable:focus { + position: static; + width: auto; + height: auto; + margin: 0; + overflow: visible; + clip: auto; +} diff --git a/vraptor/src/main/webapp/vendor/font-awesome/css/font-awesome.min.css b/vraptor/src/main/webapp/vendor/font-awesome/css/font-awesome.min.css new file mode 100644 index 0000000000..9b27f8ea8f --- /dev/null +++ b/vraptor/src/main/webapp/vendor/font-awesome/css/font-awesome.min.css @@ -0,0 +1,4 @@ +/*! + * Font Awesome 4.6.3 by @davegandy - http://fontawesome.io - @fontawesome + * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) + */@font-face{font-family:'FontAwesome';src:url('../fonts/fontawesome-webfont.eot?v=4.6.3');src:url('../fonts/fontawesome-webfont.eot?#iefix&v=4.6.3') format('embedded-opentype'),url('../fonts/fontawesome-webfont.woff2?v=4.6.3') format('woff2'),url('../fonts/fontawesome-webfont.woff?v=4.6.3') format('woff'),url('../fonts/fontawesome-webfont.ttf?v=4.6.3') format('truetype'),url('../fonts/fontawesome-webfont.svg?v=4.6.3#fontawesomeregular') format('svg');font-weight:normal;font-style:normal}.fa{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.33333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571429em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14285714em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14285714em;width:2.14285714em;top:.14285714em;text-align:center}.fa-li.fa-lg{left:-1.85714286em}.fa-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left{margin-right:.3em}.fa.fa-pull-right{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scale(-1, 1);-ms-transform:scale(-1, 1);transform:scale(-1, 1)}.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";-webkit-transform:scale(1, -1);-ms-transform:scale(1, -1);transform:scale(1, -1)}:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-flip-horizontal,:root .fa-flip-vertical{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-remove:before,.fa-close:before,.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-gear:before,.fa-cog:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-rotate-right:before,.fa-repeat:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-photo:before,.fa-image:before,.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-warning:before,.fa-exclamation-triangle:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before,.fa-bar-chart:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-gears:before,.fa-cogs:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook-f:before,.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-feed:before,.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-save:before,.fa-floppy-o:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-navicon:before,.fa-reorder:before,.fa-bars:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-unsorted:before,.fa-sort:before{content:"\f0dc"}.fa-sort-down:before,.fa-sort-desc:before{content:"\f0dd"}.fa-sort-up:before,.fa-sort-asc:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-legal:before,.fa-gavel:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-flash:before,.fa-bolt:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-paste:before,.fa-clipboard:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-unlink:before,.fa-chain-broken:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-toggle-down:before,.fa-caret-square-o-down:before{content:"\f150"}.fa-toggle-up:before,.fa-caret-square-o-up:before{content:"\f151"}.fa-toggle-right:before,.fa-caret-square-o-right:before{content:"\f152"}.fa-euro:before,.fa-eur:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-rupee:before,.fa-inr:before{content:"\f156"}.fa-cny:before,.fa-rmb:before,.fa-yen:before,.fa-jpy:before{content:"\f157"}.fa-ruble:before,.fa-rouble:before,.fa-rub:before{content:"\f158"}.fa-won:before,.fa-krw:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before,.fa-gratipay:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-toggle-left:before,.fa-caret-square-o-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-turkish-lira:before,.fa-try:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"}.fa-space-shuttle:before{content:"\f197"}.fa-slack:before{content:"\f198"}.fa-envelope-square:before{content:"\f199"}.fa-wordpress:before{content:"\f19a"}.fa-openid:before{content:"\f19b"}.fa-institution:before,.fa-bank:before,.fa-university:before{content:"\f19c"}.fa-mortar-board:before,.fa-graduation-cap:before{content:"\f19d"}.fa-yahoo:before{content:"\f19e"}.fa-google:before{content:"\f1a0"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-square:before{content:"\f1a2"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-stumbleupon:before{content:"\f1a4"}.fa-delicious:before{content:"\f1a5"}.fa-digg:before{content:"\f1a6"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-drupal:before{content:"\f1a9"}.fa-joomla:before{content:"\f1aa"}.fa-language:before{content:"\f1ab"}.fa-fax:before{content:"\f1ac"}.fa-building:before{content:"\f1ad"}.fa-child:before{content:"\f1ae"}.fa-paw:before{content:"\f1b0"}.fa-spoon:before{content:"\f1b1"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-recycle:before{content:"\f1b8"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-tree:before{content:"\f1bb"}.fa-spotify:before{content:"\f1bc"}.fa-deviantart:before{content:"\f1bd"}.fa-soundcloud:before{content:"\f1be"}.fa-database:before{content:"\f1c0"}.fa-file-pdf-o:before{content:"\f1c1"}.fa-file-word-o:before{content:"\f1c2"}.fa-file-excel-o:before{content:"\f1c3"}.fa-file-powerpoint-o:before{content:"\f1c4"}.fa-file-photo-o:before,.fa-file-picture-o:before,.fa-file-image-o:before{content:"\f1c5"}.fa-file-zip-o:before,.fa-file-archive-o:before{content:"\f1c6"}.fa-file-sound-o:before,.fa-file-audio-o:before{content:"\f1c7"}.fa-file-movie-o:before,.fa-file-video-o:before{content:"\f1c8"}.fa-file-code-o:before{content:"\f1c9"}.fa-vine:before{content:"\f1ca"}.fa-codepen:before{content:"\f1cb"}.fa-jsfiddle:before{content:"\f1cc"}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-saver:before,.fa-support:before,.fa-life-ring:before{content:"\f1cd"}.fa-circle-o-notch:before{content:"\f1ce"}.fa-ra:before,.fa-resistance:before,.fa-rebel:before{content:"\f1d0"}.fa-ge:before,.fa-empire:before{content:"\f1d1"}.fa-git-square:before{content:"\f1d2"}.fa-git:before{content:"\f1d3"}.fa-y-combinator-square:before,.fa-yc-square:before,.fa-hacker-news:before{content:"\f1d4"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-qq:before{content:"\f1d6"}.fa-wechat:before,.fa-weixin:before{content:"\f1d7"}.fa-send:before,.fa-paper-plane:before{content:"\f1d8"}.fa-send-o:before,.fa-paper-plane-o:before{content:"\f1d9"}.fa-history:before{content:"\f1da"}.fa-circle-thin:before{content:"\f1db"}.fa-header:before{content:"\f1dc"}.fa-paragraph:before{content:"\f1dd"}.fa-sliders:before{content:"\f1de"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-bomb:before{content:"\f1e2"}.fa-soccer-ball-o:before,.fa-futbol-o:before{content:"\f1e3"}.fa-tty:before{content:"\f1e4"}.fa-binoculars:before{content:"\f1e5"}.fa-plug:before{content:"\f1e6"}.fa-slideshare:before{content:"\f1e7"}.fa-twitch:before{content:"\f1e8"}.fa-yelp:before{content:"\f1e9"}.fa-newspaper-o:before{content:"\f1ea"}.fa-wifi:before{content:"\f1eb"}.fa-calculator:before{content:"\f1ec"}.fa-paypal:before{content:"\f1ed"}.fa-google-wallet:before{content:"\f1ee"}.fa-cc-visa:before{content:"\f1f0"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-bell-slash:before{content:"\f1f6"}.fa-bell-slash-o:before{content:"\f1f7"}.fa-trash:before{content:"\f1f8"}.fa-copyright:before{content:"\f1f9"}.fa-at:before{content:"\f1fa"}.fa-eyedropper:before{content:"\f1fb"}.fa-paint-brush:before{content:"\f1fc"}.fa-birthday-cake:before{content:"\f1fd"}.fa-area-chart:before{content:"\f1fe"}.fa-pie-chart:before{content:"\f200"}.fa-line-chart:before{content:"\f201"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-bicycle:before{content:"\f206"}.fa-bus:before{content:"\f207"}.fa-ioxhost:before{content:"\f208"}.fa-angellist:before{content:"\f209"}.fa-cc:before{content:"\f20a"}.fa-shekel:before,.fa-sheqel:before,.fa-ils:before{content:"\f20b"}.fa-meanpath:before{content:"\f20c"}.fa-buysellads:before{content:"\f20d"}.fa-connectdevelop:before{content:"\f20e"}.fa-dashcube:before{content:"\f210"}.fa-forumbee:before{content:"\f211"}.fa-leanpub:before{content:"\f212"}.fa-sellsy:before{content:"\f213"}.fa-shirtsinbulk:before{content:"\f214"}.fa-simplybuilt:before{content:"\f215"}.fa-skyatlas:before{content:"\f216"}.fa-cart-plus:before{content:"\f217"}.fa-cart-arrow-down:before{content:"\f218"}.fa-diamond:before{content:"\f219"}.fa-ship:before{content:"\f21a"}.fa-user-secret:before{content:"\f21b"}.fa-motorcycle:before{content:"\f21c"}.fa-street-view:before{content:"\f21d"}.fa-heartbeat:before{content:"\f21e"}.fa-venus:before{content:"\f221"}.fa-mars:before{content:"\f222"}.fa-mercury:before{content:"\f223"}.fa-intersex:before,.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-venus-double:before{content:"\f226"}.fa-mars-double:before{content:"\f227"}.fa-venus-mars:before{content:"\f228"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-neuter:before{content:"\f22c"}.fa-genderless:before{content:"\f22d"}.fa-facebook-official:before{content:"\f230"}.fa-pinterest-p:before{content:"\f231"}.fa-whatsapp:before{content:"\f232"}.fa-server:before{content:"\f233"}.fa-user-plus:before{content:"\f234"}.fa-user-times:before{content:"\f235"}.fa-hotel:before,.fa-bed:before{content:"\f236"}.fa-viacoin:before{content:"\f237"}.fa-train:before{content:"\f238"}.fa-subway:before{content:"\f239"}.fa-medium:before{content:"\f23a"}.fa-yc:before,.fa-y-combinator:before{content:"\f23b"}.fa-optin-monster:before{content:"\f23c"}.fa-opencart:before{content:"\f23d"}.fa-expeditedssl:before{content:"\f23e"}.fa-battery-4:before,.fa-battery-full:before{content:"\f240"}.fa-battery-3:before,.fa-battery-three-quarters:before{content:"\f241"}.fa-battery-2:before,.fa-battery-half:before{content:"\f242"}.fa-battery-1:before,.fa-battery-quarter:before{content:"\f243"}.fa-battery-0:before,.fa-battery-empty:before{content:"\f244"}.fa-mouse-pointer:before{content:"\f245"}.fa-i-cursor:before{content:"\f246"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-sticky-note:before{content:"\f249"}.fa-sticky-note-o:before{content:"\f24a"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-diners-club:before{content:"\f24c"}.fa-clone:before{content:"\f24d"}.fa-balance-scale:before{content:"\f24e"}.fa-hourglass-o:before{content:"\f250"}.fa-hourglass-1:before,.fa-hourglass-start:before{content:"\f251"}.fa-hourglass-2:before,.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-3:before,.fa-hourglass-end:before{content:"\f253"}.fa-hourglass:before{content:"\f254"}.fa-hand-grab-o:before,.fa-hand-rock-o:before{content:"\f255"}.fa-hand-stop-o:before,.fa-hand-paper-o:before{content:"\f256"}.fa-hand-scissors-o:before{content:"\f257"}.fa-hand-lizard-o:before{content:"\f258"}.fa-hand-spock-o:before{content:"\f259"}.fa-hand-pointer-o:before{content:"\f25a"}.fa-hand-peace-o:before{content:"\f25b"}.fa-trademark:before{content:"\f25c"}.fa-registered:before{content:"\f25d"}.fa-creative-commons:before{content:"\f25e"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-tripadvisor:before{content:"\f262"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-get-pocket:before{content:"\f265"}.fa-wikipedia-w:before{content:"\f266"}.fa-safari:before{content:"\f267"}.fa-chrome:before{content:"\f268"}.fa-firefox:before{content:"\f269"}.fa-opera:before{content:"\f26a"}.fa-internet-explorer:before{content:"\f26b"}.fa-tv:before,.fa-television:before{content:"\f26c"}.fa-contao:before{content:"\f26d"}.fa-500px:before{content:"\f26e"}.fa-amazon:before{content:"\f270"}.fa-calendar-plus-o:before{content:"\f271"}.fa-calendar-minus-o:before{content:"\f272"}.fa-calendar-times-o:before{content:"\f273"}.fa-calendar-check-o:before{content:"\f274"}.fa-industry:before{content:"\f275"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-map-o:before{content:"\f278"}.fa-map:before{content:"\f279"}.fa-commenting:before{content:"\f27a"}.fa-commenting-o:before{content:"\f27b"}.fa-houzz:before{content:"\f27c"}.fa-vimeo:before{content:"\f27d"}.fa-black-tie:before{content:"\f27e"}.fa-fonticons:before{content:"\f280"}.fa-reddit-alien:before{content:"\f281"}.fa-edge:before{content:"\f282"}.fa-credit-card-alt:before{content:"\f283"}.fa-codiepie:before{content:"\f284"}.fa-modx:before{content:"\f285"}.fa-fort-awesome:before{content:"\f286"}.fa-usb:before{content:"\f287"}.fa-product-hunt:before{content:"\f288"}.fa-mixcloud:before{content:"\f289"}.fa-scribd:before{content:"\f28a"}.fa-pause-circle:before{content:"\f28b"}.fa-pause-circle-o:before{content:"\f28c"}.fa-stop-circle:before{content:"\f28d"}.fa-stop-circle-o:before{content:"\f28e"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-hashtag:before{content:"\f292"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-percent:before{content:"\f295"}.fa-gitlab:before{content:"\f296"}.fa-wpbeginner:before{content:"\f297"}.fa-wpforms:before{content:"\f298"}.fa-envira:before{content:"\f299"}.fa-universal-access:before{content:"\f29a"}.fa-wheelchair-alt:before{content:"\f29b"}.fa-question-circle-o:before{content:"\f29c"}.fa-blind:before{content:"\f29d"}.fa-audio-description:before{content:"\f29e"}.fa-volume-control-phone:before{content:"\f2a0"}.fa-braille:before{content:"\f2a1"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asl-interpreting:before,.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-deafness:before,.fa-hard-of-hearing:before,.fa-deaf:before{content:"\f2a4"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-signing:before,.fa-sign-language:before{content:"\f2a7"}.fa-low-vision:before{content:"\f2a8"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-pied-piper:before{content:"\f2ae"}.fa-first-order:before{content:"\f2b0"}.fa-yoast:before{content:"\f2b1"}.fa-themeisle:before{content:"\f2b2"}.fa-google-plus-circle:before,.fa-google-plus-official:before{content:"\f2b3"}.fa-fa:before,.fa-font-awesome:before{content:"\f2b4"}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto} diff --git a/vraptor/src/main/webapp/vendor/font-awesome/fonts/FontAwesome.otf b/vraptor/src/main/webapp/vendor/font-awesome/fonts/FontAwesome.otf new file mode 100644 index 0000000000000000000000000000000000000000..d4de13e832d567ff29c5b4e9561b8c370348cc9c GIT binary patch literal 124988 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ÐT?>-5aYhU|+1c>&YMpPK5x#-mbV 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'NS^o{z1ZKlHsAybrl=JE7AP369ntV%vB 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 CDx5C> literal 0 HcmV?d00001 diff --git a/vraptor/src/main/webapp/vendor/font-awesome/fonts/fontawesome-webfont.eot b/vraptor/src/main/webapp/vendor/font-awesome/fonts/fontawesome-webfont.eot new file mode 100644 index 0000000000000000000000000000000000000000..c7b00d2ba8896fd29de846b19f89fcf0d56ad152 GIT binary patch literal 76518 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%0DyT{kunD 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⋙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 z + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/vraptor/src/main/webapp/vendor/font-awesome/fonts/fontawesome-webfont.ttf b/vraptor/src/main/webapp/vendor/font-awesome/fonts/fontawesome-webfont.ttf new file mode 100644 index 0000000000000000000000000000000000000000..f221e50a2ef60738ba30932d834530cdfe55cb3e GIT binary patch literal 152796 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

=v_rA!CPE#mM^4@)}X7qf;At+v)G*FZd&; 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 ALjV8( literal 0 HcmV?d00001 diff --git a/vraptor/src/main/webapp/vendor/font-awesome/fonts/fontawesome-webfont.woff b/vraptor/src/main/webapp/vendor/font-awesome/fonts/fontawesome-webfont.woff new file mode 100644 index 0000000000000000000000000000000000000000..6e7483cf61b490c08ed644d6ef802c69472eb247 GIT binary patch literal 90412 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%0Ded40&XED0GYFoIh+AV*?9!MR5pBW?X_8Bp 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 IH>08b4`|GD*#H0l literal 0 HcmV?d00001 diff --git a/vraptor/src/main/webapp/vendor/font-awesome/fonts/fontawesome-webfont.woff2 b/vraptor/src/main/webapp/vendor/font-awesome/fonts/fontawesome-webfont.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..7eb74fd127ee5eddf3b95fee6a20dc1684b0963b GIT binary patch literal 71896 zcmV(_K-9l?Pew8T0RR910T|c-4gdfE0#wKV0T_7z1ObTv00000000000000000000 z0000#Mn+Uk92y`7U;u^!5eN#1yHJMdO93_lBm5dc6WY?}?kwoQRxJ870r-=0+y%ha*vYuUCUJ?P7_3+uzWik9+_!7nxs;V)%a4RNH^ zc4m8B@+|{zEa^4NCck}}OyG(NDl>kjf{My9O=ulWG&(tIM-}fv z6A!D373NE?xA$4-m)kO95k0xyK*tYODl4ALJ?*1sxjWyV^(D%2EPtO@;-V@{l;!qur0sm1n1+kORV!d6824Ou#3nIYjy1X(qjdu#foYPG3KvYpHl^J$>L@W~;6gmmj7y}hY+ z*%10elngK%mf>)kmtk|3oM#F%vwyz-seUsri!-}CbFaX$3j#~BowRibi*&DU5|l^-9DojV1KmJ3&?*~yNK2{0#ZVN1ITpSs z)hb)%mHH+owyJyZ;=@2|SH_isxWXiDHvg^j1gB#B94B6P$PL*D(x<}Z8c<=-s-GKJNgzh3?2GDRN3z0T&pzuKy5 zEZSgX?$}|6u@yprg9vvZe-G1=dzY9MP9KfI`m zF9dV4DyyHdvHNuonakq%Z})dn-%>?ILFE+}GmvqYT!PvdS_xd~FC$J2OUk!l z%#~<%=S>TDVW41I*<5F4PW=Cb00Hpk(YL$<@W$Mu>H*$ccI?5)Ybyi#10WFyc^d*9 zT@NTbOSECo`VV?Eur>U~%9S8~$K91%FJ7^dkl=ePDPVU1KT4Jdkx*U?+GziVn*ZNm z5Ly&~RfHJE5TKH{G%~ix3^0v@=3$)LA+`D8|9u8QJP8m}&P_bPBfQPx@EC?6#+x9u z_1@$IZu4!I$0sO?FCpgIyQv4-cKPrfii?1^7rz$?-~k8_VYCtR5D9|~OhT-9L7|MZ z&De)b9BvT`c?5=3T5ZKWH2FWU$uXUn9o&g#QBPhznSb=-(SMJQ-jlvWk2wzDF+&Fj zixv%P5LUoIrnI-)X}9XCEb=T(;%1}UX}6kK6DwIl!(PUnZ zodpVo#2~T5(+Y{UT;*~#?fFdq>}+jWzVpj zD^#_xDk=o!(`H4DWN{OkJvuTv8G>h)GALN?mvB`^Dw6v;T-*|(!jWpiqsT=X5~if+ zT4dex{{WPu<$a27AAm8mrz`uHrR?V_Y-t%O9ovX_rx3$c&hVA6Bo#2 zibMgz3{CqOigan0Pz_xxP-+aq|pHZq*@VyYNgA0bOntBr=*fq$trp zf#s#7I(cL%p^{>X@XF{2lg&y7f}C4Q(;7v;kT#5viE9Wy&5+EwCzjj)kRrnuIJn~d z8SwB(@QWf7H*Au8PaAU+2!v2Hh)RT(Pwoc7+>>S!ny{Qf_$DcjfMiNw30-cw6_;oT zX!TY6tNIn@lSpj-W&ED<{KH5V1Bvl?jGsC z`Q`?Ajw5S8mx(Y~Ib>C?OKO{rN|o7DG{A!W zKxQzo9Pl%yi|_Dq0=LZg_SM&WL6iam@eQqQ_k1MjZ+}l6>AlS+Hyy7(u#cGxs;~Xc zJcK^~TJqb>FOVsX?3mj#XLSbATwbev44iR1j7dJ=qq>QRaJ&shK$roRrpOwmVOFnY zk<*Uh(7UD^95cl936EzFwE$se_i4K1OLLI3yD1-LN?r46eN&0ddyx{SOU(6ewwp-y z=bgwyta}0?KhM+53EWKrej{?$(j>QR0C<15+oE^SCNT(@peREXs>Rn&ef#7Ke3=oA z_V!J?3^qY9^Dt-|LjYLq@~~|4&@Kf}tBxjR+bnrrG#1y_4jcr84UAJ#f}xkqIKI6#y3LRuRw7X9+t-{VpMl=_71_HYDN^Hev z?aq{SHIAAMAK#cAZ@TV4Y&A1-Po%t8GI;;ctaZLWtj-=ynw;sG4qs?4H(YmT*6N~l zH@miZdmd1TpS5_9)aPnNHa@sq{MO$URk71S0B1)Mjjh?ASS}d$zvPlj-z?|pt%Lm2 zzKS4|W17$mRVh*>SV0&JlpMg+R2#D}vOOhYGjpZZZIkO}V!Gg&iY5%kZpc|zna*gP zgL5{;u;|*d>#OP*xi++MzI-X5GNr*Q>*NnR6PnLAGAd>V^I52JGd=sosl8eXxHT<4IFVcG1Jv9|5oy6{Yrq88XTyGE4pP*}UJPOtX zdw({brBa!E7I2Jbj;;<5E9Y0+C!V>!*^!3nZsTxfR>0XAR# zvlqsjOG9K#ST$fs`QcYK*tM-S-&eu}E0+Y{l_F)N*OU@VG@G?yO{q>vXdrgGPAQDT z1p`ir8s`vmTh}V{W#Cc2+SHBhQO&7nr5VO}L2-jdJW z!tr90Qc~v%E((!#Yy5{nWaqT?G-%Ya>CM2{ts^~}Yr#1*_;OX>9e5VMoG^7yp5 z(Xy!snhKviAS%84VECkXgF9W}aIB?NERQbwm%<*G5pGX$6?aTDuwawnI7ARFdC}ak zwed&n=_i^jF)t<$tNyi)9$PBJQTc69k&a8Dl`jIiKW#tY50ZMs|;h8LrF#Bo~_5egI$UBiPF#4>~$OIauLay&K@ zX^#xuRO#VpcrY1`4~4XZi+w@)h6iXa$suYibVB&I&r|796R_bv)76ptIS^aJ!Hre- z&kJ;ihj52R-@c$m@av0uDnBbKX=J;vziLB13U}cY>hI`p*5V2JM>k;D>m>Ud*xWKL zy!2PNqc_$vf|DAxVNpw}N}ne(+{xIG{Qio1NuhECG{Rn#YK45b9q}Yb4TWy-qNft> z=p~-^>r024RwC()MD7NG8{Xh5I9|sk5W(lqU0TH{h%Vlm`_OrJMaM>6qFnTrT<2@1 zShLW`*nRdGLad2(GqOcS-t4k0XmI0X2&7uhBgt8^#|KAJq^rMq(HA|DHj?eHH~p9< zsJ##xGHjB7*|w{k2FWBNRM2XtC@i2wpP5^&fSm7JZD$Z_S=P)yg;*Mz%c%JDnrq@Y zXhu>|xV}M`lyN#JyxD@eqseVU_b-SPSmoSmNK*OU|sZ0d(*s%Kb3MY;B+8{X~j1ICPM?FR_k_x$rs zikcbS^{mX+pp4uXN!aM+aB$&E7j;}o+bpAe=_-JfaOWYObIP;0oQb%4wZhZZ?A&8s z3(o~>k-Ph3m#=W)6jKPlVe3Mx}X#Ch5)4y95VuCAzuMi;`fhkJLI})p)z-c9*Zwk*{R! zoFhPXr1LjY60$HcnO7gNx5%q%-p$n9z%uzDO+?1BJ6cS!N}@$ zJGcJ2rsBMV1>n2YOjmmk5Sq0~MD?sdm~X=x<7Q$sHjn7=x@C4U0nRrs1bUysU|FcR zbgqNN0=2AlH*qiIweEX0wP;_5sLalehDK&)%FzEI6qSgmk4e6N8C&jGXzMeg_S%~J zRJ@?BZ_x{Zs94*~@=9QSz(Cmj8=iUFvX)AQkL7oS)k5Zkb^CUp00S&&L2%lS8t`jH zXee`KcDjwn-I}<7xc%fMfgCCiV$+F>0cy98YsQLsbm?uz<; zo<<#oY6S1*plE5h@up~87iwLuNzy1e-Kdd}|s zHuY&lM)(BZFh#4}IRPZWvmpH2daniN3yDPC4}>tT;n@|Wbm2VErvS_Kj$`P@K}ip+ zf`3{JnNf$!C}RM}moU!-pO@e&*AYAeQ{sIdA%fB#`3{>TXGxbxLj{S7J*ih~|= zOy!4Vm0Hvq#Zf^&BBunwW)*ok{~^U1))`tjSG^(i!*>nuRw=*enD(=Z?#ANzcotCv zb*U(FfANyZ>+puUc`f;XNH`dI8QNwZvNNl2lXE*l>9oR7*r5vBlWR7=!Txx6fiL+m z=kUhG9zyjtG;L`Y^U3%ijZ&J1kkDL2FqBu)GG!14sdjiW`|$Gs9j~_K(Vl%!M9S(Il?dnH%lK zv^Qmpe)<~=rHk9>Jf<=MHstZ;(2dh+{@Xu49$dJx&V#=)>1QUuAYmLL86g0cI?DaY zOh6jD6{PTGtZk5jcXGR0X8dw+GJi}7X?t*!muZ?)4?PTc9c*OegpGws;aIgwCPAcD z*6rRKUB)oD)Rg6GG7^;_<&-LG?f<`0<&Kto>79m(+r>#b@~e~<$#;mW=6xGOqvh=+ zHm81{kAIXL$su|mqnh=mFV>$sfJ=Zw93;r^s@!!ScUHR+&D(Ab8vaBRoka(M5^QAj zE`8}Vxa`@mJjrC093k|D-b=7(wJRf+)=kM0&ER869hwSAS|gJ)R|AJsLPAhc=#m2zRBr9#=dK-oESBt5vPq%@>ch>>aVi$+hP5ap)n>L^QdM6#4tB2fav#1q1# zx$$sPBk4N&Q}6Haya>19_MI)nR`AXS;DPUKV)?LdJ5IJ0ZcS`3QeSe5(YDMIkERg7 zqa@>FPgHj(cp$}6b=$gu>G0gfJ38<$7~*tWdv^KvHkkx1Y+@NtEWj8letj7%`{!uF zV$0JpF~Vqrtc^5l6AVv|ftziV%hV2dQILX$;wbSCO|5j0gPal*kg$R_Z(t!6zkx?6 zd>suEuqruqYEBHY7sB-7Mq0M#A5lqcJ3RWTAvBAaBP1;aSL{?kIdWl@q~%@sWga43=cx;YfCu z(K3u|?K(`;LG)Zibaz017;IzdLFE+;_v%M z$j@^#eua_G}wUL8&CQvDjh3$X~fN!g2m)ZXLx>x*MdpbI_$dv?b4n* z#ac8i+v39p9*XaiL;ezLHLnSx@c!uFe;tpsm7k|K=J)OP6n0i51YB67LL1YRphO_- z^oKRuXAe2ob??kazS*H?+uSXeiy&8O0&Od}c;T~DI>g%o_i9o!LWOIHf2+xl)*h_3 ztdVz*9C9_W*sg?rCJ5*CG~rCy%f132q@BYMu5(Az%KMv)-NG9a4=f`$mPg`l6F#!P zPZ<&8!tnR?%dcsrghb-8onSH^PJYQ>A)>PqIqy$W{Xc5O;(soS>ChUz@?T5*FvfvG zZuH=*Cs&V4#M^A5sQFo-t_B8 z<+h;*v9>%Y)uP)xw-0BLC4iIrWj^|=Ie_Yy`Y-FzB_{*=)kyRaZ9bq9Z2E+lG>T#D z|0T1Y%(FY@o_S;@XV+>ub(~KCjfj=C_GFn>k1%YF_21e|>xET2xUCY0|NkVY@u0kG#-Sl=VH%hbHBe^{(sl4NHLU zD8NmDr|>yRz=;t)h+SC}ViOJO!r62v1P4X74q<1TMzTn+^`J&|?L)4GvhotG)@7AZ z5Tnju%xo$c1XJ2%?O!ELvAXZ1y6l`Ia~5dZI*SvUD4fnroK(lG`J7SCrPK%L6ako{ zm?SDzng_F1t1WTm(!bn`7;DnkEuHzoNuy525+N@gj-`s}SC*riDpHf8YWdA7R_Zxw z)ILVLRN+KfRWgwqJ2O411l5=)nU;bnQtHvFjF<)V<<|_$c?Hom$GO-M9`eK%LwRnX zM=gx;$^G~70;LGI_9Z-*Jxeh7~QK{bpC^=PxP zlVC->h_tUEiQH{5IyzV(syS1yD*!gZzvex;nGzVclJig{NzCf?5$0f0%D)u748e6b z57~b>^5?bVFCA~YIH~eN8n1FoeqN4;qg>`pH;5R%rD= zF3YkjVON2%t4zzL@Xjdvum@jzOvSV65vSfVkk8Gpoz}Fy609-EVS0jO=iQ?q zZ!+E9(8&BRZd|!Cg*+r4&!zh`l{6T_R+ql&moQEoDx|AT09x@^mGhBQV34MD!Q~!9 zKiige%VjLyhG-{i$O8hNC@-Icc&~kc6pweWk*VxhaB8ilYqf=6-gL^Ui+r+KM9(wmrjp5M>BhJOJa1#DEsr{oi@^*RmVy*2hc<|b&A@g6(@VQ)cN#1`wse9} zvjNA?{a={<^fDE=AC?m@`(0UBSdq$?jI*lIDqdGnvG@C2`YX2E9BlSxA>I%U@PF3(J+M ztfsBhx8>NCgBL2iNgQe04N2QIv-#QW>WipmG0+JhP&>pGMhK-H+qBAe!+8&nE9_C| zVAgmDG59jeVipd0hR7a}?|HQV(M+;uE{xme*RwAyKh#=_(~*LD+IOpIcYlB0sPnS7 z-w*BMv$9OCf5AkUd2*+|b9Z4#&aD@E+F=P69(Ggn>$2{hO{$%eki%9IETpd7G(C}B zN)JLv3>!n#Ll&9dD_H+4;|TNqQhNw}IkO<$6@L;2(?m=NSan0+I1HJuM={%_Qn3`B z;L2s0oW2#|;-jA#mlA5ZZ3PqGI&&1l&qv;q;L)SrFM7z+247M@9 zE5ML(Ue^|t&K)hSe2#AIU{yG1^yM$a?j}6@ZFI8*jYmQp+T7c{--pv_G&dS$gv{thY@% zso^>8Xp9xyfulP5A z&Ymi^Hn37#N2sjTp*de0$89+zBd_{yiY_M}`~GUBa7Fb=MsDw!F1tpi(5&}upEV5+ zc#Xq>$$onGLc^FFcAhOHdVtGM`}h7k8a7R`(=%6FW|`Ss5@(FDb=EZWGUcaV)q&lK#75UB6X!8(A%gQm}-A0g?6;8(_EfrEfX3UsLXma2wWxrNT zD=b=W-nP({n>QirDyOAHWjQJxUoBZjL`O*kD_E?O_>s#*zv61#VX`4gkw5ubae8XXRy-$pT}F*%7So`7 zC3LAHOQxGfDmQ2ZJuunSVj<5XgWR}fTA`^|p3-BX5Q;VpLkM|`H2x{t^HWG9uEnv| z4MUAwe5YvYM3MqeI?L1db^3!WNs_!W7Y*u;y|9YP3+ii0TycpPk18yl{zX4gzfCwA zMVlxk04U0ycwDgu@w~zo9VC_lAEQ8NX!cpBG)%`3DJvzVM%emVC#sf#_@f>{@2fo1 z+E@;+GYYja*7Qm>d$50OqJ8Zn2Q@}LhaQR zIzTCNR0t)^CzB(B#fa)wDdC%%)Im|(skvm3^pRneYzv^d-wp$mlt?a$);UD0+)+xK z=KoPx8jF-oA(g@)54w(CDk24y57Umjnk)vk;VLPq9KPD&aeA7F9Z*(CUU8$~S*aZQ z%Ed{=Qg}MSX<&TEl$$)1h@Gg++oAO&rK*=!i@rS2L^V)m&O|1z^m{NjkU&sDZ7X>- z7muSSBBBaY#cR<-sFAXda`f8AV7zFbch!2eYzVdH9Mau^DJ~^pNdDdRL12Z7x6mLNG~%JO65XGv7phC=n6oE> zptAKH#9Fl!n40TS)UFwt9BRR|K1HvL4O8~M6|W79PTYWoLV*eL`EU+%#?}%F71I;R zr5;USc?dG8q?>J%BYtzsy2qHJ0viUI{?qoER4bWAY2lSHBzFrR_ zy-Oc5B?e;KgIujUDaweBs^%CV;i6Dt z%E@}kToytRZoR;{r20VH&6n=3AoQk-SU-WL+cJP2>w;Afj-n$*^x9#YrH^NEhSX_X zF{>d)s!AhNDzqTZW-p-;w;)CT*m%m;PtY1qDkr&% zk$qtlV7+&;MJ3Zb$si;3BC7T73AutHAhS#Egpy)22p?pwC!9RtHH90YE2G**2YObA zZJlg#+3{rBcg5YlBNq049((6%9{Dx2i}LOpae4d<)hvYeJ}$444j56X*w4mHa*)r3Hg#W4PGZc`M*l=Yl!gi3dFvo+kme;!U`i}0K(dp8A3-nvJ zC4~CbGpb+URm9O`@3w&8B!6Od=LN0X<ezUYv~I*si+OJ^6Ro! z&r@lX_@lQnqv;Gg7lC6C0E943?jzaAN%2QB7kg=Db(#PI{-155Hrix1Iu@Nk(lFjS z-H*j5;(3s7;N*_3hAAIaar+XD1rCx{x2WZ5V~QQZO&7%UF_-hIoe!yHFTtr?(K1R- zBj7=rdnPRSB3PJ{lC*`fE+KJiL5>V4ono)W4unO9)zviz1g#vK4}pg}!+`mV_ZRB6 z0RaUH5~LT|tlX7VhV}s+WS#Vama}_70BV<*1_}fO0uns&&w~=9__Ey&@b7Ez=Y{}I zb$fv)4N4a6L9Tzpgx|j)b6a4ugT*M~@mhZ}syCdTwQ{_5itJHj7L2!6t_r(Wsg`ZY z+^$etOV|M8?Qbn5GlFAw`_Q2u^Jf64dtqshX!mp7E@MAqgpECUKnAJsrQ^n>60OfN zUg(2JW1Q%Yty^SqqM-^6GP=G1o&moPJN*5Sh$0$ZTV&f6*gVqHF~#60aSK#+Nm4sylw~t)AG~wOWa*ZE6s?U+4A>TiB}?~)_os;Fn#93B$sHiJp~?P zZ56^)(~>Ey;V6_<+JJBj=HDoMV~3CHdi$3#f|u&ZT)_{FDSd73G@Y!W0)G zRjqE%p%JNR+KafkBNAA0gvW`6t)xl{cHXm%DA&v>x|TRdjIf4Y=pZ$~={Lsh;m)M& z16#WbP_EkG%BW+Xq5klP!KFpxN7AaioXv&Oub`j0Tf|o(2+N@g*1cjV2&U5-mE4|6 z-cTp39j|Cz*a2Fbz($2H|1JxfwaHxp_B9A!3u4PTVYW+`Lm`kW9x23{Dgp0L05M$p z3%iOk#QsVhC&RJ{LMN1~fu+zKhL_~);SVYfd-7X98niik3~^*$r^9gBUY~86mSCG0 z++cPS?Q2r#i_q({JZy2gy4<#}RB^!0gk{VKRi7?npdB&1CoAud&Dl1`?lka@!j=Y2qL=sQ2Ky<$JdPyXH^N!yOG)>$o?ZCJ$sIsf|Vk zmuku-n;a0Gk{Hl2X}*3+4c;)gmP?`Qe!6!@{zWbxbiVW(|}#%bw<%R>0=W6<&xuB`!{*Hy()Y%2&@I-@!%K|DuEL^Vm@6`Q~+2kMgz)t z%O@bmdx_P=5)4rDOrlGGm})M5DO4g+;{+C{v6R#sP%(n>Ses{Q@*}SrFB$rTUm(8p zxhE9y9$r?XrLj|+5yo6OESGZkkp3jIHC2Wfg60wM;WQ7rB{iVv=X>R6X!js~a|k|| zaxU9QiJ<77Q7)*o8kGm6E)8HdUMpB55_P?%hT*%#_nSE%y_mk+Gd3*S8c?e38(7awbfK^z~Z};x7DQWo*IL)s6gm{SgENK0Z!AHb;c(jq&zY__lQ2 zkOuV)S2$QzWN6ULH0>(C#?q?83-qfLMGGd9JY;B0;2Rea)LEoXG|Sog501{CZhy${ zZMe!as=son;=|~D(Vic6q9~n+OjOPCwUL%r?c@fYVXv@s+{{cSQZoXZs-GDgwL|b1 z;GqKtdkZJeY|b>U;eb|Xjjq`Y;u%J?M{V8p&7xV8p_Cu_pdek={4xh`hDN!Iqjuzk zY};^m$ABU$-S-S2b@KXci|42VxJ-hp)@bm?Qj1{NRHP)ddoeR50-Shfs?~v$O0{0K1PBX{ zC()8f7^%SJ2oV_|q1sD*}^;7XqG8jw^ELl%fn0r{&Av|rml;t%W^%>`ynr7qmy zMStM9X!MK51Hm6K(T}G)oAPjdIOH9hN!CkyLW@#Hu5wOgA(7B!!oJCV12YT(Z1}h3GZ@<62 zd~md_+eA{`DB;Qh_#F!nx_#H0!Z4Qqa5OdIGwFI8g2O3+4rh7xZId22a*+>?o@d8W z*AJ28mPc${1u>t2quHizdqrNibjxni_illCOZq#Bngpd*3j79hz~@aI&x{tD@YKSjx(X4d<3S_NN^!C z7UbEf0?HfuYdexfc??vOg~A}~+yJMP^5fRQ%cL-w98K{9gd}DJ0#M?_rE{R`b#8Jj zrK+Az1jnyjEj#A^W<4r70I>zeiMn{Se|bhEd+pX4Q}HV-(45BrCVuK{T6SQUuReOd zl;PSmztnQ~AxsFAhkQg{o}iY(8&&Q=Sr;QF=}MZ4u7?;?==O)W&86R;7f-9iVA4JI z4^)nWt&u6cEOTPzx1*F=_SlE#Jy6{ixuxigQ9ip&hb}~{qfB@~sM*7znAPkDsh8-& zfml<5`*bg|F@9)mw&Q>jwq5?Ays~S3&zX+3_LK+rQufgmjfMAC^GKdDC6mzVbTI?L zum9Cn5KoDp_R|0*r4nM^V3L?pK*s`m?(B5GXM&oX#AieHzPd`++QI|$ohoQphJD;?Nm2|KZ+S4XvIHC(KTuI7DzbGd-~&II_qb#CpM zt&$0*LxGk?V{K_ScU?ZKx3o_VwVWP0>1%I#xODToKTHAaH?<_0Bthm17vd40Q|-g< zT82=Yh02%6d;$H^B==J(IyKCZ|P=SSHgy2yF|YB{HH{tO53k3vfSG4W+!-q{4cp83-n0L ziV|y;XUQUi=D~TV5!>=spl1qeOBh5CTliiPh6RX=maFIS6 zl%SCGX6jb@!3#~$_puMy=D+Pu6GMWBoX?eeOtj>ToX`kd$2IuSB!ISqBhR<(ybl^y z-(cixS3ARYivJY1OtHc+&dWXezxYikk|TB_wuUAmn%#_@fwn7bcYASY&2_fhHPz!o zc#*KVbPQ40U2FViWzS@nvcw+CE74LJ*{6Y z=uwJYY7ToZw(X&xO*PjpSV@@&hPwFzVJ>*H5pFg8N3YiG2m5b60>MHsIe6Xwa0&ZU z$wVq^EQr_bm`f0M&DXx(Sj=aUh{L;V^J8cVn5S8A5+4PZIswM^f_)itMr;eNBxz#H zq<1zfNDf<~J!y`$F`q;c?SAfGkI_f^5T4S^+Jao^UJ!MO2RLq2<6?5_di6Q%ON zC=aBtFDxTb6>G-g7MA z2^@hIDzrzA^Cqp(DthnY@4g3<1|>1bc*UBd!14oc$gZ9C(Ra(hNaci?%nEY8nT>u> zF^-<4n6)`P2|K1P&pN9hm^1izx2pyXhh~ABj4DC8bV6U>_sTF#4JvOh&wNvC6$l@3 zHF5O$y^ETb37|3R#=h-3TsUJN>Z--OV2bs^wtgKdhl|161GN{sK#&ZWs>^WkFEgK# zB|GDnyE!oiw2cm3LFE)`L*pq*$zI=b_;tFo#JD=ctF!P|POWG|DD z;B=Zcxswi59dzM`=%=6Yg;aTgUX@zTP})?`3Mpq<=9Go4DdQI;jFi&~10QLg6tKFH z=HS&5vQS1delM-p5>3JCs@Ow2XVLL!Y-CcJIF}oaBm&h^Dp@Q}Wv9q0tE{lrS~)%A zT1I50i)<{KJBi)3#S0h8N=at$!NH+3SXQ)0;qJl4OUs0`1Bfb!%bdk^Rle;46)TPJ z#P71zcGXU7X%o@W?7b|{+8SM=gtBrSe*!Jf025sD7gjH4*>4=AT0P%b%a`M6WqOPi z!K=V-d1*@Czn%t%uo=Z8srYr9s>^y!?|iQ4)-S0(nt%33X~zN1wcu>}FfaI(fMT>clQ6%XDJP#pJa|gx5_zREr-awknAn2FqZg5Sx{Gsc?B@RaFJERnzT4 zyWUiFiP0liY&UC&`T5L3vRXX9E+ypC26NrxKV4*G&NAg&3xk``jQw-+P-@& znO|mfL@m+mn`6s16ma7tqsB}u)-c*ei)pW8dZeh}5-OMKSp0-5WAKMt%)MBpCrefW zRJtrp>l%Af2{F@JSF_efGsya{;e~_&lB{%Q-GmHs%?xE&h^G${W}!GYP)cf^&!};~ zdzAQ)2LkI0QXoIT(_EaQ~0}QOuG7k<=w-rqdqL7*F)-PW+NWBRU>@w z!B*fS{(Q5OVNi2gW2eZRY;V46zt){3r?G+L6gutli{+2B#B?hq(PEY5xk(agbXp^W zyZQ-M7bYsubPkm9rTrYeYt1>HCH8#tQb^^A(eI=!-gZl1h4YWj zJZ+ zFM1g15?=1r_o<{Egn;CDkWoyIG5dLey;DSjLdCj&DZtS}b*y7)XHHD*Ilp2zSc6rn zj6dA7yhu`YJ?uvH!m&{s&+aKfjN$-deftu3O1SEsV~ntR{EYV?)IO2fDp-zH62t-+@fPtu zt4)Rn0W?;-0QBOzQW-O$0az^2H|3+j*954v7dJKGs7Fz7ke!?IV0@6k^$Z@Z2NBNN z8;=e$zvfbIWr$r53S!{>Yoe9a6`x%?8@8;R=R+kj)Y2)KzYOLah!g;a`(=r*%O20j zs;F}N4=0%ejIC^_50xE236@Q!ViZQg|EF?!WZM;UxCT=qJg8cl?cGV~Ne*%(vch(2 zj7N}Kue~B`)kzA_Dw7zE>3M&|KwnphH@bUL8lxC;n>*RaA*_TsNg7yOp5GzXMJoL) zat$Qs)W@?|yEf%ky2#kUYQ+6tr5O@d4qc(@XOK4{ln`|N1gf!TF$^t-YazEfCn)Re zyhZrJZnYdm+8%F6i16!HDpdh5n_KLL&J=I;9?U{u^V|3xrca(9edcLmM(EY1q|GCD z>aIyFhx*z*0W;DQ!FDBL5O;}^p_Xe=%@P*u(lKNUdYz%$?5;WKhNqKOo{-=DLD$8| z4j$Q${=_n?c=v=E$+=pUz_2K4pdp-UTjIRMI>e4^j>5qIWamL(sRfpWCJk4E+XeA@ zIx~6^&DWwIEu%D|8lyM-7j2@c>)`FFSWcEfi8?wGnuyb}R^^}Rz>e;(7HR?hkX`(5 zpE{Hn90;k<5(Ld!u?ia0{H%A%wv%M8?tT2hX|^1fKVZ`&HCcFHw|6B>d~3GQ)ni5^U7ysEqAkQsWB6JlO#-M z@@4dL1>er8nsq7Vq5NjB3JmY50C-GjAr~H!s+j>8y3n=TGP2`IjCb{c{!3x@dWpv& z1PDE$jI_s*;u=6wLqb&R$B)6Dq;K;R2w?~xe*u_;5tlJZHiQN)=d>1&0e~=mQd>?1 z6(1sb*CX=}JA_LxQQE<9gd1&{v+@~CBV&!MP|)G1xN0^QXHNBYlcrC|q@;=>EVzDl{19@$4pp|gTs_cGf69WQKHapw;}lsUZVU6Nh(kp{t;ide6DP7t`xm~Z%D7!vMTtu zd2dwFMKhcXjqO9ZZ4kd4(L`20l|Klc$~}9rB+oBksP*&y>q&j1q-`TJ(GGfwrE5dW zp(+?mHzP~l#7K4FcyN>5gNnlo?!Pe7`|_j~Bl8bzhv2-}?2Z~jwszfQIAlqZ-E00vdu4AoJ<>u9!4%Z{jgG>C?xPMO)A0Ev5F%-=E z?0o$osyWP*`WO5~^MQmDkN-j*^FvDusKB+TfY1%kSa9-OUe?*aN#jjz2iU{iESoJK z2{HuApjrBKF7?CwxMtDWw_|_ovsH0L)enR$@34Rv_(Kmk7%4*}%2QGq)&}d!>(*tm zD<~8j%)VY|IG_S5FKVKE4ynmpqeM#g9=YtuwGqhQnNm5^I>h2W(Ur|Zi)Z7{y7q3% zU0b&x_M>{mld!lLNXGM!m^m!W5Z@T~S4e8d?)OE-RrpoI%Qx~%N9FfzhU|%;H~Y2C zd{qENK)S!Qb=3aa>k?(dh0CRH6AVUUP}&1yS2~6tiM3@z^}?mArG-v3^ zJ5*O3;qWk4!n>3|GE~3d?7Ipp9PZv~$wTIy$~MB`+DqE3uUHB<+S3&3JhFG#>cUc1 zj0N@`qwsQ(f2G|;)4(pJ8R!s?lACoDI zk7>fmz`h9De26v_D`UlsCtesrq-^X*=B{Te99RB}64$?mxwRLV>{}EQ?KTS*P^@yR zkq{dgv%ulL^gh2|%D-|_8n&)}G`8_-;Pxws*<%FIr}x-NZJ1p~JFniRdZuV`qr}*# z0^17qGNJMaQ<(iUe}q!-SB9#Ap@Z1x#!%f$ z?9h^x6(t0lJ~?UB z5&3amHwz&S>J*KN;5ZTit|hZeC=1U|vf)Kjtt*#HbRG52?ZGH}e7Jh7I+{WMp7~=w zxG~MF`51_XIt8Mg?U;4iafER+p|}!`Nh?;+;VwpyWN)3dsU%!-X8a;(U2={_hig># z8V}IQFVz*dKN@8!k2V>sd=d%&7v7fy1$Y>?h&9avlj}Y}diz0wc6w-$0N3_pF&+qW z9FO$q1(}EU6Ed%5AaL)|KF%4qZjH%)P3hFNait%3c-7;lTOQkDc!A}gNa}h6pim$@J4VqRsuAOPlZ~RL-u`%3ga7CTF)+LD_EeYFTrU$FbpTMNr&<6~hwh zzjF^?p!%_QsvVE&&kb>A+YNe%09KzT{=W4Kg;pzT59MH92|PKm(h5j#zScYl^O;TMSq7VD82%3qq9wi;V)C~7SR zBvRA~%lvF-vFgyA)|3_09oMo5X;q_^-Mh=P&YOnik_PWov43j9rq|kn>h{Yeh?8om zz$u=f((hgv7c1(M$T1)m13AXdm&-0QoI4}dVfsHsa3^$qkJm z)&|qDtOds}u1rrD8g@^OopG#!lO_`D$EXZ;zcuk_Ia^}yJMS_LJ5Na2lms)Vc6fmk zjH%#?i)ZQdVhWm4aKxUzLNHu)rKnq5AV94A@^HUp(7awCTA^-+IatAoVILNR*UUww z$4gMfLjAhy@(&h+mLZ*@A$$k%kb+;Jwc<2F!Hejj3x6LHfQN2`Yx(02p;=+rNwL;w zE9>SbRX>mXjzr3mES3I!>mX`On;;QVQRk=WB%n&MHa?LFzrn8q;{_kxWa4qZjSqzb z0@z+W8e5dapb~I!7z>6Y!2MsOj)x*Zh9ru`4Quac-&($0_V>%51 zYkXYZ_5=hXCK48OCkqn8^ySE$=tGz~E1N^mXM&gQ>~=zrO-C)%a^8iIrF&I<@xhxk z&!7D%T(tM?V@r2F#6$vwl2LOop@ii$ilbYJ>C-J`N5yc`@&0=jln+O-_KI?6x?#4g zMQVB$RD_@^ZDag~you@(oXv0K-aBI7slQ$B?pj)1{Kcyit>hC?I?$u$oL<8XZ8HWBb>Kx# zAkeX>0=NQ6&GSFA%Ox!8$)iCHnXU73r{@EZAmpzKHN zPT3T254=T!%6op^8Tefn8^y~Jdvw$CLHC1qIs<{>GlO|@g1_4=u_-?CmYhLiKi@N#}*jNF_ia??=vyl6#ttb7?)lUI`HghjN$x|4FcJ7E`~oO7bSs2Bva=?jlR|VNtFe2PdoSgtR!>6c{U^}Gk!l+45Y?BgZO7|)lnU` zfdJ`1v*ydQC2lC5j^{sw;^sF}Iki7PdFrebAtu6$SO3LBpa;g!-MuP}t?+a5V-pi2 zrezwJO`S#@43Sg7~&X-C6qNvUVJMDOG z09z169{{$n+dAkQ%p0}6bzp!vWqFGgko4(U?zJTza=Wh)zVikvOyM@H_w_QdySke_ zcE9@q)!XO}(s=7;dswUvKj4;KHVK#~e4(lt9?sx~?TW2|2|QgRZ$J?&H^ zRQVZjUIdLy_s9k0(fOEi)YH4skREppO5^aQpAU1p1(KLcFQwrpr+krq$*?36;4Zza&^ zQP9$;Fo#q70o~Qb;S1**ek@=~nrtzPq*j>!QXL#`>l0~Ihsr{l1Z?=Ap3)fA1hcsT zE@6|^FAY;L?=`PQWXkg|Pt+~#{0Zo{XdjRk?W;D^J?QSE@WUq&D>iNlg*tKIjE z7hvd=n`*52wH5Z{nW1zb8uNdLN%oaU@o-01_eQfx53guPmS9MU5++iTjoYM--LRyE zPA13Llhl+HL8SalPqZ`>0W|U3%t8&%-1wzF4t^T`QI~4smik1&8L_U!1dqrRsVJ7M z=DI!q7Sx7LM>PTN*aOKZvbKkDysJ$I6xBOy#EcEEs)iF@;H`hcHZQ3#e29VAE1j3O zu!)I2cW)i*#i$~z_TmML6$pRneC4ipxX+B7`mZo3s$UEeP`la!2!R!OENgLfL%UP? zbQVzrE&C$~T7!!@wc`b6Ot^`d^dubASog}G!ygtYr_9YEdv40j*h0tcU+~T*qojdiDoFqf1CQy^c@Io{dB# z>Y}st7pMZevtX{4b=Rn}T)9O@n1bJ+?J^a(I_wRwm%18d|H!bi;*NQ7hz+q__Xd_H zxE`?vH?e8}iIiku5LD_7F5!Z{D$+-TG+*EQd}DvoBgX^rkw7mT;3@)E+Dd#k`Px`u zaoB5jRq)#WzF@ipfDKXqH}Bu%vjzR{58^IDAzzvh(>fR%3ybMP$k+Lb-Hmtm_dmg) zwFb(YfHAX?Sxo~l-lKvV-2wRl4fkEDxI;DZADJ>v>t7Z-dfaK%E%}c=pGrLZYL_k* zf^P3oLNL7|1(PZZ)rX(Q3F2m&&bw%Opf}I?SQyV-W=C}`$3zfD8*!%!_1!;cWE9`f z6XscKzzHAVQ2B%e|NNP6hp&74&%*fiK#cV@y(lld{6I*g zOP(LYN|Cqju%|L;chaq$h5MHf#4>2dG1a-p*DXGY_t$ z3O6iFYR;-O?7~Z={CIM@8shUe8yU61E8s2NJLS}fFieO?Qovc~N}58Szi2Idg@tap z4QSRKns+t`0-KExw(=gsi2uu#R;aoKO{JdCbW)BGPC}3`J&8F|{hzbsZsOw;`?AjF zq#anuMgw`RrH<((HNRNwx7ghc7%L6h(``I+fVXA<}8e2Q!Zgxqq*p9`C`j; zKTD~T8ddn%a56U9w;+{sIH5j*c{lWfvHvG@+QPfzat4dfTpSvLWdz8CgIl?{^KKdb zB9@^P8}BUW@_;yVs;~ul)*jngj2$HH0H+SQS|C}QaV$24cio_=;2&`IbWFMTn9me> z0nO-woS3LgZHbOYo@&VrI&tSJRdwnDEX8}LAF;IXU2&SurQ4a+8r$H|mrO<~!Bm3n zTOs*SiHHPnJ?h!%gS2RzAndtoMQY%9&d*&uD0I5%y4DZE)DB|5dMxl4Ox{Uyyss!<*%ho-wF0NMW|UMTi|dw z^pI&Lgc8X4ld@n1izfJd>oV7TE4Wu{JK}Oq#i~oS#VSw!A%+meELx@95(?AOPX-3X z<8S1xWj@ss{a}GnEbx}7pRc>jaCfcm6aL_W!#&d;`1Aso9$UgQ!!Z~Vie|YlP}a~- zxx(d@9J6Qdm5t%fJml4y0$=peVmnH@HP!(qii+u!C>x_VQ|=}ME+fhIuK0YJ{75W* z?~!$9RelLogR98>6_UC!(K?2=>2|;WqZ`Lr{!G8odTXd(VaSD?dRaECk|@eU_iX;# z-`1wjQ*O;qB{(V2HtuHO3QC$&*~ZFY#jM4(KQt=&3!Gx@kzyVKSgPDXe#B#KguL8t z&Pq|dO2*SXG8KREr;qt^X@-1ThxR_;KV`{bF}e*G^ulslgu{$J52P0(_T{+v8?F+G z-74}Mnu{v-u=5DwL4?r*-~wB2gOwy%_{nrOsunzUS&k~1Z&7iX-1N^rsU=8P(SIRL z!xk#iLM`V3(1`+S>3#aZGPVrgMx$j6(tb4gK^0q48oo=RVeivW_iVWQ)_;bpVN^Px zWKG#trLCwV70g!=&0(JE*<;QM(IYw?_y5|y{q5E1N2wHhzuA~GMCKfoi`gYvQ9mA_ zHD~owPFX{<$|&-NC5d6`R2(j_`b9&H+7+&B-&w5zBRC0U|2gv+sSI0?7QjPWi{Km6 zI~T>;-@P`;b}J*x_Lj<>WnXC@)OLGn-LvAXI?cD=iWhDMn{SyEY6J{l{6190rjF%--NaDJ z{1gI2Wvi5=Kug&C$ktL*CouXEG6X2Fr5M%s!&7SZ@>q7^!h-*PD}%@j@4AG+Gfi-u7T05PGUGgCw#l|ZfcL(sB%y{pGq?m#Q># zvbRvp3Mx>-V7PH#T?h4>6_Njjs83WR>+F=+VU4-c9nCXCN=$<5nE`6G%K*hXsQ31L2A@sE+qTMlZhGSgM} ziu5B}-enR*#J~*S)Kg+aEJCxskJE3B*G+mhxfbl7{Y(*!dQwItFWnRZ!^hR0tz*3) zXZ(77wzqd1tv7VjO3irm78!yKH7EPSH0p48E*NN5kjgBVF%xNbGrXGNuoKi%D@;b1 zRe2{T#E)-D6{VaKb&+=4RM7Es3{i(Xig_v)I@-$&MDz4s42>pK>a+IAt>*(9ax0OO z`(;Aks)q+Zuk0WatT+9BfwkG0D)QEIcFJCETbmJ+X4d%H;_YWxhiUypk2QCu`2=ul zqatS`UYl={TqIc^`m4qM#zz6D;a=Qu)V0J;!%&De(#T$2yO}?)Kc@h}=8;EZp9mNF z0Z^}SHED|KUF{~FIvO<=xGMP$l81?u(Vn~-!1T3(SQ(-Qw+z1c%>+0G zE7_@JKd=-sT|Yf?sD>W24;ob&GV4__WjK>J;w$~{CZcd3mVQcs6wwH5vSi3H~>e=l5sa|QQ zsJ*heE6%7$Pn9-y6OovY^*`VY{t{1wg;pmDHRcl!Nf? zY@vnEoVQT-w8xKu9;6I!TIGPq;k4`eafa{v~3=-THmX9PR#AGI4Sg z0+dMN)aZ#3gxv^ck|1^XCj^g6e-fia_7_=QAi~MSr@$jpV5$Cr8|Ya`baBOSmxLhs zU=kmpUl%FQqWZrUx74c?GfAqj+0oEjsraI0I<0~a>O#}tQX#Iel2|KMt%+h7=fw6P z0F$MZT9_U*{(uo~_oL!K|J>Y0!C;+M zCyzwb-t&V8LPZxAWSGmWAS<8NMOA(moV138npw{QqDejjO}DLWxH*$cqRH%-OK2g% zTBy^;Y|fnHqvFR)ol;}O6w!D_XlB3)GEQZjh+#!p87ZYPj(gk{s-&V`z_@v6Gh{@$ zP1`v9G>Cy%gsENyW5Ian799^wrBa?|6kC&BIsvdtVm9DZMu?YtCu@J^?4hqmA%>KR z_cj-(T5(U?BL?#yFH*^)1{gW^Z}l7QKj+A_YjB*&cbZ9Lgfez$@Sk=i-mScblzDJR&ZleWJg{moR+o_qn#G*^Rt2bTEeP zps&4tJ4Fe@p!R%i_LLfP)gE?dn~{TP2<$CMBLy!~19Z+t5pHJ*+XuJO zKKYHY8@aC&oOplw8zbgIz6QnvL_x|Hlk+=uJVgWK%g zcqoCZj#RSB!Ls3@AN zC>9ec+L8r%MYCS*sf;OqL~s+hG2!(}haykwA{Ozexg$ur^k0<=l>1&268Gljxns8{ z@9V3uz2ws$zmR_@hcQuQ;W&@0#NFNKUU<2@I)=Aq(1t9AJ;x7Zw(K8;CKBjHbI&y0 z-Bs;Mg{nw9215R=fRfh{!|6&0HZcoum^^`U9G2jQ*ztrf7@UY%zXACD4Y@`PQUraV z`a^tT_;_hJXLPJ+z&s`Ti{rO`XMVSK{)D(j@`%a14$f_E$g_1bqw@E+FF&Sn%c%mD zK`YB=tHop0Cb4z<=oQ*Dv|JLcJ1U`5l70WP88Oon`^TFKQsF=@}@f;iDp)v z?-oEpG!W3x3<=!TCW*hEOb0~kyK8r=r1k%=VJwGy?T>iY6agz~W4qM;jvrwR$=hZx zy?S~;YiqXa(7Xq0q<&T0(4^eSjdFKn`?>Pq93f(Oas1i|fj6S@L%GC^fdvB4sE>OS zPQwq$-~4)lt9j_qp0C=GA_P^ZDA!d7G`%{}DixIG61MR9Aw0>6*p zGA^m-q03f0*m&H8U_(bU=~UcZNt8@Ld`S`>7JMO+wedlW{JrGP7ZO|SI)|MgP8Q8rZ2}Fwhj*MeYORW2Cz)XxmE-!ig=3yk#JydRkm*nb0F*U{-N))C1*eO|rGMa2(q8xGZK%>=r{rOTPE zj;S~9_|a&8ZR+r_lgur_US*y&(DGW#9&_8kMYTR^dkraETGsCzBfk&w`&yP;&xKUw z?ilacJhvkhPE4pCbmclPIF z*HHdA24Jzjm?fb~zMPK3bNUkcJnW^kFGN3)u;INjOE#}Aj%Ql~C7PWB2#Jp<>ZD!2 zG7hh$R%T2wCjVpSz9v*;G^3C5avG&Q{1NhWw(w_e8)CfOdO-TtoY#73@!IY7ef+(h z1w&m2Jz-o-LlI-1qW8hH-$qeB$uow^>zn9e8R}6uFF=P>^~xQs|G)^zt~{4(B%hSf zMdhwbWr+eF01%Th=B1Z4c$ULMMK+#E`q?OoFk=AIs=wqpBz;Lg@@KzK!dCNT6u+;X zjICxl7+Jler)yc>RDfeyA^qtt2+&Wb9S*uoUumDL&g&W(>2a4TEA90yj+@Biw_saj zQb{A;UrX%?A)+3#FdGJUQ5La1XKYH;j@sMj%4FXRZytrq6YAE+Y5wBpV_RPb>)N`7 zgWmT3HN?xcvoGA-Fm;7Wo}6T@_Xs!U&mBCJ)fFm8&JM2?n)tvqOi;N0(syng(+jfA zXLO}tTCQBlo0zW`%#g_Ha0N*!fUuZnT0E|ntkF`eh5pv4{B)C+i-`C7iIQF0k~3xE z!LTxQOxGJGPPh8bAvrlWadA@+qZ&;nWC)@t0Q@iJ0L@@G+Aqwp>;p6%_NH$Ce%<9p zuk6FG!w0kB4jSM27*GOZ?sHZR7{{dBRmg)cVWb#t=Jo1neLgCtU=% z`*|t_2&Dx{pCPR*%bYeW2um8fA~C&m8ee=P?J0hkK@@kD`VBXV_FXCN1vX7A<17q68h@p7h%hck+RyGn1<13$QbC6@!QJFB{JdHBpX;YAYt#GK>6Ab+lH zQ#{~r6r5hBmmXf0GS_HyW(|VBdC?)5kEk)^Iu8yFqW(`sYtks8GHqT3MAqyegUU-?%0cJ=G1;Ttz{rmYecR?wq0?&MZVG@x7#?YPZ59 zDJ}{%J#b$`*A$w)amOPi70}qgon~P-amG{}TirVK_j)v!b)o2$t#p`1ToeAZ`;~sy z%6`}TOHKrC-8lqdPk&z$V!;Q=u(Uq=gb0*}?G?>GB89ucLb>%=lzlWyVN8UC&YWM% z8N1M|uexVYbJ@6U>m;&PXyy4=JLh^;%TsMSz2x+O?Hu7}H?hx^AZD{1;rxY%JkY%~^yt{b*4oE-0)h_VZIY^+t z`F(TrJVbKdv8w%~Hw($gi~%idCv{(*(i907TmrrCXUw(ieh)%>xB|2nm7Ki`6Oh-Y zKtzeuF3PnaC>VlQ4kGxpnOzL8$9sDUJS)JqryyD&(h{QUM}%1`SnB|md<;CZja~)k z6x+RA&p>QAE@bHi;cZ}i zf)YkynUT{!=IBa2^_NK;CGwRtsfPt_lPb(GU2AtcGE+PWjDkr$qaI*P43XMNNIneV8o0l*r$M9whi>OfF) z;SNuSm>Q!b02o!d0cyk6i0DC@fIM;vfRLsf<@YQ&KibD>`Q2%cNnBt_?@A!xQM_Lb z;7GkPB(g8lzFbG-2M{Ajil}`J4;RCW4j(Imn>HY%$y8CX_(9!Hg@OTS!Ghm|EG{o^ zvRW>v$3r0YlU=qF5!B_NuYgr8CJ}&*1yG^^n7Z_UDUgZT&{w`VbahSSfK$#C83G|s zWzYvAUqvT};?oB7Dv*|*PP3t?h@VhJB@jKXlORju)_U@j$=SkH%7_2|wG?l#Dp89l z1j2yLV+e>}y2^j}=*5eY7(lCPsAGAV^52aylt8i_fAX!fsl=2)F=j@6EzIn(_pbfU zSvunv>ld(awE(*k73R0a^H{yXJg+c6&YHUO)n`m}hCXyrWXTJYXsaIVsVS%n#nmL^ z400ta+cCqNmg5^|CbyDG+O1YJ8<0FR&kR0OabM5MCRfrl!(MtV&2Co#`UV5zI_t!p z8PV3upf5l-luIgu+xHd=&ocBzgE2gGr#3gxM(q*6C}}Q})0w7m0n6#_V*qw~d3#rk zdm;)ZK?(wvhfWG=1R$iOSa-C^w7$!(31HUkjvjHfm65WALgi4gi=i<4Sa-BIpk4V@ zym0$QXWJn{*mCm$0*&52{XNPGAPN3AB6VjMI1vDpvoZ_^GdrtAc}UPc&l?`YfC3(m zq{AC3ZUY=RwbYH)IA6W&T;~EHq?+}6$K``Xd$d+>ep}~^WpWGd*5rtfb$1*Ny`iAI z&|})Vg1dKPOjzgqew&XO>n)h1>bbX(S$jJfw6FU%Cs-s_bZbjN6(uFre%8e-b-wg7 zV6@W9XpvV?rw0eOGhFZ({m0&UV{f7dJ7yfyy=L)3s^y)I{6imcoyYT;kFg-ycpt90 zJ8#qmyQ#iBH{S|f`^-1qaq8M$#;I>s0Y9#$ju<~$SWOd;TN-xv_bj4Xo$tt74!1C` z%La2mR~fFszFcSU<6h%t01IQw!cK`@n#1U(qJ6wux0`xr76!s*rvu>rlXjIkgK>j7 z5uXQbn>4#+>9zUt@=Dpf+Jn&1dtH(C2*tTD7xbRYIo7&@CK(iJ7S%Y1b0)7KU=Xi= zIaWLhJ*QvvoWfK-8aB_94?R~~N4mJ?>bDiYJAVG`jTbJWqHF$r@ah`i*cUf!#uiPQBbMP2 z$U($R3b{@j7${VQJ4!a{hdqWNVAeqk_83Eb1eshxZn*)7*(#BL+r7OH)-9}4Fs7Xj z@habcF4?XDcO9@8yJPBa3>eB6SuE5NdgJ3+j0FjVcqAVKRa4Ix zaz+veEB2Y!%J=+HIR<1;J`F`i6k`>x;L};w$6{i!yN`IiwkC69?NZ zTA3iUg6nGcq3&mAu6W(xT|VibU5Q@A;2`}Z zI~=rU6}nK1(UYNu1MP-L*ilGZ0ey3Jx0bJ3Lk)culWQ?)yV%8;_L8hx701XANFN?l zZ7NdcKvIwqJt~g~VHb4AVHfx7>6Kt~|0G+=0SW=8egD-*$Cp1iB%c4#`ELSgK-I5K zom+2}kHj@vr;2;5xs$j-eLO?Xc*TAdH2SXUK;e<-CO4@lqS-P{EVZ;^L;Cb)l%35LXTZVG<96qSKur(q9wqSFnYBJ#xDQl z+`xhgf3{J;UJJTqse@^uBsQGrA5!UPQbu#Q9T(F8pX5auY4$*4F~51DQhP4Jv&X#J zhmoG^ynFkI5wm*SHKWG%%>7(qh8*t}yAP|uG*W5*z}T z{*RLd+FNO?!&{9Z8Kta_ivjw0&&jY;&{L4H3|lAkiIuT@6Bv|lKyZ6QiZS(tg75rl1Nk)}9%p(WNl&|s;tRJX@~tT%qg(OLv7Bjh5Eh;ac}i?EN&#q}W~T<%)QHH& z03ud#F2ePR?=bGl>D3v`jg`3@88gmlHhT~@dA;^Pb2c$-jZfGaI@&Nqb8=U)hd zbBKA6t@`ufZuU9wZv7oTH}Cdw6Ut7AyInBD)outG%|4SL!9-#qu=R|<^QcWIW;w~F z8=?{)CIH14%uvxyE2Cq$XN2+)1F?3FW_`E3?6C_rdtf%)KHz0xd~ICyu(k(o4~G=b zh6Wa&=`xWCY=Y1#pnM9KISECkf$$*MSJO~rGAv*v0$v37?Wvpzps)?GLOdU0OrnY| z5(v1e4_`L1tU`K|r99K9KeGyIXk<+AoEg0Ev73Z-PMw|mld|{W%0Wz%dc%=Tn?6ZOjaT&ac9c4 zHVy367+KEH%iW-XqwI=uqYF5~nur0|c9wgW$!-}I!-@6p3I$gv2rUb>t&N1f6sX?v zu@V!+X_32dfl61T{HYS0| z#wU~aEjcpQZaG-iuK9btKlz*2EP#hKNu}lr119wh^7Bj1^I7z5Wbqc>u@2mZHNbLn zI8r9>E1LHC^+cAVIy`Vmyf=@6qvY)sUjle;MX`E$w+}Mz^oF)1m2FDuDZX!DbU5U;XaBUYktQYqdD8tZ1$73KH=OO5ym?{ii?*UBU@V) zaiC0&NN~$@9EqG^P^%g8^|sJY0vzqAA7k;{Giv>o;D|Weq5P`=#l}n-^hp8i!wM@RQWup+xJ7XSkZ zaj4CWLzPSrRCeThR^y+BU$teb8vheY%dgf&+YXlkRtFws%Oi|505A?DW`!;!oanor zJLWb~MRb-eYqcxAd`_rW0?bjvuQ72bjetPP0yP7C6o*vOfV)-aPRB>%#E;#xf`L1r z{(<3OoN>uMS)2I z+skBbYi!BtEn&*v^>#zcEZfDw|eDcYOKOl{8uUQ*`fO)FrR7!(TtINZC@LNcu*X zGABl7PX>{YSp`o9Whtr15m>pAxELQw zcF}Pedh4JtnTQLg)sLstS$Hq@N6?F(M7TEa=dpk?l{dc>fu*bwi>0Pzj+v2hm7Iyp zNVpQIFu=iZ_=%h&PkGHIThB^5R`#8r1zvu8@Xb5SSOCAjp9EFkzc_%u?w&zud6>>m z*Le)F-(b1HD(x>rcpHHv#jaQCo0n}LbWTFWV}rDtU){yzEvFPO&%-=07!}6|O(@R0 zSq#$(OddVvTkqtY0QX&&en?r=+6#FCOT}BWF0$)~Bb3chwnZ z@5OiPkXBfLnD6#>!=j@Gi!UXh6jv4@*mFQq0It#J8eD(th zquE6{8Ni>M9NVX`(x&8E!r4y}ssBNtlH;<=DJfmn(8ryJ|NcF;m1VgsMcrkM#2=SH zp?}f0?c8^0^$)*|ZX6p6;Gd)b`UuJ)&X%FW`|uX9Ta+>dMk-UmY;@QMe9 ztKOb>fDd9Wtf>DHTwp>KBr9rSMbYxK@ESJ5_oysGaFwJ?2@^l^#y5TQ;hCJ?hEQN+ zdXTja5c3e&3gU5s<{PWC$(6l+ee40FC5;Q;eVh%*IrQy6aX>96b>~k}lMl=TSarUE zER=-s_ekt-TiuS82Zek|e|W@ZbZ;^M0|o{8^;g%fsa{=W4Tr=$vyrxj1muspzln)M zaUz695+-ZnuRddJ)>ex+PBH~vp&=T6)bKDAvWP5+3$wrL>^?KP5_bRNju@x;ee#xK z*NsG@Tlyr4ZN^c_EY)}=FC_HWE5?Vb-zdUI*RX&vM6+q}PkZBPi>gE4Gz4Y;&~su; zu6_99w`fsulGe28xLtW@31a!Z=KK}YhVGi%b<1^ACWN)qhbZsu;=|+cgtt!cnA-UJ z$r|mdJm3!0|DHy2N4+B45Z+LU63z2PbW4ZyM{{eD2jxGO}$T z5Ch$5g0#NJEY<{T5J8o|`m;%0+TUr~OAP=W%uov!J%=;w8?;@Xp^ySAe-}&9H*3$( z$5?-VlAHJm*DM2wunFS8dg1`TRx2^7K+8>+M>v2?O+}g&6LxV_DZk!d5CjN=0{j+M ztk~XoWc8&>)8j`R!j6y2S&uYsPs>uNaK8}#G(dmbtcIgR0+}Q!If@FRx~AQ(nV?Tx zTYK+J(tMZeOOKde*Nqr$QoBdea?R0Mh1Jz|7E8*KX$|K2M>P&dQKkmerS$fSq&zFs z(Bfuev)tuz!taF#*BT96LwUR9JTr85QcYC_a@S%_J+1867UF@qy|GB;9d9h205AGKGF-35U}~WwfIMSUkd_OGwV)wpK1ryyb9Ky98e4 zU4gvx$L5ny(+ZkY7j@ySs{LeivQ1sgm~RvshO#q(>LDyhERF&&$9_A-9%^8(x>?l) z=w`eo$<@`XZq)g%WuN^<@&<}p7RlR44{9r&qehMK8)A}eqH*V%`c0?!$>p-f)Q(TB zL1>ZZEI^$g(*hvV-~^>&I~`V^3$^-Q+s>b!&&G%h;VT>yGEk1yn=YmNrhTj}^{ zZ0a)@b}zPVWKLr=4_-~JwP@RzK}c)?ncY?Cp;;5!wQB(a&I?Q4fTvaJr=?gYrre#! z;miav2&JmeS;RhCn5hLi)JznibRl{mZdKy`E!A&g^2I|8! zLu+&9LbH;padZx&1xzI5;C(XT9B8)o(qVGSzvS|Tb6u4tG0v%G$=T#;8a{rRd`Myo7P|-Z{I-3mjJqxsB7mFe5B0DSmLFw)eysvw?_vQDyFs8DSLnjhgs%VJ2ugYsU?)9RP-sRO@ zoJwfsODGju{<4{u`DDVTa{2AD49)dqVlrzY_m+vU@I`lto*4s{!q`9H#lY}0Xc#@4 z4wzsZL?HX-8Gt0Ik&&(RTm*uZ2{d!jVBs~G6??XKb=5pzhXcVOtQGK{0nwal*D6F8 zs)K2~N`s3l{ibdL^_*iff%rc)z|8}@(&XjE&|cN~O8ZxqUkNUO52__D0&zqvSIMtT zVRjwU-k%fV(_^_#1Q$UVXLT9;QgF9U+RvsZ>4+^e5gp%t#&aF>S{X3UVpf(+siDc1 zNZF|{Zd$1nVQdy%#geD6(9?}h!pJx9mWKE%R2kKQ(4r!AmUjI~!!fa~4O(It%E8ZX zt0{0pFgE#a#Ue=~d;V??`txSVpphSqE%C|n5pkPbxE3r%|5#6V&pHb})4P7+)^kPC z&Wbg^UzG_#0gx%tIO4GQjN$Uu>wC7u_|TK^07F2$zh`~3*l|EySlF}Qi7FE&67&iM z#a{Biz}^GpH|K+_IyW6zHXq|)7Ekpav^OIK>61NP+mQqFs5GOhb`of>Qa8V`|JWdK zoUnATSJ*UC9n}=4=q1zWgIS&in>)9vN&3z$U8?{7T^G?{eaZEyNtC17#EF|x!gaJ) z8u>X+T9%sMQD4^Xk%PjRF^^M0wXv`4V(j<^L}KT>%Kx&l?Sh)ef}%DC^6kqQ1r6-T_RGga@z;2varE zl06!G00@8q90Rzwbuc#3VV+%ZE~QiV7gVu`L6P|^D}Eqtf3i8z6?CTJO?Z0}J+hqo z7CB`R&n2XpVA^4wIKx4AFYm_Xlf}ap_TJOVzGwtp{ZlH-o;>XmHSI3>jP7ohAfktq z!bAkj^=5cW%AKU8Wo9s}Od12ABkyk>vMt(TGuvYx_;hIq_)*;K=XaOqWNK+3MroKED6| z4F5Too4a@L>ZM)%_4I;G{q^d38MtOG5e7OuGd()u9n_9suwQFbO@hKJ#ine3zON=G z&FMU5)4w6*LGw0c+>~HNjohzAD$@1)~7Imt6?mYjaX zMk|2qWFH_$6NlEk4CD^{ow}+eJjz;A<=D4D3{)%?GUCqIT>ds4t zWHwgco>sx0E07on9wlTMV0`%!`7=aXRFdME5SXEVNtWc9J*(rSNxV1CHLjOMs~B7_ ze0>WPOb!EJ@<>^}x;g5(AK-`x=H>l57r4?GXHS%CCmru-|3amDL1}@}+n7{2R_eblWTjV3OwJ8q#3T&I4MFeCHU?`<6*R)21X1f#c4^loE&3i!VGj;= z*j5Rwt1W?OFvmua6C=q8?una~$L$W4$N;kg$b`_sxXjV`qlij03u2T2V&g8h82_N! z-AR(59E#n}`_eV~8h+fkg4|j&>W8YxXbl+c;(hVh7&9bEotWY|bhO?d-e0p2N<6av z-Id-0lF)^rt{r+T#}ysk(~;rMrFIJkB)wPO%}b6Pva8!ab|2Rm`M9MWT~}H=b?eKW z9V<@-t3Rc8kbGa_Dz&D^#A?zFW1daCA zED~`{0y|WHw;syF%Y96JV`J&ou2RW;GI-O3NoY;{a@T8}v2x7`iRYxprJBM()gEnM zF>pgNUNzp10%=h;VBU&$#R=x5vTXtS(BYtDY3 z1jMA^G0oFG=Jng&`JaR1eMUY13^qd~2!dA8YgZ|yt^*!Pjvo18!Czw8UKPavR0^J0 z8`Z%$7BhYRJGS!S2jA~A;H%^*q2 zA}I^S)bVm74xsT`bemGl{ww_+I|~w(Ve0FVqzsfY=?l9r6a+o>byp_&i$4eVqZ}&_ zQ=7s(3(CrcMI+n005~)Dtd>mzjW-5_FTq>oyt);e{=q~3pOWweXZ~+oO_eKertX zjnZqlfgf5L10}y9LwFVpWKAx_ER>yy_n2b8_&zLd3(ZBqUO9VIx@3Esroj-G5hfEJ zz7yu`j9ervQW55{*&<%stVt5YcELlFO7?l9p*9`hL_W;?gX;15|I6vIG`hy`oM`az z*#D}$A29y49_W&pF5n;UvEH3NmB=z(*MAcKAOe53A7UP%WYl_UzYM_3AwJGzn3?FI z+2h}03H5ITvs(2eHa&}EUq}i6aJvjI?iD4i$^-H4-mBZ=Ga)iW^Ady?8W3htN?6e%VykcxCja~@4Z?LCsMWWBP;G(vb1m3VV=7~#^$ zFN?hmYykN>3XZz5;IjF^QVz}oEk@?I{9{H~E7}rf!e-OLZ2@qPY=8U8sCoQ!Gwyg> zJZrh<@DtHfMYQvR(H(+H*xO7=zw7-mL4qg;%5HzUabpLGo?F;|5@Bw`HXc_qI0`7vycDb{NZkZtB~YPxO~~_DQP7(!XkB96yaDQO~Es~s--iPly}7k zMjlHZ`;+@WC)f-|pWC`;#*=sAHO0exrBx= z5A8re!#+Sf`gxkVL4W@hohE=z8B}X>&G$%?Yn5ppKg%49%Ni>(U5;ijd)3e{kFEfu3YlQx>eU57z!T2@oBg%8B``6Y*1m%u zIo4K!h09lVSo$65>pgVzrRus10^dspJ~G@U4R{Q4I)7n(ij)owhD&Sfq={FrnDq@x zxw6lzua(KJUmej~i2$`iH#R#vAv>}K`8O}TSMKO+^GB@pofTk@+bZukHM65Mzt6y& zxdv3NNs&pa<^n@Oz06-;f#yrmmC{+adM98;7?RQ5R-UU-JNr}j4pmWG zgoK#6&^W-~uW(&rLib=(gp?q?*n!d;_PRpq-qza$#CfgsiNbupKiKoYp)E8#)h)+A zoAU&p4Hdn5?xy?ayz02`N~^JyXbUdvcCc`a^F&Dq2Y!B|Vm*=SrOVq&CsdtCy7-BB z%n2gXQcQ*>I*8MtK7DmxP}^c+zTU4JsH{V>gO z>?`i>BFLnbPLotWM+F~8oE#WZV-!-wE--R9SD@CKnvzLPQx}PmZ&$o9W&-^?Rs0V9 zN^dHth8?cov9PCBvA$~6fyM>mqEtx%l^Uf)yE1p0fH@{ZHF%nf2Lvy}>&CHQsW2&{ zB9P35NXPPIwuBIwoItgDXXJE=9^#+qR*@VP!%dg6!|CCYV1|>a)+1vj#cvlDiH*$1 zS!KE?yU-t)5?De@23Y*g=7N!oQ%z1HN6K9yb*(Ax0szQ`J|W##5UNf%*r9E2hKuGA zsi-3J)rKLMS`S;^PMOh^!-%gkrM`k5Lvu~?qtg5zB6mC)B#rI3@4LBWS)@`yPS$4{ zJ6L4LA&AHgWny$MzyEC&7E{2oLXd58A&;5d=e~lotEbocfjo?We)%0EQp|AyV8%>d z3XPdGjwQ4qIniOza@aMOn;3V4{jylUtCbie66~>ZK-Ad?trla1$vFz=^6}qM&IV-l zsK_`K+lPp9gDbeUlj)G_5P9Sk13t70O^CwiIbYPM&7(drO!%lWOf}*JxdzE#404ePmOF=v5mKy0+GKO3%d^FX zVXfO8J>oG<+Myw5PSh#_fOqnOmsdgF5cuD5LW(nu2{Yr|Y2-hzEOao_)luJ+DS7H( zC*2i^rZZeGp3hcU68kW12GGy!%6cyddL6J4(|+Pa7bX-M4jU15b`r3;!1g|LP6KNq znhjEG5T==c-m$I5J&pbK5eTnNvn!dbR{Ul>Imr%YQ(>jji~Ce*o_kChk<}11=alaf zS9hc<`_q!L>I;vX7Uds|Zca&Q4Cqj5MH>X}ziO!`DGHcP{Lqa%+lMx+ZrarTKHrlY z{jiK%Nljvflc=J2d8wRh$eKbhVR@J1|8Mwhsw5oNZFEV!8(D)^HU#eW(MHA|e8zhg z>Ak+b_8_M~dmySYCAmJJU6GeCE^t5V=Q%D@K$)>iu1(Jju3Oo#q4jN^2RHiHQf?(h z!3raS4snSkGEQ0M28V3?*go8Hfavflj6ARX0e|{?BrYPmYt=bm)6*_xXB1|yo}8JD zZ-U9S7p9Ubi%XmmQX<>4J?Z4_#n-l~sE2M0;>u5+)ZwfQ2q`t_cIDWaqw~u4G~B4G zx$~cbo?M-*CpcL}Q@RPmC%^AL;e@B$nz{+p0Lzh68y3s@y8=ZcXP{W!-1BbB{=kMN z;hF{l8UE4X?$`spY{RZ@LRFRJt0cE609CvMck&o#M?jYYpoky$uKPR(@Po^=h$;h6 zhMkjN!+}YS!Jx6?L|w#s;jZt}&#LTti z{;?vfn-x-JPk=zg6ZRr^Z>(iMYPFJwWcG8yYv2jeHL{SMC&P>&5Tme@TVx??;wkcX zMh^=6C<);jVJI^$KOr5kzp;46e=TeH=i-#uNp#Qe}|1tn2M z+ePr_LKc0(;rx1_(lMXNJX6Z-)h7olCx^pB@&1(ZAlkW_hvlu(Ae68#i*%+1xWdn9;7pgVqcEwMA_ z9pUWSG)No82r3r}1XdjlaXWtD{K_-`V$zR`kRa*0F(CofS6{z8x9JXIkh}sGpr0{J zD9+qa5&o&pX-eMd`b#eH2hs)q*#(AlkMX-h>^=qrmZn;v#1k)hJ<~k7Jrtwvhc=$d zalq4N$ zoVK;3;xlXw=Z?V5vtJsvIbvS@Oo23@6Paa??#+_suT@2=opCbKzN3CZtAJq$eF>J- z*J+2{wD7jCanDAqG3{bx>Yhx#)Ins#1=5V!*_LxmcrP3!MMnr$XW&hV7fjjce%H8i zJcl$&F!kGXtt+)0P6B0v2z6qedJ>RSx57v=u(XLrm=e4XL_trf5`yS!Fy>UvJ>kNj z9C>MkGYq{%2p=mB26X@vV;jS$;?CyNNs|QINk@9_Y&Ey5TDORZoTeHsBSvX!bpVCo zU=R?Sz5no$Z6~_XAv1kzp0K+ib3JLjL4#?&6L}d`xlK05s$6b3*Jm9Nu)K*Hu8LjB zBt#b{@Z$h14urtiS~74}!h8qfK}wXy;ss0)II4z{gcU(O077Cpx%7l}y(8LD%bsTn ziUx2}rOz49D_eBqyH_~8bMo%#v>;wN;~4T(NEV4Rj3L_%j^{5CP31(qb0Al^@h7uN z#5K-z0=;CjlG262QtcqzUNE(0F4{_rV;xy;&+n%E8a_LIW7}wvfXWe3B*Zm47SF1Z1g>H50_lZ;8M6jyGbZdrKj(dn{iLE=d zL_h5Mf7QPNXqu+F!R|&b#0fCW>$$64E3#AQ))A`9{odJetPwbI94o!;vR7YIHVe+a zco2sx`Fj8<*&Xmbu7fkw@KI+ls;A6BSSB7Wqg!XkM^|uH8`hIycV^)rnf}Oc+!kp( zs}`NO`S+c+umVTy+Jl8FMV{MmURBGogHU(UFpm6Gdp&A7=8OZTH0<| zSla&CeQQ;_-Rj?Oo^s+bVfK>K4&R_T!Vt3AFfpS1G8#OoINf0*IcePD{;-S@^)2gG zi>kkLb3zw3o+!iCae}<@C%Z~#ypky%un*y}{H{)NCULPHFQ(-jD&ADpqvxhsMZ7Ji5nlPI@4Q zlgCOt^ofPB;H{ppG0mKTp6Y?K=uHb?cFCgwv!p^dx$wbA4`P>SR1=c#GBz>JWb)?_ zhs=x*wo%0RjOg?BR5a7^AiD`C;qVS)5jb&kkqpa+G!U7dQ&`tLxu&VCsU{zXK^Vu~ zJJfSY3Y_2F&w%4iU4Tte-S9~po=3`0u4@i=1kCBfJ0w*fW_6o0O(cm+^vB3|7I#&UKVj!IqgHg1amhk?!$}`#u#H$Q#(Nz zKyj}+44_*9=`4e^(Wj0u8nDBa$ zA%7nM`pDu?{Deja9|OuHTQ-7GkrVo`wudsTx4Za1E3*6v)_>hYc-Xdx{+x9abA8u} zycG+k8HYJ18n$&@Ovkum%JX5 zC_wD&7XaYllN*meD9n?xNCQ^Svw`CGb+L~5R&!;OX-ssh%o@L!#nL~wr>AdgB2xrS z$^}Eoq<$?6liFGn^H?+`rM0#ti-3=~MX(m9ti z;aQoQSVkH(U582=L(_pX_(tO5RG*{+=ua0r$~@?i0P5rvOJzpv{)XD_nM(gLGRts_ zd4|Y=)fHczL}^Xs4F+{!!Z%0*7MtmRD&36Ub&m!ML2Ky{d6BbPKQUNuw2s&<==97_ z$AX^q*WP!oU`S#s!*dI!6AENQxJ?61EN$4du<-e!1 zZPC*C>7FD|kYcsbqTqQQa;}nU-FH9~cIW|MvH|sRB%gEJy;vn1nD%qSmZ!0y0R=U+xROUrV@f?sg&Y%y*kM zy~~7yCS<nJuH8`qd09;Y-OLkY&@sS0RUYIOh*Y}(iYyK%F7JUinlo%Qo5y|((PxQGPb^4 z5c93Kj>QPM<_SzsrNPM+rq5`ML7TcUm0Ul7_Rj%beAy=w6Jt)AND=CQ`AQPQ|CwG3sEwDtEGc~(g{?9`zz#Uwt3FDXQAZZh*M!Ufr$>tLcXbx;E*VLbuLrS@C{L}E*yY4 zPX&}$Obd*F9G`c+k(`3T6fK78&fuMGKjeU*xrhaNZ)v!U1Ff!>X||&&wTec3 z|8o>G+QI1l@m+>l1>B9qRo`w{^M2WWn9Wamt%^uU+7B_ES)lY@VWsCwJ(-Moagu~g zKv={gYTx=VaoKKanIoS&mXAmP!N4K?xpXN8yttkLj%&Janvn- z?6~Vh%d@NJUksW*VP+q?GOi_CvIe*z4;?3-0P0HMMA^AcAD+cZtd*97<)O0%3iv~w zA)V(8G8IdvfmIZ52FPH7DE!R&Un~BrsSSiR_rDzZ4PCE0#hJ%-Y#{eMB{2z{pss_v z)gKpbt3Pahk^kGeE6@OUTTq-IL`#kr+QxbKOj;6tzL%1dIwFvQ`6Zpz*-`j({}`n! z->Q)PCe-hWcXu9)7#qmdL|{=C8bg~!%Z}zMBX}<`gy;dhPo;^Zr-r<)C^$Iw2*Bsn zXB9dL&YHbpNrfVR4(BH&$Gc>{ulrggf;vuY#%m0Oo-#?aH;&$o<5-IFlO%~%Dbhe! zk?cM-_*X@!YPCa)vgH&60fm6Ce;lV9N4JQU zN#ekl%%@ODunKB4m?HK%Zi`+84`BvM+sOt)BC8K3U=b{`rx0TdIqWwmzI=_E}Y?wmKMj;`Dfq-a_WHFq5JztPs3$f3kJU>M|BeCq-PO;BVheNW`!ra@jyU$LqTP6Btg?uV* z3LqT~$p`?k)-jw~>}--g>HaQ5Ysa6DE2Z<%en%`$><6*%7hlp5*%~!EvK)?CnwVDI z*SGExfRHV^tl_23=qJ$VR9)Gp^mJOvx5g2>&cQ3qt9!jGSwt9`WwnFT(AI4Oq;K-t)8P$--!Bto+NL~haL46;o>J8I4D!11PXyr& z0JVp^&{Df3KOaZLG05uWtWob61}jeF`;T@TcDZUa>>eA|J~xn6#F1S;Xuxxlyc6} zjW2#`SBi=T;v4E?O-aCH)hS-9mpVC8#jZ2R@Hn{c(K4J~c&u+=W^VQE^}?0oR%N>_ z85Sq8c=X-NTK|I)CAclmnTjChGm~K0m#5p7NKabPtn5IGY@q_3VC{rxsqwJ%=VZ4} zJM92<+YOc8on*{fIkTNNz6yBbK7D~qwuw`>DO>t8*H=C7!-qaNz6tK}I?W8^anYeY;V{G$T ztwZTFzIU0eL%E;x8!l9N5jWl?bSP!GSv1*IUTD|ahCkn}`W-Jnb>r)pK!L`+jB|CE`{KOUYuFgU-{u`a8*XYu%`YFyl0$Zd4mK}czlh6B zdl*d(P*uqp7>gzTJlw6v^h#Aot}4z8q$@!bHy{s7z;2-S-`KU0v~`Dh?o4l~{TY0( zL&>qr?HFyCSxTBGqwFP{tqE8p-*T6-8@&W`%VSKe>R-P@Nc}jFdf(hx{Mj0l?Q3O6 z$z?hD-jd1n`U%_9q`_MoEW8v$eoD=W=`#D1go%YEQMB8@KL=}u;Y4vjc{c5j$pPwU z&AEoU0&r25S2Ef9-`AfKEB_%PXnu1ZnDv%@a@Js-t(2L;C2EwXehZ?4YPI8M+sYc)65$?Kpn z^s($4XSjSjTfgWlM`5foVf{G1o57CLXw*!TXr^gWHN|NfHl`atJ{p{&EPe6xn(22* z2?6I@1M=WNK&7*8(6SThBPtAH>Oz_+64=~ze?tepk1P{?f!#UNL&f10eF(833#|++ z-FzE>+?VXHFo@v$$oF958dHs1tom9S_ueia$AuUpQ7}Y5T)&4$hr(s38H1a)te+l@ z_J`;k#JCJF89h%9PlfK=8XfNnfExTW{o&Bi!<$MLQ)^h?A(&!Q6$iP0p!X@xpmhI2 zu8q#l)Ww%1?E~;uY4@@p9A&}b=8#l(5BQU5v!Q7y&Bi?pjNXuqjL)hBZ23(cUxwJ* zz5xc+!FCeglvlrWPA)+zA8&$AHBkPpvNCVT!xjXD^nbOO$i8pwNM z^O(Os*PCz*4+tXB9{F_}Vb^sJ26&>vx}gHF5RM%CO!6WU(RoDzA^=He0|Kz?_hhCt z&@+#fVr=~BjnuzYKw|Jjs>~%5G41zY)E6ig&7ZE((!U;+bAgs;E9? zFTM(V5;H1oqM<&a&Orq&eVO_FgM|&#$Cx1%H_O(~>FFWx(ERzx2Vqes=j-}_#Jb}> z7#}ai@{CviVtHsR9mUbel>^J&=UvvBiB$|^OyXGe#Eh+`AoG{g{s1Pr=p7px@IcS< zRfc}CD?`d}hHwK3v}JAzhJapgg&l~*w9ttyrJ8aZWi)_X*4&XbyCBA4LOA4)kk?%p z8qbz*jr6`(?rEP;S`Hv!lYte|XJAi35+H0XPq2^E-L^nE*a>)!R$VV4AJya#434m{ zIjg&U83CX#wrPL%mA4R`S{R8v*m^4gUBMVPr4a<&c8D~r+iYz>OQ+#kVEDeIil9OriC4I!41OA?- zT;+S^%D=dlM>76BXvSoE?_KXmJm>G;;vRD@Yb`%U&_X5P9Frj^3d-oK%cvL>ua|)2 z?>lUz%cwD%+puKPklrne87C>W&XHszAbE2;mIu!o8F^jJ*N#9==JQ3TC8vWc-BYu0 zdFw9vvuhe-1g9McTLNROFUYlouyg*q$@DV1a|YQ42chBV7T%IgSg(~o^q%hXH+Bd2 zwvz84x0M_DN|YffLPmV7dP!kMR7P%e4mTE4oB4{h+_f)piA2_G~tTt%HPQO%JS~ezIx|FLuY;^>y>VP(i>A7^MDzoHb9Z z&o67d2RReBaMgUo5tb)G7gmT|FvYFA1A#vhVdsg3^ZQ`;A*0u|_u9&&k_rAd=A=&v z5T1?)`DsJGTVya-PeKZ@Yp^n$IyakT@{rbQKsGPE9%76Py9SbPQxM=}9{0gsZt|O# z^tegUYc2!;`G{N8r;*AJxVcc!W2D{$=^IGiqdOEH5PPk&gVozp$E--G^s=w}`POCZq?#q-h?8G03G_$7F zFQ0E4!$^XtZ)Nj(>rTL?R!3qlkoW;%JF$`QY8Tgo1*9Ch8XLJKj2~ckDH2-^@9r{y zC{f&g39dA_`t_Lo;x~~dywxm_EIPw#r$o%GtJf& z#OAi1Z$_*u#@_R?W;CIa%raJo#+fK7z2+Aq;N=m>OF1F??4ZWG;~SqpCx)8y9nydC z$l$u@UE21zB%l#noJ$jgHP{+A?6%v!^zvwWT4)JL5eUzMf7>R!`uf3Xdh#31^>Yve zOoe~+p*`;Sh|Z-(eUKA?^%qlv0GeE)$&k|>w=}MD4bVmBuLH9nDzL&1;}sg{d;M+h z`|Ii2F)QqFn*MrOBZ}$doIvO_N!QWd*>X@OXCc>9{ijb~rOo`|D?mL5D3VRuPFSS# zF`%rV@){!=4QF%?DJ(gQ>M3T6%?P6d&_4K=7iGPr{X5lKR}B*voN1P8#;!^S36ul{ z4ooU<>^?{MRvYKSWAZ*kh4E-c&;kEKZowWus2voJ0(bv!zvL0T{YC#KM=i927&TYF zI%by+GBd!fA~cU$t7W+HE}>y%4zjsh#Sx-H346HsGoCf=hee zX%1NjU`OB?Pq-``**cIHp+8lzyeeAfJFyyz4xP*QZOib#BT>#QJh!)Cb-`}bs0OvK1~vqB)2JjQxkc+D7l3t@ucg>!rz+;B8!?MkF{4MsSp5*=oGBR-rED zsmM{2fqt|B3*&Qx}0p9+HJJ644G^sd=_Fv`iv1(447DH<_|d z$`C<%&9Pq#ObGQjNPA-w&(uslF?r6^x(l1yml8FphlV0NO9;_0Sn|S#Jm4yK;9m5K z9idM(`0)*&)T_2A0#@#H~D@9gu(u;7yzk5q1$55(4geVh%H&?*~f#)$qBp- z8GcYb`lG9sbd%iRnOY=}yQGHkf4p(32$Xn&wmAWMLc~mK`#;;4*PBOf2=DRe&evlg zT$eRBs&LI%Yv0V7gG^J3qBRY~p>-@2LJNtFd&-3?SVBXKuU72sVJ&84wz<&U0=DY7 z(F$mUqMNBecsyA`GOXM+gBsY!zLAMX+;)S_bAAV9o;CYuUf!ub1eg8Qh~bnaD6&(IDc+M6?|rYCqxQO!1qWT96&P1nJI0tjwA!kw<_Ho#H6jAHAjL@1J%cWS8`8n za1J#>GiOrgdF4iV)5XP$Zlg+Jry8ufIkV#6CF7^nH0rlK+JDX2eo&wL*jw+{{n-Y9 zcv*f<1)$mQk;8%}MdvDx;LX0lH_aYHvL6wNdB)iJF-sw_VM%@KI+E(?=>j||?`G9> z-I{LM$uF!W!nnncH_7Ks6(0mIi~NUQ*#BM#0R*?rul^O7VB5N}?6!(tr(%&7o;`g8 zecihQ^t#ZbJeNi_!@1qkeg&5(fcYq)yS=yG>8-i2YR=i;tMeX+e58ZQK!K5Yw$aaf z$5_7+ggt?DqcVrXjL?4D$kN!^V6{r`R^mk~;>LNW_>tw@}L}gqG^TwZU*9;gS}4q?6CjI z=qXvK7sXNKJ~sPAeJFHjxg>c>@o|+i16&iCDMZZ6_tu=i*0?CVJTi5Qorevkqk8H^ ztlD^grT{S7=*&-+)~YD^lzfAyRD4{Npb^L!0vVRn{6S`VY@tpkfd^y=!%k@3RV-!& zH3Gt=CyBQ0KSuh9Sob16geni2+%ZI@e8{#>9qqQyA}@%UX1o417fmbB7&I1L#UC*+ z&B4h`VP6EGl8w^=n`+s>m^4jE-;iCC?E#q@9-CwUTJL_v-T#L0p>LAzd`I}1s6Nz0 z0jC^+aA^|tCVqNkWIFy0fRJGyGKz@t-^^1)h>Nf9 zdZzFCYZSXa@a9Q3UtdIod#b+0%ep?n6T3wY9qZ8z0Wg_!lS!hN>!e%2-#6%i6XeMOL4He{71h_TbtG&fY|ouyNdK0* zXVUS8e!Suw28Xxx!TUp3BrcAj9$v8XPom4mmyRJ^;_ckRA<8AVY#mkw+8Evv{0|GLdGA;0&X?L|VfG2rm+l}*);0244e0r?0zRCDvBWssbP;) z;jC4LxEx2KEl%eH8x)ku(r7iEWBkH}nu(PN_wE$57wMT560#$fPW!hqj8O3Qzsn@$ zc!SGXypq&ykPTNGS;-4hTjq~bp#FYGAYp(%X7Z87%?=vNvtUA!v3E*IPU}2Vg2)^VDqsR;XU`j-PqLAj4piaZO< z#QQ@sglX3jaxo<)8N1Eh^;5=%0khre5!LHGW)PXr7OPa;zW&C^Y^W#0LNQ(0aHv4n z1Ji1^ZHw*TazRSafM@E|6G>Q4%+C+51yz^`@AdC$NQkEA=rUyKj`jTNwRxJ9ym)2G z`+38W?4^~*5)%}v@bA2`PA5rky|cu8zbD<3v6-kK9Q?QMvKi|g`kiQ!M%A5DHL@~Pb zSPd%+nuG~v&i^(jd8$EP1$M){QPNHjFr9fQj!j6{i$SMa%l)KHSZQg<1=0#mc~CsR zi`Yt^&`4PjB{Uf?F_Ak{xHc6CZ*S*jd?ryYxFoa=4W?Ms_*G4_7?E6YDW=3?rHHO} zEK-w2=E?9FL^z2_X)b~%81Qa=NQ{ZjFf~AwR7eo7*+UW(o5++A_+S$hO6_y#jIQRz zh-|AZbdZJiK*Gb$w5W<|Ni+drNIxclJOJRxMa4+; zIXiSkNV;R&rbPIj961}Pb61GnF$Ti0fhwbL6UyS4bW;L5YeAMhfQPvy%7>@9b&I8Y z&39AzoRoXnb)Vg%L!Kg4)Z$mhKMS5o1x+41tfU`1 zIo^F=({IVy#)d8D@dhK!E1x99{HK)rrahIq7ya&x_S$r3t=EUpFw#+P-E%IxMk7aI zwcE2V>B7!p%0`_Gv=W**YI_9;M_>kX96ds;WHQ6Xdu;L&1LbS1b&cpU_i{)kVZRvc z*C77V%jjZPy4{GX;q3_c>yGzF%jiemAhS3=&XG9}ZT8y#W2@hu- zIb^R3AwP8#Amf|AEtUL4 zi4%v!g+}m?j!U#IIe6SXm^S$8o|@JJ5KB#Av?gIK7ihu5@Bj zV-thP!DPzQLj0 zsmAr0{`r>1#ZurMo1p%*yENZp-<=6ToeIUM@teD|)69G;FFpY@N7J;`=-=O;$#`EL z+G0xbd0WRw_TbME(%o(inBB0!UNPW-W`6<|#`!Q2Vp8Qh^B18>hJVePd@|1&lO8?a zZ*{T}Z`ZnQ%MTzu zljM@@T$E>$L~!;Bzm(X{XU{r4QUHVulS&BCKL7xd^5`i^xBBjXLo3hyNSnS--+9LZ z{bcb{$;;QSfKj8{&EsAj=+ZuEHFMHsCmDOW4#Xmjh3NWw$LKIoX#kfNhCw$s2hah? zxD$L}4gkpf8_3xci!xK)MZ-COl3j-hWSDAml|LiV-(X=XDNx*jXrjU!iWe$x9?o!22Up89#Oj-F$#>%>jsdPbOeo`c?8(A)e#MmUR3wq2Hh@FYEK6a_K<`hm{P|4_n&*Q( zk>ZoTEH|#be7V**rnaE2WbN{xpU>U+slM`X%e@BeV|@TsHpC2uru#Bev69FG0AqRi z^1ny6kNzz$s+51Ks|8w)pxgdpp3>Wg?tdcLn?8^!;VJ)>gfYEy2rY33jJy~ZY`h6P zm8L%@ytG>i>J?zgImPbK61%DxGpI~2*m6dx^#*0 zP8B>Ro;iGN_<3~5AnTFWBNq0G>{1xZvD{+)g&i{BV@c2$%<;=6ADfE=Rct)(us__v z-C`I~6!^p@aKXy$%P7a8{^OR7o5sP`Iw`xCM9+_D1&H7riNnN;%1bA8B_e0kQQi)6 z?NGh6qFgGeC=)x{&63fY6w&plc1bg8$KV~;5a+Z|C)Sm3swfxlJdRHz?c}IxtA)sg zfSm3B{oK3n&!2tfYNYkS$fJQpo4nm3Qj^ zAdSh{$;G8i?3CFj9L|h09@YHf(mm7>wS9SA`KTzkeBcuE%H=B(ru}Zpv|7qxPm{8Y zp-{WY)4ozR3z-Z+J&9r9CzAqqQ|7El=Ak-%N>@eG74)7X^(Y)#n5)QWFq(f|aE(K& z->S8o_>GT8^E|3{9b}qklSBEhSo{iEaFU7#Z5L*F=T(F10JdIy?jc6(kLrkVFUkS; zamG&Gg6&9}nmZ^Xc10e@dmq5`OGJRoxzz~15Zgw^`kJv=JPVg?1@KZ!;+n)br=0rI z(ftwJr^PHp72XDU{ds;pdZ(Y~W;wnHi5t^w@-ic|5Nr@n_V8^C*6gK*_K!JuJxzN` zLkucyXZHSu>st=fQ*6N{f-XE7z=kT7+?+;CWoNc7hE>=(1*9kye8GY39d@lQogzjm>z*-K#BthXB2pr z>uOn*ppNpnM;HsLS#fyW)BopPY9v?J)Hz;1N-nf_s+c~bH=d01+3MC1R>tE=DDN%r z`Eflj+$IMm>4oanwH)3Yv_lY?sG_l@RS`|R9e}p;>crTRp@%Z*PTNGXjdyV}S6)*q z=OmRfY$#E-yJX4^{P?{*C)`3#3^30q1H6oc znL55XJ<|4&g0?_eJ}#zE91fDx&Hc-A6GEQ0$BCpzRz!8v4-Zb$sodfNaa5QyZj%j^k#DA)kdGDh>2U^x;P#4r=aBdv;2{OQQL! zS;nAKqAn7z{&Dx_R})Mi1mYwBn0sIE>Sj?d*GaGmZ!L3_YU_1tIbr6~)6QlgSY+M=M;AlXUQt5NL=&Pr`i;E14C zHvCJv{#E0gdQAsjxgUn##qC7npLTkhe&!3io012uWi8F^eC5ZJd zh!MsK>MF?Ne%}?s+Hu!K1&Jf7go4%*<~UC*s}^6%>$`>3gwy+|I-$#ZxuLb{L!6ZM zUlQ-|P;}|7bz84i_}=nV26-2F@Z8tcRtSMK*L}RMB3mPrRf~Dd@zx@NlvQcgO9Mf$ zPlM%Wley3vj!q=ZB4Z)|RakziR~Pwp_4-W!W(T4`dX(0ve}MsZ7#r`M_}RZ`=J=_2;6|4eRQgWF!|ywsNQsDt1-R9sOjm<;#3x_iO!X3 zUwm~8=oD9jr^~I z!`8;ZW)|$+w?GfCvRB(&?7;=c%?%Fk_Oj3&-_cxiWGzkiJYj45XmDr-Cd_yZUb?+92|2l7#-I^$mq_8nY8kvSh4}fPWM|T$hPnvQ!zBes1zmjqs zDhxnog^^hF8oSw#Ifo@+HM;yIwFbau)FgxMY7yh2U4>3x*_;Jr1&dBEj0?sEDkPZ< zcsW@u2-uN9l_4$6tP3MUow+m%aoH_#yFVI<=>#%(L>YVynEiq06z&8<+9$2xS~1Ec zgMH79^3z0vmZa7sXPoQp6E!bO1X#;i*jtko|2oFZMy*jhsYXBBFr`m6Wd&H14yL>l zc)jm-9vig$E~ew0Om5e(Ta0eh&9^S!01NS<)%6@9Z|=&NFz=bEdpFDCY%_QFm<>HE zmQQlsb}2q_=jeJ$$Xwts@%P9o{3F}Y5LW#M1_%S2ai44q4KBm+(9p_de=@sdfVL!< zUq^BA7v|wB&*F^?6cEEVGJB#stx@f*7`eR2PETs0S<~=Mcss>L zddd5v!(9i;A~unzw7Hf5D4FE1@I|xd@#K6uix@LenZ54t!XOrJ&{HDU4LR7Br@)E zKi_Y1=J2IGkG(GIeZMeY*g3#`D0-jI?dSbW%v*1jrxeoL+?o~FKk5%2&=m{T)ns%e(nEccX^cPS9bL6{3$UHLw=Ak!wu5=K zB9$=-AnU!O_UUvc8kch1zq7=7#A?vd@J)dBF12GG^oE+*u5%l{_WcnA2_TE)_zwQk z1BV@Mqlh@%nL0qfHo7w@FEQx;A_7z#=~Sxh^lUPcphu3cXW2uHj*|N*NGQS-Qj1bK zO+R}Unb_jXiE*^6e~nH?M#8dT<^UqVnj`UL^_r_zIF2w7VilhjUc`_)m)x#2teVGn z##`G%W?7ECT$j(99vRcVNVjx1h4Z0uLCPCjJ>XLqR2ZLiknV(nbKxnpes+bu+jdMq z06jp$zewO@Iz8=RO5tSW9{4(sUJ#Hs$r@rqpfE=gE61~7Tu=}>RVNXr>GXVuLjSyt z5&O(-J>GrCZ_eK+D8v=2j@cY%Oh+^H+t9uR=`-Dd8)@hStyIFTdHY3LR+ttDH>yHc zOP-d5CqMoWrQb9$DFcgVbEL-Y(dYTD1N`7^7|>hYCO#E55rhaI^M`ABiSZ4d6BLQx+q-RBNd(F>YQ)78<$<4ST@I!z8z)2yh**S1Qo*=* zvF-W>@z~StSa`^qzQWp}8H*Xq`aNIWQtR*V`)Z%s+`0}oU>o>RyZ<@<(#3SO)FtEi zYkOXR^p109a;TZI&Yv(-ys0%&6+m)Ea>CzmKUasP8N|USqVpP-rD2^+$)J6)CeE@n=k6z zAtrboSj%0{4S_8-dqlP~@kcy6eo%0eu&9Ijn_KRp6eZvTasFsRI8IZ(@4Dt zIii03s`=e{S-;1tkI+D2q(Bit5-3SQVoOj7N;ncRz099lv$e0PZe~?of2R7$)6`{D zia;Wg6Qa4Q=)eS)GU_{}gkIuLso%H~1g!%}qL`DI`J0kY9hVsI0MG$`vk8Z@WRrqE zUGk5&SF_i`2h>~GETo1fz&-l3eA2*H zY$+rA@`F*`+mF4tH?Yym6@eYmXm`P_kk z;kQ5AB|yY@7VSDB^GfdK!O0!6sNwbZtr2pW1rskdPF-zC-Mb~{xdRf%onv^#occbsV6q%+f1oKlav^ZqwXV*m6$QFl;qV1nj z2;5R%`rgbd5j#!Jzls|@#`Ebw!4Y9&2t{Q7l$?Lpf+mC1hBubw@CI3AGT)FptGXtK zMoqe~s}rQoo_U33xa=@z-+Q_!gKx4da(KgiON6`@gea~dR9Dc;%eIoAKP9h-2M{t$ zNq66h2de*8$lR?+Dx`pEd7dLtJYiyr&`Y}3t0~AO+9g&|QLYG&(Hw<^sz{x%5^kQY zFHMQ#7D^(OBW(}5RV-kpsD-=17t63Yn8If&5bT<#*CHhCdW|~KmK9-o78C2v- zJy$xrhsIWkAh1txDD^KU&Y=w+wrOIH?Bj`5KnLGG;J%8_M03l7Ml~XUXf}rWY5V3GbTED0!?cTCww-YKi zS}p@t|0**>C0|8Y-S66O)#%VV+BD>`TDH<#;5wvO2e0$)1ejE2s-HK z?HBQWBuJ0+V9MZjyQ0pV9<-P(Rt;n&!!4wH?ACho4$aO$$vDJ@O8=<%zE%1 z!Q#}Z`OiG6yHyiUO-^@$n=5WC?_3$==U}UaO};{+C~p?~vn7k{Y8@;lpS`^(6!>`3 z{1Xt@PX5K}rgidavZ$T(RqOhkS+;3PqqQx^IX4hx0pz!&kW@YDJC?bZ9~f-rkhV5^ zkT$eYy1VQC;otBou!3TC(qfu-#=ss_{E7L`ABg!ZOfM~T9x1fmj5|Z694YUyd3af2Xr}r}4FjE!3aeD!UVt#_LKtFA04=7z+j2Oz} zVS4FPYp|Y0T2mD#aB<)@uLsy|uR{H^_o;^)rU8iFSNge%XyN$Pu>m9lo#0dir|0zI z6Le2Z5yR8zbDu@3u*sELO{rY8HKs;cRqI#64Szx>0IKqSd!E!{IEJz^CJ3GjZI037eCdwTeHG(F*3FW%{4a8H8m!g$lU#i*mn>vNp|1YVG>)feLCEpJso@v zdqs?d{oYX+xMi(%;ZjQXDO7-whfHUP@aS=G+4}J7S2`U>!Y#+fhZeU<$z+Q779Sdq zUG|(fUHNa|Fd8!)pWKbzIx7 zhBc~`(>K|BY}v16WN05eYlA% zvAJsB+JDGoP1PyM=zL91X{uV%8;_xILXu=L^u(#H@g6Kn3YHfOTq0pmC76v0AGI`& zFM=VSXq13-ijkEXcgD~3oKfw-zgaSuf?d?IN}Prz6v{=g62KItdKw^6rO{ytLJh0Z z94yuDmty|SsvT+X&-3_)vsay-OaDz7;+#VX1;aoTJb35eP8O8W^YgzS&YS40yLaw~ zo!#_($6lZHH`Id%eXRvp03Ui+3p@jlX_Ed=_rE5w2y!KJm+XVMc|S4is@byoDbKo! zXR9Q5c+AU90tg2z>1I}k1DP(TBFwa%gh5sAw!7xSfd?DOA%bZ+-0Bmk+V_$?2vfah zODH^Z^?UUd zO@ta=c1X$BsBon3hl7AnC5bM{HkZAHnlKOHum_HNh>}UH|4uS5I$OYC!trq9!_r)P zM|D8gOQW?E7%WOt2Mus&c4%!9JO>zY$so~cI7sj==0yXwj9IzV{llU5wdK4{TPoiX z*zB3@ISwTZ4iYVgo0_Ty4GJnTj3y2a{*Og%*g2|OaZW&78&HH$yax}!E;1C96f=N+ zOtJVhF8P;2-5=s!N9@*9B-^LsYAas<|MWT@E2&avcTDi>IR|VB8DYrZWq^!t>ya`_ zP4vQJ8z-?}cto-(SL5^_rJmc#c|s^Pf83_>X={dLQFrr7b8<6?YmAuNj5zk;32vi1 z^Mef`ZyriYe0v~}_&6Y^LS-a1FhKFCix$=`#{$nW6`W@J*F3+n)qr!q1{-abpE7o0 z!TcxjNg^tSnu$Lja6H&?&e-=M?D=)s?4mbHtM{C~lY&t;jPKJ3Zp&$-g?gIPY{U$T zA3{U%rnBFDpEaD84>lZgq5i?+uokcRoY z+10QDTu`0y;$6x>BbVFezpT&kVQ0-QI0hPpK~{+)jm5YOlpVsA=Ww0j8xv}+gTY}C zGS~G1yfEICw+vPiZs&|NZ9|q>a-soT1+?fa6>DeGuD6=ciF7N3nWQrjeL*lh$+UC< z%P!E(vd-MT$@y%KQBkq?YP#F;mfOavl*kB{m1lP+?|f^RolT}ouzd?sCC1*-T;z5g zp}JRFyG_yUcaH3%1`8xCpQI?v*%D%;Ww1ktkt^TfB*Ql#)TV@L93M?X3Ax?S+nK2l ze6~xlt;Qf(V&V8qGa48bVC2ZjW4en3qzIvfds^*9!NBi7gCl$T3Y&F-GorxNrFjk$ z)@U;ebVJ1lNB;B<{Pq^slmv~6g1d7w42%{%s;f$*emgR-Oa4th>WA3=q6hLJA?~PG zDXp^A5ICo@Sdq*7iBdebk;vG_F<*Lvf2*PufJ&!{JX6@h5f zQ7XQ0=%g>`WB78he7$^_Y`SG%HhH`Uw0irUljf}rBhCCQ;c-IB7OTz=0 zD97-#OLFu3C4uNIj$$W2iJkFXD8H^h?@|-5i_-bmM9;SdinYCbn_#=!E}22p4l}m- zHjwMOlN9j?rDG#Df- z5G6~K0UI3>D@nRu$obFZF7AQrsKbc!h*P>E^rf>PI0nEHY%N|Hx$>ScxZEq$HM_?g z8*SuJ_}7pKG3a(#`P9wnQ0;-B-UBv;znN9&ozyCaN-MSR?~G0AM&Z8B2rl^5guB$e z&bicB^h=kU)LhluIC^@mvLNPm9EJQoYg@LdzF0qo5dE6A&EwV|hpN~vq-zA#)}xZc zOsCq6*l!@u&^pzlfSV)L0E+cKkY~$E18tUquu*)k%YEE^m$mU$W4jHf!2Re|coh z1#nDZu2gTBD* zA7YXqqQ>mW-ZlTSx7TQ;ZRHP3E77@j zTJIAK_T%!QrrS$I8(k0~;w4LQ;iKAf<-Q=hxxHhMw$=?R##R3d6sn3_zsqi;8RZfT4U)g!bj*ef-`t2Gwyzs466i#PPv8X7E2 zmS#%-P3~w*+)Xrn{?jz7ER7qJYp%h9RtyaiVr@mnDf@m|>(lY?x#*-rs;EiS zeMNDxqvw`;`{K!3rP>@PE(@Y8nlrJ%A)_h!r|^^}&~`AbFZv{Jr|ZB)&@+Ip02n^V zR~l6b=(`2iz{9K)mOeho{mTKr7Qhhe5Uw8rG;olG>0Z}GOJ`IHu)M|0BR?Ngv;5{3 zF!a>XImGfROkwWy6aa9Mf(MnrXLnK5bJZ$Z-5b4nH8FPVn404RUcX*jy^N$(Su!)? z7i7r3(K~LjTvf`Kp<9!y-L+hyBR@GzWj#;Wm1aV!3*o1{k(I~TBE-WzK#xODn_atUzr=Hs=|qu?-^M2;UFP#QQ5G&em1R1n}-?+6`#f9JT7d7z35MR zOYwAB&cx(a<|XdG%Bo&Ffz*VZ%y=+WeTVLGjynDK{EaXZK<{xC@wv3UOL%sKjFzeWt221N+S`T0zglp! z*0yzVtaGt6mhh^D$R$%waYcD=Nb~P=8~C+)!_$$CLmQyhEEM0N%!#P8IJ(;uH?4G5 z5S6en*m1lG?aLFwg3{^S&mT#hOn0ve(?Bw`-9Z0xsTtbZF;pEP-7p@811NQYnkdUj zG;Z5NW*{l4G$J>$A>GNDYZ_ly6X#mUP)2U3BqyQmlq%F-W!o$$Rt&_|pR?HB?66F3 z(Z(ZJf<3*{F^RG@>9CDQ{uYjwmimvlJU{~@iHPf%4I6ehuG;_d-0354x(C*8MUPz! z@nDLh<7+GMX1;V(sIvea6ZP&2;C|N<4)l}9I2a<0NRXEPlF3}cf6%e*DW?%pRFG(gN zb*T35SGC$=|57QDX!I-EEIq@w;T6?B0^t^Dnd5+DLr2;RD%O#xGLorgSx5Qx*&lc< zJt-bY(|WwRty3fB0?`hqc|$zw{@h3u1I)v>L*xS2{I!df8@E@2!U6-dfwED2C0$@f zUL;-&<(nEoX!I{VFbQlijA4XuG_ek!#iM5 zE5A8?TZE#MW$b<>Q}Y>(DLhE`?DHHJcSL3OW43DD17c(*FatyK)oiFd9I)dJ8;dBC4u~SvWadku3Ei`L7y@Xeb(@V&%BaD zheL#$_=a?Wga#ySI&`$@MM@@Mw5@sXktTG_exx}F@Y=p>qmV)szR*sY_d-w+48&yS z#nwK2Qtf4z6m#Q}I_1hWX?k}W$VzT6i-|93PGiR<7q^h2?eCnbNJrRZRrsc2vdn9a zovP&KVLU#OCmnXlR>;<&i!S;3UoIrC4QT^+1Jw&_&36B4YKpoLfBea?$UZr~*K4C1 z5d_{$GxYUvuFLriiue}aa@A$M%;e<%JA~(ES9dpd_Ozm5j5eUwdJiY%!sdLPwl5yA z@~&I3;Uz;Ok0!?CCgxk~!f!ZKO|8kCEw~5=j!)J;q&y<0lXcSMjP2}XCKpno+uUxK z>+-uUS3rSQvAV76-oD-XK%45krn5N?gZ%RG$^8OUJc`M${kzdNYiMM3J{HohfsQgZ@+& zlHjGA6;k6>;ac|XZ5-Fz*U-3k#`p3Xx!V17_(Yn0SXt^2?1REm#muh=bPp*BF%AX= z)%Kkg_BamZ73={!zV+Vq)nS&*Tpvp?_H+BviWRfV`%TMdrAuSRO;#)~Dc^WFQ@9H- znq>3Qwn7I4f3O+&@3HycX62WaI=%hMf#j1PY04RxIyJQX?zN3kV-a-;)qDN44W&})6vU&de$|s zZ|PhUos!pHpQ|$HRc?7)B5c2360AAe4G$Myk1 zE1c{G-DNqF(a|X}v{URQ`E9q{H3=NQHB!NP;{xB7^E`reIG0Yk{^MZGc#nkfNxx%MK*u+Gv*AHq#_CUMH;RwMaXpqwQ9z-6a2r@0oQdQaXlvhckE%Wr;f1 z%el|BN+(&YJL!ACcantON_50{rZ*+0KF+k%q|3HARLxEP^_EIzNjlDtioR)SrCJ>Q z&BnCQGZr4Vpl`0#Yc*vV9rcIr3FA;k!mY5`*`x*j6Szg7f9jh>mhwbP+rfZ5<8i}x zPi-bpMZxETeOLu5QStLeW0o<%ys_LQkdJAsEj|do1qXLvvK)?`2D)p^BbufKMWoYy zn7K1^%FA)ix#gebKaqhGvJaRPCrI~=vd%`@KJx{v(c=H{0u`IxlYxYcC< zSs<;=xZ?566bT@tYDyS2SVyYiuuua>UAb@jhf^?}m7ib%|59-+%oC(L3i<+Nn*VPN zdtcS6!i@F5^>aNj;A2t6(K%9s9bq9Q!Rso8H^?+yEfDdlnOq2)i6t26y)@jDhnjD` zs9(y_0Ss@)<0BDHXnQAF?+fQrqR(t^*1GbNhb877XE*4!p4=MYAB16)UtgcKZjjd+ z7e`H2G+qOreLCNU^;v|k#(mjkAXtnTwsbz99c;#KB>E3-rGUVe(@kSq#Tw>G_Jc*% zFK8OSTv0}ar{eOm`ffI&%CsERg|HFf*{K2FIn>PT>}Y#|Xl<42ver+K2YffH;^$HV zkW7lsI{#S9I{uTI)-BGZCG5D*zpew|yt>&ft${k@7g!}<9{ip$dWr%w8y^1Mj1F?Ug^9nwCDuIXZHt%b0sF1{9>AXwXg3>)-#_83 z{ra%ojK^k2>MDgj)|;@~I{e@J8$Hldw4-S30h1^6hX>WWFK(PMdpLa+>iUu;^t_6k z!AV4Uxat65xb^@Kq2U4bPxAE5-mVTt*TZ(kXjgYo!u~ZW6wc1lMc2KUo<7u4ez5s_ z(Nk=t_z!L*wqs{|JD(eNY&Egwi5AD#CZvvb+HhX?`ExiTE~s$fu4;>a0&YNbRc|lk zc@Mp$!CcCKQMZ3TZzp>(n~m=K@E)zF?CQ0&-HvVUoqgWZVmN{#=(c{r4K~woy!ris zm`i~(17V~{b;m1nPRE!r`w^Bx!Y|@pA1B(7G+T)!=ZJum#|`F4Przugz9XHyYgNto zo_fG+0q;cH!p+&|#F`a0%^Uw8S9>20+g@du4b(6?C>NHP4{c&*#rsPfIPyCk*ilxR z)r+{eVs|h{rWq8+(L>{DG5^F%lf%KtbccAky@pYV&avBdZ*uM&3VPPYQF67@z=WAh zg+37`gas5(ijrz)hX}JRhJ!LUGyG9Z42^F0%(Ut64Jc(7016)(??bC{F)q_1y_;7a z)~QEPsm=9#%{WR*Wpd~tLtOEM{!RM≠dR0E9ICQ{-tcR;@{R^I5P#1GUH!p=-{c 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 literal 0 HcmV?d00001 diff --git a/vraptor/src/main/webapp/vendor/font-awesome/less/animated.less b/vraptor/src/main/webapp/vendor/font-awesome/less/animated.less new file mode 100644 index 0000000000..66ad52a5ba --- /dev/null +++ b/vraptor/src/main/webapp/vendor/font-awesome/less/animated.less @@ -0,0 +1,34 @@ +// Animated Icons +// -------------------------- + +.@{fa-css-prefix}-spin { + -webkit-animation: fa-spin 2s infinite linear; + animation: fa-spin 2s infinite linear; +} + +.@{fa-css-prefix}-pulse { + -webkit-animation: fa-spin 1s infinite steps(8); + animation: fa-spin 1s infinite steps(8); +} + +@-webkit-keyframes fa-spin { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + 100% { + -webkit-transform: rotate(359deg); + transform: rotate(359deg); + } +} + +@keyframes fa-spin { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + 100% { + -webkit-transform: rotate(359deg); + transform: rotate(359deg); + } +} diff --git a/vraptor/src/main/webapp/vendor/font-awesome/less/bordered-pulled.less b/vraptor/src/main/webapp/vendor/font-awesome/less/bordered-pulled.less new file mode 100644 index 0000000000..f1c8ad75f5 --- /dev/null +++ b/vraptor/src/main/webapp/vendor/font-awesome/less/bordered-pulled.less @@ -0,0 +1,25 @@ +// Bordered & Pulled +// ------------------------- + +.@{fa-css-prefix}-border { + padding: .2em .25em .15em; + border: solid .08em @fa-border-color; + border-radius: .1em; +} + +.@{fa-css-prefix}-pull-left { float: left; } +.@{fa-css-prefix}-pull-right { float: right; } + +.@{fa-css-prefix} { + &.@{fa-css-prefix}-pull-left { margin-right: .3em; } + &.@{fa-css-prefix}-pull-right { margin-left: .3em; } +} + +/* Deprecated as of 4.4.0 */ +.pull-right { float: right; } +.pull-left { float: left; } + +.@{fa-css-prefix} { + &.pull-left { margin-right: .3em; } + &.pull-right { margin-left: .3em; } +} diff --git a/vraptor/src/main/webapp/vendor/font-awesome/less/core.less b/vraptor/src/main/webapp/vendor/font-awesome/less/core.less new file mode 100644 index 0000000000..c577ac84a6 --- /dev/null +++ b/vraptor/src/main/webapp/vendor/font-awesome/less/core.less @@ -0,0 +1,12 @@ +// Base Class Definition +// ------------------------- + +.@{fa-css-prefix} { + display: inline-block; + font: normal normal normal @fa-font-size-base/@fa-line-height-base FontAwesome; // shortening font declaration + font-size: inherit; // can't have font-size inherit on line above, so need to override + text-rendering: auto; // optimizelegibility throws things off #1094 + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + +} diff --git a/vraptor/src/main/webapp/vendor/font-awesome/less/fixed-width.less b/vraptor/src/main/webapp/vendor/font-awesome/less/fixed-width.less new file mode 100644 index 0000000000..110289f2f4 --- /dev/null +++ b/vraptor/src/main/webapp/vendor/font-awesome/less/fixed-width.less @@ -0,0 +1,6 @@ +// Fixed Width Icons +// ------------------------- +.@{fa-css-prefix}-fw { + width: (18em / 14); + text-align: center; +} diff --git a/vraptor/src/main/webapp/vendor/font-awesome/less/font-awesome.less b/vraptor/src/main/webapp/vendor/font-awesome/less/font-awesome.less new file mode 100644 index 0000000000..c44e5f466a --- /dev/null +++ b/vraptor/src/main/webapp/vendor/font-awesome/less/font-awesome.less @@ -0,0 +1,18 @@ +/*! + * Font Awesome 4.6.3 by @davegandy - http://fontawesome.io - @fontawesome + * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) + */ + +@import "variables.less"; +@import "mixins.less"; +@import "path.less"; +@import "core.less"; +@import "larger.less"; +@import "fixed-width.less"; +@import "list.less"; +@import "bordered-pulled.less"; +@import "animated.less"; +@import "rotated-flipped.less"; +@import "stacked.less"; +@import "icons.less"; +@import "screen-reader.less"; diff --git a/vraptor/src/main/webapp/vendor/font-awesome/less/icons.less b/vraptor/src/main/webapp/vendor/font-awesome/less/icons.less new file mode 100644 index 0000000000..ba21b222d6 --- /dev/null +++ b/vraptor/src/main/webapp/vendor/font-awesome/less/icons.less @@ -0,0 +1,733 @@ +/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen + readers do not read off random characters that represent icons */ + +.@{fa-css-prefix}-glass:before { content: @fa-var-glass; } +.@{fa-css-prefix}-music:before { content: @fa-var-music; } +.@{fa-css-prefix}-search:before { content: @fa-var-search; } +.@{fa-css-prefix}-envelope-o:before { content: @fa-var-envelope-o; } +.@{fa-css-prefix}-heart:before { content: @fa-var-heart; } +.@{fa-css-prefix}-star:before { content: @fa-var-star; } +.@{fa-css-prefix}-star-o:before { content: @fa-var-star-o; } +.@{fa-css-prefix}-user:before { content: @fa-var-user; } +.@{fa-css-prefix}-film:before { content: @fa-var-film; } +.@{fa-css-prefix}-th-large:before { content: @fa-var-th-large; } +.@{fa-css-prefix}-th:before { content: @fa-var-th; } +.@{fa-css-prefix}-th-list:before { content: @fa-var-th-list; } +.@{fa-css-prefix}-check:before { content: @fa-var-check; } +.@{fa-css-prefix}-remove:before, +.@{fa-css-prefix}-close:before, +.@{fa-css-prefix}-times:before { content: @fa-var-times; } +.@{fa-css-prefix}-search-plus:before { content: @fa-var-search-plus; } +.@{fa-css-prefix}-search-minus:before { content: @fa-var-search-minus; } +.@{fa-css-prefix}-power-off:before { content: @fa-var-power-off; } +.@{fa-css-prefix}-signal:before { content: @fa-var-signal; } +.@{fa-css-prefix}-gear:before, +.@{fa-css-prefix}-cog:before { content: @fa-var-cog; } +.@{fa-css-prefix}-trash-o:before { content: @fa-var-trash-o; } +.@{fa-css-prefix}-home:before { content: @fa-var-home; } +.@{fa-css-prefix}-file-o:before { content: @fa-var-file-o; } +.@{fa-css-prefix}-clock-o:before { content: @fa-var-clock-o; } +.@{fa-css-prefix}-road:before { content: @fa-var-road; } +.@{fa-css-prefix}-download:before { content: @fa-var-download; } +.@{fa-css-prefix}-arrow-circle-o-down:before { content: @fa-var-arrow-circle-o-down; } +.@{fa-css-prefix}-arrow-circle-o-up:before { content: @fa-var-arrow-circle-o-up; } +.@{fa-css-prefix}-inbox:before { content: @fa-var-inbox; } +.@{fa-css-prefix}-play-circle-o:before { content: @fa-var-play-circle-o; } +.@{fa-css-prefix}-rotate-right:before, +.@{fa-css-prefix}-repeat:before { content: @fa-var-repeat; } +.@{fa-css-prefix}-refresh:before { content: @fa-var-refresh; } +.@{fa-css-prefix}-list-alt:before { content: @fa-var-list-alt; } +.@{fa-css-prefix}-lock:before { content: @fa-var-lock; } +.@{fa-css-prefix}-flag:before { content: @fa-var-flag; } +.@{fa-css-prefix}-headphones:before { content: @fa-var-headphones; } +.@{fa-css-prefix}-volume-off:before { content: @fa-var-volume-off; } +.@{fa-css-prefix}-volume-down:before { content: @fa-var-volume-down; } +.@{fa-css-prefix}-volume-up:before { content: @fa-var-volume-up; } +.@{fa-css-prefix}-qrcode:before { content: @fa-var-qrcode; } +.@{fa-css-prefix}-barcode:before { content: @fa-var-barcode; } +.@{fa-css-prefix}-tag:before { content: @fa-var-tag; } +.@{fa-css-prefix}-tags:before { content: @fa-var-tags; } +.@{fa-css-prefix}-book:before { content: @fa-var-book; } +.@{fa-css-prefix}-bookmark:before { content: @fa-var-bookmark; } +.@{fa-css-prefix}-print:before { content: @fa-var-print; } +.@{fa-css-prefix}-camera:before { content: @fa-var-camera; } +.@{fa-css-prefix}-font:before { content: @fa-var-font; } +.@{fa-css-prefix}-bold:before { content: @fa-var-bold; } +.@{fa-css-prefix}-italic:before { content: @fa-var-italic; } +.@{fa-css-prefix}-text-height:before { content: @fa-var-text-height; } +.@{fa-css-prefix}-text-width:before { content: @fa-var-text-width; } +.@{fa-css-prefix}-align-left:before { content: @fa-var-align-left; } +.@{fa-css-prefix}-align-center:before { content: @fa-var-align-center; } +.@{fa-css-prefix}-align-right:before { content: @fa-var-align-right; } +.@{fa-css-prefix}-align-justify:before { content: @fa-var-align-justify; } +.@{fa-css-prefix}-list:before { content: @fa-var-list; } +.@{fa-css-prefix}-dedent:before, +.@{fa-css-prefix}-outdent:before { content: @fa-var-outdent; } +.@{fa-css-prefix}-indent:before { content: @fa-var-indent; } +.@{fa-css-prefix}-video-camera:before { content: @fa-var-video-camera; } +.@{fa-css-prefix}-photo:before, +.@{fa-css-prefix}-image:before, +.@{fa-css-prefix}-picture-o:before { content: @fa-var-picture-o; } +.@{fa-css-prefix}-pencil:before { content: @fa-var-pencil; } +.@{fa-css-prefix}-map-marker:before { content: @fa-var-map-marker; } +.@{fa-css-prefix}-adjust:before { content: @fa-var-adjust; } +.@{fa-css-prefix}-tint:before { content: @fa-var-tint; } +.@{fa-css-prefix}-edit:before, +.@{fa-css-prefix}-pencil-square-o:before { content: @fa-var-pencil-square-o; } +.@{fa-css-prefix}-share-square-o:before { content: @fa-var-share-square-o; } +.@{fa-css-prefix}-check-square-o:before { content: @fa-var-check-square-o; } +.@{fa-css-prefix}-arrows:before { content: @fa-var-arrows; } +.@{fa-css-prefix}-step-backward:before { content: @fa-var-step-backward; } +.@{fa-css-prefix}-fast-backward:before { content: @fa-var-fast-backward; } +.@{fa-css-prefix}-backward:before { content: @fa-var-backward; } +.@{fa-css-prefix}-play:before { content: @fa-var-play; } +.@{fa-css-prefix}-pause:before { content: @fa-var-pause; } +.@{fa-css-prefix}-stop:before { content: @fa-var-stop; } +.@{fa-css-prefix}-forward:before { content: @fa-var-forward; } +.@{fa-css-prefix}-fast-forward:before { content: @fa-var-fast-forward; } +.@{fa-css-prefix}-step-forward:before { content: @fa-var-step-forward; } +.@{fa-css-prefix}-eject:before { content: @fa-var-eject; } +.@{fa-css-prefix}-chevron-left:before { content: @fa-var-chevron-left; } +.@{fa-css-prefix}-chevron-right:before { content: @fa-var-chevron-right; } +.@{fa-css-prefix}-plus-circle:before { content: @fa-var-plus-circle; } +.@{fa-css-prefix}-minus-circle:before { content: @fa-var-minus-circle; } +.@{fa-css-prefix}-times-circle:before { content: @fa-var-times-circle; } +.@{fa-css-prefix}-check-circle:before { content: @fa-var-check-circle; } +.@{fa-css-prefix}-question-circle:before { content: @fa-var-question-circle; } +.@{fa-css-prefix}-info-circle:before { content: @fa-var-info-circle; } +.@{fa-css-prefix}-crosshairs:before { content: @fa-var-crosshairs; } +.@{fa-css-prefix}-times-circle-o:before { content: @fa-var-times-circle-o; } +.@{fa-css-prefix}-check-circle-o:before { content: @fa-var-check-circle-o; } +.@{fa-css-prefix}-ban:before { content: @fa-var-ban; } +.@{fa-css-prefix}-arrow-left:before { content: @fa-var-arrow-left; } +.@{fa-css-prefix}-arrow-right:before { content: @fa-var-arrow-right; } +.@{fa-css-prefix}-arrow-up:before { content: @fa-var-arrow-up; } +.@{fa-css-prefix}-arrow-down:before { content: @fa-var-arrow-down; } +.@{fa-css-prefix}-mail-forward:before, +.@{fa-css-prefix}-share:before { content: @fa-var-share; } +.@{fa-css-prefix}-expand:before { content: @fa-var-expand; } +.@{fa-css-prefix}-compress:before { content: @fa-var-compress; } +.@{fa-css-prefix}-plus:before { content: @fa-var-plus; } +.@{fa-css-prefix}-minus:before { content: @fa-var-minus; } +.@{fa-css-prefix}-asterisk:before { content: @fa-var-asterisk; } +.@{fa-css-prefix}-exclamation-circle:before { content: @fa-var-exclamation-circle; } +.@{fa-css-prefix}-gift:before { content: @fa-var-gift; } +.@{fa-css-prefix}-leaf:before { content: @fa-var-leaf; } +.@{fa-css-prefix}-fire:before { content: @fa-var-fire; } +.@{fa-css-prefix}-eye:before { content: @fa-var-eye; } +.@{fa-css-prefix}-eye-slash:before { content: @fa-var-eye-slash; } +.@{fa-css-prefix}-warning:before, +.@{fa-css-prefix}-exclamation-triangle:before { content: @fa-var-exclamation-triangle; } +.@{fa-css-prefix}-plane:before { content: @fa-var-plane; } +.@{fa-css-prefix}-calendar:before { content: @fa-var-calendar; } +.@{fa-css-prefix}-random:before { content: @fa-var-random; } +.@{fa-css-prefix}-comment:before { content: @fa-var-comment; } +.@{fa-css-prefix}-magnet:before { content: @fa-var-magnet; } +.@{fa-css-prefix}-chevron-up:before { content: @fa-var-chevron-up; } +.@{fa-css-prefix}-chevron-down:before { content: @fa-var-chevron-down; } +.@{fa-css-prefix}-retweet:before { content: @fa-var-retweet; } +.@{fa-css-prefix}-shopping-cart:before { content: @fa-var-shopping-cart; } +.@{fa-css-prefix}-folder:before { content: @fa-var-folder; } +.@{fa-css-prefix}-folder-open:before { content: @fa-var-folder-open; } +.@{fa-css-prefix}-arrows-v:before { content: @fa-var-arrows-v; } +.@{fa-css-prefix}-arrows-h:before { content: @fa-var-arrows-h; } +.@{fa-css-prefix}-bar-chart-o:before, +.@{fa-css-prefix}-bar-chart:before { content: @fa-var-bar-chart; } +.@{fa-css-prefix}-twitter-square:before { content: @fa-var-twitter-square; } +.@{fa-css-prefix}-facebook-square:before { content: @fa-var-facebook-square; } +.@{fa-css-prefix}-camera-retro:before { content: @fa-var-camera-retro; } +.@{fa-css-prefix}-key:before { content: @fa-var-key; } +.@{fa-css-prefix}-gears:before, +.@{fa-css-prefix}-cogs:before { content: @fa-var-cogs; } +.@{fa-css-prefix}-comments:before { content: @fa-var-comments; } +.@{fa-css-prefix}-thumbs-o-up:before { content: @fa-var-thumbs-o-up; } +.@{fa-css-prefix}-thumbs-o-down:before { content: @fa-var-thumbs-o-down; } +.@{fa-css-prefix}-star-half:before { content: @fa-var-star-half; } +.@{fa-css-prefix}-heart-o:before { content: @fa-var-heart-o; } +.@{fa-css-prefix}-sign-out:before { content: @fa-var-sign-out; } +.@{fa-css-prefix}-linkedin-square:before { content: @fa-var-linkedin-square; } +.@{fa-css-prefix}-thumb-tack:before { content: @fa-var-thumb-tack; } +.@{fa-css-prefix}-external-link:before { content: @fa-var-external-link; } +.@{fa-css-prefix}-sign-in:before { content: @fa-var-sign-in; } +.@{fa-css-prefix}-trophy:before { content: @fa-var-trophy; } +.@{fa-css-prefix}-github-square:before { content: @fa-var-github-square; } +.@{fa-css-prefix}-upload:before { content: @fa-var-upload; } +.@{fa-css-prefix}-lemon-o:before { content: @fa-var-lemon-o; } +.@{fa-css-prefix}-phone:before { content: @fa-var-phone; } +.@{fa-css-prefix}-square-o:before { content: @fa-var-square-o; } +.@{fa-css-prefix}-bookmark-o:before { content: @fa-var-bookmark-o; } +.@{fa-css-prefix}-phone-square:before { content: @fa-var-phone-square; } +.@{fa-css-prefix}-twitter:before { content: @fa-var-twitter; } +.@{fa-css-prefix}-facebook-f:before, +.@{fa-css-prefix}-facebook:before { content: @fa-var-facebook; } +.@{fa-css-prefix}-github:before { content: @fa-var-github; } +.@{fa-css-prefix}-unlock:before { content: @fa-var-unlock; } +.@{fa-css-prefix}-credit-card:before { content: @fa-var-credit-card; } +.@{fa-css-prefix}-feed:before, +.@{fa-css-prefix}-rss:before { content: @fa-var-rss; } +.@{fa-css-prefix}-hdd-o:before { content: @fa-var-hdd-o; } +.@{fa-css-prefix}-bullhorn:before { content: @fa-var-bullhorn; } +.@{fa-css-prefix}-bell:before { content: @fa-var-bell; } +.@{fa-css-prefix}-certificate:before { content: @fa-var-certificate; } +.@{fa-css-prefix}-hand-o-right:before { content: @fa-var-hand-o-right; } +.@{fa-css-prefix}-hand-o-left:before { content: @fa-var-hand-o-left; } +.@{fa-css-prefix}-hand-o-up:before { content: @fa-var-hand-o-up; } +.@{fa-css-prefix}-hand-o-down:before { content: @fa-var-hand-o-down; } +.@{fa-css-prefix}-arrow-circle-left:before { content: @fa-var-arrow-circle-left; } +.@{fa-css-prefix}-arrow-circle-right:before { content: @fa-var-arrow-circle-right; } +.@{fa-css-prefix}-arrow-circle-up:before { content: @fa-var-arrow-circle-up; } +.@{fa-css-prefix}-arrow-circle-down:before { content: @fa-var-arrow-circle-down; } +.@{fa-css-prefix}-globe:before { content: @fa-var-globe; } +.@{fa-css-prefix}-wrench:before { content: @fa-var-wrench; } +.@{fa-css-prefix}-tasks:before { content: @fa-var-tasks; } +.@{fa-css-prefix}-filter:before { content: @fa-var-filter; } +.@{fa-css-prefix}-briefcase:before { content: @fa-var-briefcase; } +.@{fa-css-prefix}-arrows-alt:before { content: @fa-var-arrows-alt; } +.@{fa-css-prefix}-group:before, +.@{fa-css-prefix}-users:before { content: @fa-var-users; } +.@{fa-css-prefix}-chain:before, +.@{fa-css-prefix}-link:before { content: @fa-var-link; } +.@{fa-css-prefix}-cloud:before { content: @fa-var-cloud; } +.@{fa-css-prefix}-flask:before { content: @fa-var-flask; } +.@{fa-css-prefix}-cut:before, +.@{fa-css-prefix}-scissors:before { content: @fa-var-scissors; } +.@{fa-css-prefix}-copy:before, +.@{fa-css-prefix}-files-o:before { content: @fa-var-files-o; } +.@{fa-css-prefix}-paperclip:before { content: @fa-var-paperclip; } +.@{fa-css-prefix}-save:before, +.@{fa-css-prefix}-floppy-o:before { content: @fa-var-floppy-o; } +.@{fa-css-prefix}-square:before { content: @fa-var-square; } +.@{fa-css-prefix}-navicon:before, +.@{fa-css-prefix}-reorder:before, +.@{fa-css-prefix}-bars:before { content: @fa-var-bars; } +.@{fa-css-prefix}-list-ul:before { content: @fa-var-list-ul; } +.@{fa-css-prefix}-list-ol:before { content: @fa-var-list-ol; } +.@{fa-css-prefix}-strikethrough:before { content: @fa-var-strikethrough; } +.@{fa-css-prefix}-underline:before { content: @fa-var-underline; } +.@{fa-css-prefix}-table:before { content: @fa-var-table; } +.@{fa-css-prefix}-magic:before { content: @fa-var-magic; } +.@{fa-css-prefix}-truck:before { content: @fa-var-truck; } +.@{fa-css-prefix}-pinterest:before { content: @fa-var-pinterest; } +.@{fa-css-prefix}-pinterest-square:before { content: @fa-var-pinterest-square; } +.@{fa-css-prefix}-google-plus-square:before { content: @fa-var-google-plus-square; } +.@{fa-css-prefix}-google-plus:before { content: @fa-var-google-plus; } +.@{fa-css-prefix}-money:before { content: @fa-var-money; } +.@{fa-css-prefix}-caret-down:before { content: @fa-var-caret-down; } +.@{fa-css-prefix}-caret-up:before { content: @fa-var-caret-up; } +.@{fa-css-prefix}-caret-left:before { content: @fa-var-caret-left; } +.@{fa-css-prefix}-caret-right:before { content: @fa-var-caret-right; } +.@{fa-css-prefix}-columns:before { content: @fa-var-columns; } +.@{fa-css-prefix}-unsorted:before, +.@{fa-css-prefix}-sort:before { content: @fa-var-sort; } +.@{fa-css-prefix}-sort-down:before, +.@{fa-css-prefix}-sort-desc:before { content: @fa-var-sort-desc; } +.@{fa-css-prefix}-sort-up:before, +.@{fa-css-prefix}-sort-asc:before { content: @fa-var-sort-asc; } +.@{fa-css-prefix}-envelope:before { content: @fa-var-envelope; } +.@{fa-css-prefix}-linkedin:before { content: @fa-var-linkedin; } +.@{fa-css-prefix}-rotate-left:before, +.@{fa-css-prefix}-undo:before { content: @fa-var-undo; } +.@{fa-css-prefix}-legal:before, +.@{fa-css-prefix}-gavel:before { content: @fa-var-gavel; } +.@{fa-css-prefix}-dashboard:before, +.@{fa-css-prefix}-tachometer:before { content: @fa-var-tachometer; } +.@{fa-css-prefix}-comment-o:before { content: @fa-var-comment-o; } +.@{fa-css-prefix}-comments-o:before { content: @fa-var-comments-o; } +.@{fa-css-prefix}-flash:before, +.@{fa-css-prefix}-bolt:before { content: @fa-var-bolt; } +.@{fa-css-prefix}-sitemap:before { content: @fa-var-sitemap; } +.@{fa-css-prefix}-umbrella:before { content: @fa-var-umbrella; } +.@{fa-css-prefix}-paste:before, +.@{fa-css-prefix}-clipboard:before { content: @fa-var-clipboard; } +.@{fa-css-prefix}-lightbulb-o:before { content: @fa-var-lightbulb-o; } +.@{fa-css-prefix}-exchange:before { content: @fa-var-exchange; } +.@{fa-css-prefix}-cloud-download:before { content: @fa-var-cloud-download; } +.@{fa-css-prefix}-cloud-upload:before { content: @fa-var-cloud-upload; } +.@{fa-css-prefix}-user-md:before { content: @fa-var-user-md; } +.@{fa-css-prefix}-stethoscope:before { content: @fa-var-stethoscope; } +.@{fa-css-prefix}-suitcase:before { content: @fa-var-suitcase; } +.@{fa-css-prefix}-bell-o:before { content: @fa-var-bell-o; } +.@{fa-css-prefix}-coffee:before { content: @fa-var-coffee; } +.@{fa-css-prefix}-cutlery:before { content: @fa-var-cutlery; } +.@{fa-css-prefix}-file-text-o:before { content: @fa-var-file-text-o; } +.@{fa-css-prefix}-building-o:before { content: @fa-var-building-o; } +.@{fa-css-prefix}-hospital-o:before { content: @fa-var-hospital-o; } +.@{fa-css-prefix}-ambulance:before { content: @fa-var-ambulance; } +.@{fa-css-prefix}-medkit:before { content: @fa-var-medkit; } +.@{fa-css-prefix}-fighter-jet:before { content: @fa-var-fighter-jet; } +.@{fa-css-prefix}-beer:before { content: @fa-var-beer; } +.@{fa-css-prefix}-h-square:before { content: @fa-var-h-square; } +.@{fa-css-prefix}-plus-square:before { content: @fa-var-plus-square; } +.@{fa-css-prefix}-angle-double-left:before { content: @fa-var-angle-double-left; } +.@{fa-css-prefix}-angle-double-right:before { content: @fa-var-angle-double-right; } +.@{fa-css-prefix}-angle-double-up:before { content: @fa-var-angle-double-up; } +.@{fa-css-prefix}-angle-double-down:before { content: @fa-var-angle-double-down; } +.@{fa-css-prefix}-angle-left:before { content: @fa-var-angle-left; } +.@{fa-css-prefix}-angle-right:before { content: @fa-var-angle-right; } +.@{fa-css-prefix}-angle-up:before { content: @fa-var-angle-up; } +.@{fa-css-prefix}-angle-down:before { content: @fa-var-angle-down; } +.@{fa-css-prefix}-desktop:before { content: @fa-var-desktop; } +.@{fa-css-prefix}-laptop:before { content: @fa-var-laptop; } +.@{fa-css-prefix}-tablet:before { content: @fa-var-tablet; } +.@{fa-css-prefix}-mobile-phone:before, +.@{fa-css-prefix}-mobile:before { content: @fa-var-mobile; } +.@{fa-css-prefix}-circle-o:before { content: @fa-var-circle-o; } +.@{fa-css-prefix}-quote-left:before { content: @fa-var-quote-left; } +.@{fa-css-prefix}-quote-right:before { content: @fa-var-quote-right; } +.@{fa-css-prefix}-spinner:before { content: @fa-var-spinner; } +.@{fa-css-prefix}-circle:before { content: @fa-var-circle; } +.@{fa-css-prefix}-mail-reply:before, +.@{fa-css-prefix}-reply:before { content: @fa-var-reply; } +.@{fa-css-prefix}-github-alt:before { content: @fa-var-github-alt; } +.@{fa-css-prefix}-folder-o:before { content: @fa-var-folder-o; } +.@{fa-css-prefix}-folder-open-o:before { content: @fa-var-folder-open-o; } +.@{fa-css-prefix}-smile-o:before { content: @fa-var-smile-o; } +.@{fa-css-prefix}-frown-o:before { content: @fa-var-frown-o; } +.@{fa-css-prefix}-meh-o:before { content: @fa-var-meh-o; } +.@{fa-css-prefix}-gamepad:before { content: @fa-var-gamepad; } +.@{fa-css-prefix}-keyboard-o:before { content: @fa-var-keyboard-o; } +.@{fa-css-prefix}-flag-o:before { content: @fa-var-flag-o; } +.@{fa-css-prefix}-flag-checkered:before { content: @fa-var-flag-checkered; } +.@{fa-css-prefix}-terminal:before { content: @fa-var-terminal; } +.@{fa-css-prefix}-code:before { content: @fa-var-code; } +.@{fa-css-prefix}-mail-reply-all:before, +.@{fa-css-prefix}-reply-all:before { content: @fa-var-reply-all; } +.@{fa-css-prefix}-star-half-empty:before, +.@{fa-css-prefix}-star-half-full:before, +.@{fa-css-prefix}-star-half-o:before { content: @fa-var-star-half-o; } +.@{fa-css-prefix}-location-arrow:before { content: @fa-var-location-arrow; } +.@{fa-css-prefix}-crop:before { content: @fa-var-crop; } +.@{fa-css-prefix}-code-fork:before { content: @fa-var-code-fork; } +.@{fa-css-prefix}-unlink:before, +.@{fa-css-prefix}-chain-broken:before { content: @fa-var-chain-broken; } +.@{fa-css-prefix}-question:before { content: @fa-var-question; } +.@{fa-css-prefix}-info:before { content: @fa-var-info; } +.@{fa-css-prefix}-exclamation:before { content: @fa-var-exclamation; } +.@{fa-css-prefix}-superscript:before { content: @fa-var-superscript; } +.@{fa-css-prefix}-subscript:before { content: @fa-var-subscript; } +.@{fa-css-prefix}-eraser:before { content: @fa-var-eraser; } +.@{fa-css-prefix}-puzzle-piece:before { content: @fa-var-puzzle-piece; } +.@{fa-css-prefix}-microphone:before { content: @fa-var-microphone; } +.@{fa-css-prefix}-microphone-slash:before { content: @fa-var-microphone-slash; } +.@{fa-css-prefix}-shield:before { content: @fa-var-shield; } +.@{fa-css-prefix}-calendar-o:before { content: @fa-var-calendar-o; } +.@{fa-css-prefix}-fire-extinguisher:before { content: @fa-var-fire-extinguisher; } +.@{fa-css-prefix}-rocket:before { content: @fa-var-rocket; } +.@{fa-css-prefix}-maxcdn:before { content: @fa-var-maxcdn; } +.@{fa-css-prefix}-chevron-circle-left:before { content: @fa-var-chevron-circle-left; } +.@{fa-css-prefix}-chevron-circle-right:before { content: @fa-var-chevron-circle-right; } +.@{fa-css-prefix}-chevron-circle-up:before { content: @fa-var-chevron-circle-up; } +.@{fa-css-prefix}-chevron-circle-down:before { content: @fa-var-chevron-circle-down; } +.@{fa-css-prefix}-html5:before { content: @fa-var-html5; } +.@{fa-css-prefix}-css3:before { content: @fa-var-css3; } +.@{fa-css-prefix}-anchor:before { content: @fa-var-anchor; } +.@{fa-css-prefix}-unlock-alt:before { content: @fa-var-unlock-alt; } +.@{fa-css-prefix}-bullseye:before { content: @fa-var-bullseye; } +.@{fa-css-prefix}-ellipsis-h:before { content: @fa-var-ellipsis-h; } +.@{fa-css-prefix}-ellipsis-v:before { content: @fa-var-ellipsis-v; } +.@{fa-css-prefix}-rss-square:before { content: @fa-var-rss-square; } +.@{fa-css-prefix}-play-circle:before { content: @fa-var-play-circle; } +.@{fa-css-prefix}-ticket:before { content: @fa-var-ticket; } +.@{fa-css-prefix}-minus-square:before { content: @fa-var-minus-square; } +.@{fa-css-prefix}-minus-square-o:before { content: @fa-var-minus-square-o; } +.@{fa-css-prefix}-level-up:before { content: @fa-var-level-up; } +.@{fa-css-prefix}-level-down:before { content: @fa-var-level-down; } +.@{fa-css-prefix}-check-square:before { content: @fa-var-check-square; } +.@{fa-css-prefix}-pencil-square:before { content: @fa-var-pencil-square; } +.@{fa-css-prefix}-external-link-square:before { content: @fa-var-external-link-square; } +.@{fa-css-prefix}-share-square:before { content: @fa-var-share-square; } +.@{fa-css-prefix}-compass:before { content: @fa-var-compass; } +.@{fa-css-prefix}-toggle-down:before, +.@{fa-css-prefix}-caret-square-o-down:before { content: @fa-var-caret-square-o-down; } +.@{fa-css-prefix}-toggle-up:before, +.@{fa-css-prefix}-caret-square-o-up:before { content: @fa-var-caret-square-o-up; } +.@{fa-css-prefix}-toggle-right:before, +.@{fa-css-prefix}-caret-square-o-right:before { content: @fa-var-caret-square-o-right; } +.@{fa-css-prefix}-euro:before, +.@{fa-css-prefix}-eur:before { content: @fa-var-eur; } +.@{fa-css-prefix}-gbp:before { content: @fa-var-gbp; } +.@{fa-css-prefix}-dollar:before, +.@{fa-css-prefix}-usd:before { content: @fa-var-usd; } +.@{fa-css-prefix}-rupee:before, +.@{fa-css-prefix}-inr:before { content: @fa-var-inr; } +.@{fa-css-prefix}-cny:before, +.@{fa-css-prefix}-rmb:before, +.@{fa-css-prefix}-yen:before, +.@{fa-css-prefix}-jpy:before { content: @fa-var-jpy; } +.@{fa-css-prefix}-ruble:before, +.@{fa-css-prefix}-rouble:before, +.@{fa-css-prefix}-rub:before { content: @fa-var-rub; } +.@{fa-css-prefix}-won:before, +.@{fa-css-prefix}-krw:before { content: @fa-var-krw; } +.@{fa-css-prefix}-bitcoin:before, +.@{fa-css-prefix}-btc:before { content: @fa-var-btc; } +.@{fa-css-prefix}-file:before { content: @fa-var-file; } +.@{fa-css-prefix}-file-text:before { content: @fa-var-file-text; } +.@{fa-css-prefix}-sort-alpha-asc:before { content: @fa-var-sort-alpha-asc; } +.@{fa-css-prefix}-sort-alpha-desc:before { content: @fa-var-sort-alpha-desc; } +.@{fa-css-prefix}-sort-amount-asc:before { content: @fa-var-sort-amount-asc; } +.@{fa-css-prefix}-sort-amount-desc:before { content: @fa-var-sort-amount-desc; } +.@{fa-css-prefix}-sort-numeric-asc:before { content: @fa-var-sort-numeric-asc; } +.@{fa-css-prefix}-sort-numeric-desc:before { content: @fa-var-sort-numeric-desc; } +.@{fa-css-prefix}-thumbs-up:before { content: @fa-var-thumbs-up; } +.@{fa-css-prefix}-thumbs-down:before { content: @fa-var-thumbs-down; } +.@{fa-css-prefix}-youtube-square:before { content: @fa-var-youtube-square; } +.@{fa-css-prefix}-youtube:before { content: @fa-var-youtube; } +.@{fa-css-prefix}-xing:before { content: @fa-var-xing; } +.@{fa-css-prefix}-xing-square:before { content: @fa-var-xing-square; } +.@{fa-css-prefix}-youtube-play:before { content: @fa-var-youtube-play; } +.@{fa-css-prefix}-dropbox:before { content: @fa-var-dropbox; } +.@{fa-css-prefix}-stack-overflow:before { content: @fa-var-stack-overflow; } +.@{fa-css-prefix}-instagram:before { content: @fa-var-instagram; } +.@{fa-css-prefix}-flickr:before { content: @fa-var-flickr; } +.@{fa-css-prefix}-adn:before { content: @fa-var-adn; } +.@{fa-css-prefix}-bitbucket:before { content: @fa-var-bitbucket; } +.@{fa-css-prefix}-bitbucket-square:before { content: @fa-var-bitbucket-square; } +.@{fa-css-prefix}-tumblr:before { content: @fa-var-tumblr; } +.@{fa-css-prefix}-tumblr-square:before { content: @fa-var-tumblr-square; } +.@{fa-css-prefix}-long-arrow-down:before { content: @fa-var-long-arrow-down; } +.@{fa-css-prefix}-long-arrow-up:before { content: @fa-var-long-arrow-up; } +.@{fa-css-prefix}-long-arrow-left:before { content: @fa-var-long-arrow-left; } +.@{fa-css-prefix}-long-arrow-right:before { content: @fa-var-long-arrow-right; } +.@{fa-css-prefix}-apple:before { content: @fa-var-apple; } +.@{fa-css-prefix}-windows:before { content: @fa-var-windows; } +.@{fa-css-prefix}-android:before { content: @fa-var-android; } +.@{fa-css-prefix}-linux:before { content: @fa-var-linux; } +.@{fa-css-prefix}-dribbble:before { content: @fa-var-dribbble; } +.@{fa-css-prefix}-skype:before { content: @fa-var-skype; } +.@{fa-css-prefix}-foursquare:before { content: @fa-var-foursquare; } +.@{fa-css-prefix}-trello:before { content: @fa-var-trello; } +.@{fa-css-prefix}-female:before { content: @fa-var-female; } +.@{fa-css-prefix}-male:before { content: @fa-var-male; } +.@{fa-css-prefix}-gittip:before, +.@{fa-css-prefix}-gratipay:before { content: @fa-var-gratipay; } +.@{fa-css-prefix}-sun-o:before { content: @fa-var-sun-o; } +.@{fa-css-prefix}-moon-o:before { content: @fa-var-moon-o; } +.@{fa-css-prefix}-archive:before { content: @fa-var-archive; } +.@{fa-css-prefix}-bug:before { content: @fa-var-bug; } +.@{fa-css-prefix}-vk:before { content: @fa-var-vk; } +.@{fa-css-prefix}-weibo:before { content: @fa-var-weibo; } +.@{fa-css-prefix}-renren:before { content: @fa-var-renren; } +.@{fa-css-prefix}-pagelines:before { content: @fa-var-pagelines; } +.@{fa-css-prefix}-stack-exchange:before { content: @fa-var-stack-exchange; } +.@{fa-css-prefix}-arrow-circle-o-right:before { content: @fa-var-arrow-circle-o-right; } +.@{fa-css-prefix}-arrow-circle-o-left:before { content: @fa-var-arrow-circle-o-left; } +.@{fa-css-prefix}-toggle-left:before, +.@{fa-css-prefix}-caret-square-o-left:before { content: @fa-var-caret-square-o-left; } +.@{fa-css-prefix}-dot-circle-o:before { content: @fa-var-dot-circle-o; } +.@{fa-css-prefix}-wheelchair:before { content: @fa-var-wheelchair; } +.@{fa-css-prefix}-vimeo-square:before { content: @fa-var-vimeo-square; } +.@{fa-css-prefix}-turkish-lira:before, +.@{fa-css-prefix}-try:before { content: @fa-var-try; } +.@{fa-css-prefix}-plus-square-o:before { content: @fa-var-plus-square-o; } +.@{fa-css-prefix}-space-shuttle:before { content: @fa-var-space-shuttle; } +.@{fa-css-prefix}-slack:before { content: @fa-var-slack; } +.@{fa-css-prefix}-envelope-square:before { content: @fa-var-envelope-square; } +.@{fa-css-prefix}-wordpress:before { content: @fa-var-wordpress; } +.@{fa-css-prefix}-openid:before { content: @fa-var-openid; } +.@{fa-css-prefix}-institution:before, +.@{fa-css-prefix}-bank:before, +.@{fa-css-prefix}-university:before { content: @fa-var-university; } +.@{fa-css-prefix}-mortar-board:before, +.@{fa-css-prefix}-graduation-cap:before { content: @fa-var-graduation-cap; } +.@{fa-css-prefix}-yahoo:before { content: @fa-var-yahoo; } +.@{fa-css-prefix}-google:before { content: @fa-var-google; } +.@{fa-css-prefix}-reddit:before { content: @fa-var-reddit; } +.@{fa-css-prefix}-reddit-square:before { content: @fa-var-reddit-square; } +.@{fa-css-prefix}-stumbleupon-circle:before { content: @fa-var-stumbleupon-circle; } +.@{fa-css-prefix}-stumbleupon:before { content: @fa-var-stumbleupon; } +.@{fa-css-prefix}-delicious:before { content: @fa-var-delicious; } +.@{fa-css-prefix}-digg:before { content: @fa-var-digg; } +.@{fa-css-prefix}-pied-piper-pp:before { content: @fa-var-pied-piper-pp; } +.@{fa-css-prefix}-pied-piper-alt:before { content: @fa-var-pied-piper-alt; } +.@{fa-css-prefix}-drupal:before { content: @fa-var-drupal; } +.@{fa-css-prefix}-joomla:before { content: @fa-var-joomla; } +.@{fa-css-prefix}-language:before { content: @fa-var-language; } +.@{fa-css-prefix}-fax:before { content: @fa-var-fax; } +.@{fa-css-prefix}-building:before { content: @fa-var-building; } +.@{fa-css-prefix}-child:before { content: @fa-var-child; } +.@{fa-css-prefix}-paw:before { content: @fa-var-paw; } +.@{fa-css-prefix}-spoon:before { content: @fa-var-spoon; } +.@{fa-css-prefix}-cube:before { content: @fa-var-cube; } +.@{fa-css-prefix}-cubes:before { content: @fa-var-cubes; } +.@{fa-css-prefix}-behance:before { content: @fa-var-behance; } +.@{fa-css-prefix}-behance-square:before { content: @fa-var-behance-square; } +.@{fa-css-prefix}-steam:before { content: @fa-var-steam; } +.@{fa-css-prefix}-steam-square:before { content: @fa-var-steam-square; } +.@{fa-css-prefix}-recycle:before { content: @fa-var-recycle; } +.@{fa-css-prefix}-automobile:before, +.@{fa-css-prefix}-car:before { content: @fa-var-car; } +.@{fa-css-prefix}-cab:before, +.@{fa-css-prefix}-taxi:before { content: @fa-var-taxi; } +.@{fa-css-prefix}-tree:before { content: @fa-var-tree; } +.@{fa-css-prefix}-spotify:before { content: @fa-var-spotify; } +.@{fa-css-prefix}-deviantart:before { content: @fa-var-deviantart; } +.@{fa-css-prefix}-soundcloud:before { content: @fa-var-soundcloud; } +.@{fa-css-prefix}-database:before { content: @fa-var-database; } +.@{fa-css-prefix}-file-pdf-o:before { content: @fa-var-file-pdf-o; } +.@{fa-css-prefix}-file-word-o:before { content: @fa-var-file-word-o; } +.@{fa-css-prefix}-file-excel-o:before { content: @fa-var-file-excel-o; } +.@{fa-css-prefix}-file-powerpoint-o:before { content: @fa-var-file-powerpoint-o; } +.@{fa-css-prefix}-file-photo-o:before, +.@{fa-css-prefix}-file-picture-o:before, +.@{fa-css-prefix}-file-image-o:before { content: @fa-var-file-image-o; } +.@{fa-css-prefix}-file-zip-o:before, +.@{fa-css-prefix}-file-archive-o:before { content: @fa-var-file-archive-o; } +.@{fa-css-prefix}-file-sound-o:before, +.@{fa-css-prefix}-file-audio-o:before { content: @fa-var-file-audio-o; } +.@{fa-css-prefix}-file-movie-o:before, +.@{fa-css-prefix}-file-video-o:before { content: @fa-var-file-video-o; } +.@{fa-css-prefix}-file-code-o:before { content: @fa-var-file-code-o; } +.@{fa-css-prefix}-vine:before { content: @fa-var-vine; } +.@{fa-css-prefix}-codepen:before { content: @fa-var-codepen; } +.@{fa-css-prefix}-jsfiddle:before { content: @fa-var-jsfiddle; } +.@{fa-css-prefix}-life-bouy:before, +.@{fa-css-prefix}-life-buoy:before, +.@{fa-css-prefix}-life-saver:before, +.@{fa-css-prefix}-support:before, +.@{fa-css-prefix}-life-ring:before { content: @fa-var-life-ring; } +.@{fa-css-prefix}-circle-o-notch:before { content: @fa-var-circle-o-notch; } +.@{fa-css-prefix}-ra:before, +.@{fa-css-prefix}-resistance:before, +.@{fa-css-prefix}-rebel:before { content: @fa-var-rebel; } +.@{fa-css-prefix}-ge:before, +.@{fa-css-prefix}-empire:before { content: @fa-var-empire; } +.@{fa-css-prefix}-git-square:before { content: @fa-var-git-square; } +.@{fa-css-prefix}-git:before { content: @fa-var-git; } +.@{fa-css-prefix}-y-combinator-square:before, +.@{fa-css-prefix}-yc-square:before, +.@{fa-css-prefix}-hacker-news:before { content: @fa-var-hacker-news; } +.@{fa-css-prefix}-tencent-weibo:before { content: @fa-var-tencent-weibo; } +.@{fa-css-prefix}-qq:before { content: @fa-var-qq; } +.@{fa-css-prefix}-wechat:before, +.@{fa-css-prefix}-weixin:before { content: @fa-var-weixin; } +.@{fa-css-prefix}-send:before, +.@{fa-css-prefix}-paper-plane:before { content: @fa-var-paper-plane; } +.@{fa-css-prefix}-send-o:before, +.@{fa-css-prefix}-paper-plane-o:before { content: @fa-var-paper-plane-o; } +.@{fa-css-prefix}-history:before { content: @fa-var-history; } +.@{fa-css-prefix}-circle-thin:before { content: @fa-var-circle-thin; } +.@{fa-css-prefix}-header:before { content: @fa-var-header; } +.@{fa-css-prefix}-paragraph:before { content: @fa-var-paragraph; } +.@{fa-css-prefix}-sliders:before { content: @fa-var-sliders; } +.@{fa-css-prefix}-share-alt:before { content: @fa-var-share-alt; } +.@{fa-css-prefix}-share-alt-square:before { content: @fa-var-share-alt-square; } +.@{fa-css-prefix}-bomb:before { content: @fa-var-bomb; } +.@{fa-css-prefix}-soccer-ball-o:before, +.@{fa-css-prefix}-futbol-o:before { content: @fa-var-futbol-o; } +.@{fa-css-prefix}-tty:before { content: @fa-var-tty; } +.@{fa-css-prefix}-binoculars:before { content: @fa-var-binoculars; } +.@{fa-css-prefix}-plug:before { content: @fa-var-plug; } +.@{fa-css-prefix}-slideshare:before { content: @fa-var-slideshare; } +.@{fa-css-prefix}-twitch:before { content: @fa-var-twitch; } +.@{fa-css-prefix}-yelp:before { content: @fa-var-yelp; } +.@{fa-css-prefix}-newspaper-o:before { content: @fa-var-newspaper-o; } +.@{fa-css-prefix}-wifi:before { content: @fa-var-wifi; } +.@{fa-css-prefix}-calculator:before { content: @fa-var-calculator; } +.@{fa-css-prefix}-paypal:before { content: @fa-var-paypal; } +.@{fa-css-prefix}-google-wallet:before { content: @fa-var-google-wallet; } +.@{fa-css-prefix}-cc-visa:before { content: @fa-var-cc-visa; } +.@{fa-css-prefix}-cc-mastercard:before { content: @fa-var-cc-mastercard; } +.@{fa-css-prefix}-cc-discover:before { content: @fa-var-cc-discover; } +.@{fa-css-prefix}-cc-amex:before { content: @fa-var-cc-amex; } +.@{fa-css-prefix}-cc-paypal:before { content: @fa-var-cc-paypal; } +.@{fa-css-prefix}-cc-stripe:before { content: @fa-var-cc-stripe; } +.@{fa-css-prefix}-bell-slash:before { content: @fa-var-bell-slash; } +.@{fa-css-prefix}-bell-slash-o:before { content: @fa-var-bell-slash-o; } +.@{fa-css-prefix}-trash:before { content: @fa-var-trash; } +.@{fa-css-prefix}-copyright:before { content: @fa-var-copyright; } +.@{fa-css-prefix}-at:before { content: @fa-var-at; } +.@{fa-css-prefix}-eyedropper:before { content: @fa-var-eyedropper; } +.@{fa-css-prefix}-paint-brush:before { content: @fa-var-paint-brush; } +.@{fa-css-prefix}-birthday-cake:before { content: @fa-var-birthday-cake; } +.@{fa-css-prefix}-area-chart:before { content: @fa-var-area-chart; } +.@{fa-css-prefix}-pie-chart:before { content: @fa-var-pie-chart; } +.@{fa-css-prefix}-line-chart:before { content: @fa-var-line-chart; } +.@{fa-css-prefix}-lastfm:before { content: @fa-var-lastfm; } +.@{fa-css-prefix}-lastfm-square:before { content: @fa-var-lastfm-square; } +.@{fa-css-prefix}-toggle-off:before { content: @fa-var-toggle-off; } +.@{fa-css-prefix}-toggle-on:before { content: @fa-var-toggle-on; } +.@{fa-css-prefix}-bicycle:before { content: @fa-var-bicycle; } +.@{fa-css-prefix}-bus:before { content: @fa-var-bus; } +.@{fa-css-prefix}-ioxhost:before { content: @fa-var-ioxhost; } +.@{fa-css-prefix}-angellist:before { content: @fa-var-angellist; } +.@{fa-css-prefix}-cc:before { content: @fa-var-cc; } +.@{fa-css-prefix}-shekel:before, +.@{fa-css-prefix}-sheqel:before, +.@{fa-css-prefix}-ils:before { content: @fa-var-ils; } +.@{fa-css-prefix}-meanpath:before { content: @fa-var-meanpath; } +.@{fa-css-prefix}-buysellads:before { content: @fa-var-buysellads; } +.@{fa-css-prefix}-connectdevelop:before { content: @fa-var-connectdevelop; } +.@{fa-css-prefix}-dashcube:before { content: @fa-var-dashcube; } +.@{fa-css-prefix}-forumbee:before { content: @fa-var-forumbee; } +.@{fa-css-prefix}-leanpub:before { content: @fa-var-leanpub; } +.@{fa-css-prefix}-sellsy:before { content: @fa-var-sellsy; } +.@{fa-css-prefix}-shirtsinbulk:before { content: @fa-var-shirtsinbulk; } +.@{fa-css-prefix}-simplybuilt:before { content: @fa-var-simplybuilt; } +.@{fa-css-prefix}-skyatlas:before { content: @fa-var-skyatlas; } +.@{fa-css-prefix}-cart-plus:before { content: @fa-var-cart-plus; } +.@{fa-css-prefix}-cart-arrow-down:before { content: @fa-var-cart-arrow-down; } +.@{fa-css-prefix}-diamond:before { content: @fa-var-diamond; } +.@{fa-css-prefix}-ship:before { content: @fa-var-ship; } +.@{fa-css-prefix}-user-secret:before { content: @fa-var-user-secret; } +.@{fa-css-prefix}-motorcycle:before { content: @fa-var-motorcycle; } +.@{fa-css-prefix}-street-view:before { content: @fa-var-street-view; } +.@{fa-css-prefix}-heartbeat:before { content: @fa-var-heartbeat; } +.@{fa-css-prefix}-venus:before { content: @fa-var-venus; } +.@{fa-css-prefix}-mars:before { content: @fa-var-mars; } +.@{fa-css-prefix}-mercury:before { content: @fa-var-mercury; } +.@{fa-css-prefix}-intersex:before, +.@{fa-css-prefix}-transgender:before { content: @fa-var-transgender; } +.@{fa-css-prefix}-transgender-alt:before { content: @fa-var-transgender-alt; } +.@{fa-css-prefix}-venus-double:before { content: @fa-var-venus-double; } +.@{fa-css-prefix}-mars-double:before { content: @fa-var-mars-double; } +.@{fa-css-prefix}-venus-mars:before { content: @fa-var-venus-mars; } +.@{fa-css-prefix}-mars-stroke:before { content: @fa-var-mars-stroke; } +.@{fa-css-prefix}-mars-stroke-v:before { content: @fa-var-mars-stroke-v; } +.@{fa-css-prefix}-mars-stroke-h:before { content: @fa-var-mars-stroke-h; } +.@{fa-css-prefix}-neuter:before { content: @fa-var-neuter; } +.@{fa-css-prefix}-genderless:before { content: @fa-var-genderless; } +.@{fa-css-prefix}-facebook-official:before { content: @fa-var-facebook-official; } +.@{fa-css-prefix}-pinterest-p:before { content: @fa-var-pinterest-p; } +.@{fa-css-prefix}-whatsapp:before { content: @fa-var-whatsapp; } +.@{fa-css-prefix}-server:before { content: @fa-var-server; } +.@{fa-css-prefix}-user-plus:before { content: @fa-var-user-plus; } +.@{fa-css-prefix}-user-times:before { content: @fa-var-user-times; } +.@{fa-css-prefix}-hotel:before, +.@{fa-css-prefix}-bed:before { content: @fa-var-bed; } +.@{fa-css-prefix}-viacoin:before { content: @fa-var-viacoin; } +.@{fa-css-prefix}-train:before { content: @fa-var-train; } +.@{fa-css-prefix}-subway:before { content: @fa-var-subway; } +.@{fa-css-prefix}-medium:before { content: @fa-var-medium; } +.@{fa-css-prefix}-yc:before, +.@{fa-css-prefix}-y-combinator:before { content: @fa-var-y-combinator; } +.@{fa-css-prefix}-optin-monster:before { content: @fa-var-optin-monster; } +.@{fa-css-prefix}-opencart:before { content: @fa-var-opencart; } +.@{fa-css-prefix}-expeditedssl:before { content: @fa-var-expeditedssl; } +.@{fa-css-prefix}-battery-4:before, +.@{fa-css-prefix}-battery-full:before { content: @fa-var-battery-full; } +.@{fa-css-prefix}-battery-3:before, +.@{fa-css-prefix}-battery-three-quarters:before { content: @fa-var-battery-three-quarters; } +.@{fa-css-prefix}-battery-2:before, +.@{fa-css-prefix}-battery-half:before { content: @fa-var-battery-half; } +.@{fa-css-prefix}-battery-1:before, +.@{fa-css-prefix}-battery-quarter:before { content: @fa-var-battery-quarter; } +.@{fa-css-prefix}-battery-0:before, +.@{fa-css-prefix}-battery-empty:before { content: @fa-var-battery-empty; } +.@{fa-css-prefix}-mouse-pointer:before { content: @fa-var-mouse-pointer; } +.@{fa-css-prefix}-i-cursor:before { content: @fa-var-i-cursor; } +.@{fa-css-prefix}-object-group:before { content: @fa-var-object-group; } +.@{fa-css-prefix}-object-ungroup:before { content: @fa-var-object-ungroup; } +.@{fa-css-prefix}-sticky-note:before { content: @fa-var-sticky-note; } +.@{fa-css-prefix}-sticky-note-o:before { content: @fa-var-sticky-note-o; } +.@{fa-css-prefix}-cc-jcb:before { content: @fa-var-cc-jcb; } +.@{fa-css-prefix}-cc-diners-club:before { content: @fa-var-cc-diners-club; } +.@{fa-css-prefix}-clone:before { content: @fa-var-clone; } +.@{fa-css-prefix}-balance-scale:before { content: @fa-var-balance-scale; } +.@{fa-css-prefix}-hourglass-o:before { content: @fa-var-hourglass-o; } +.@{fa-css-prefix}-hourglass-1:before, +.@{fa-css-prefix}-hourglass-start:before { content: @fa-var-hourglass-start; } +.@{fa-css-prefix}-hourglass-2:before, +.@{fa-css-prefix}-hourglass-half:before { content: @fa-var-hourglass-half; } +.@{fa-css-prefix}-hourglass-3:before, +.@{fa-css-prefix}-hourglass-end:before { content: @fa-var-hourglass-end; } +.@{fa-css-prefix}-hourglass:before { content: @fa-var-hourglass; } +.@{fa-css-prefix}-hand-grab-o:before, +.@{fa-css-prefix}-hand-rock-o:before { content: @fa-var-hand-rock-o; } +.@{fa-css-prefix}-hand-stop-o:before, +.@{fa-css-prefix}-hand-paper-o:before { content: @fa-var-hand-paper-o; } +.@{fa-css-prefix}-hand-scissors-o:before { content: @fa-var-hand-scissors-o; } +.@{fa-css-prefix}-hand-lizard-o:before { content: @fa-var-hand-lizard-o; } +.@{fa-css-prefix}-hand-spock-o:before { content: @fa-var-hand-spock-o; } +.@{fa-css-prefix}-hand-pointer-o:before { content: @fa-var-hand-pointer-o; } +.@{fa-css-prefix}-hand-peace-o:before { content: @fa-var-hand-peace-o; } +.@{fa-css-prefix}-trademark:before { content: @fa-var-trademark; } +.@{fa-css-prefix}-registered:before { content: @fa-var-registered; } +.@{fa-css-prefix}-creative-commons:before { content: @fa-var-creative-commons; } +.@{fa-css-prefix}-gg:before { content: @fa-var-gg; } +.@{fa-css-prefix}-gg-circle:before { content: @fa-var-gg-circle; } +.@{fa-css-prefix}-tripadvisor:before { content: @fa-var-tripadvisor; } +.@{fa-css-prefix}-odnoklassniki:before { content: @fa-var-odnoklassniki; } +.@{fa-css-prefix}-odnoklassniki-square:before { content: @fa-var-odnoklassniki-square; } +.@{fa-css-prefix}-get-pocket:before { content: @fa-var-get-pocket; } +.@{fa-css-prefix}-wikipedia-w:before { content: @fa-var-wikipedia-w; } +.@{fa-css-prefix}-safari:before { content: @fa-var-safari; } +.@{fa-css-prefix}-chrome:before { content: @fa-var-chrome; } +.@{fa-css-prefix}-firefox:before { content: @fa-var-firefox; } +.@{fa-css-prefix}-opera:before { content: @fa-var-opera; } +.@{fa-css-prefix}-internet-explorer:before { content: @fa-var-internet-explorer; } +.@{fa-css-prefix}-tv:before, +.@{fa-css-prefix}-television:before { content: @fa-var-television; } +.@{fa-css-prefix}-contao:before { content: @fa-var-contao; } +.@{fa-css-prefix}-500px:before { content: @fa-var-500px; } +.@{fa-css-prefix}-amazon:before { content: @fa-var-amazon; } +.@{fa-css-prefix}-calendar-plus-o:before { content: @fa-var-calendar-plus-o; } +.@{fa-css-prefix}-calendar-minus-o:before { content: @fa-var-calendar-minus-o; } +.@{fa-css-prefix}-calendar-times-o:before { content: @fa-var-calendar-times-o; } +.@{fa-css-prefix}-calendar-check-o:before { content: @fa-var-calendar-check-o; } +.@{fa-css-prefix}-industry:before { content: @fa-var-industry; } +.@{fa-css-prefix}-map-pin:before { content: @fa-var-map-pin; } +.@{fa-css-prefix}-map-signs:before { content: @fa-var-map-signs; } +.@{fa-css-prefix}-map-o:before { content: @fa-var-map-o; } +.@{fa-css-prefix}-map:before { content: @fa-var-map; } +.@{fa-css-prefix}-commenting:before { content: @fa-var-commenting; } +.@{fa-css-prefix}-commenting-o:before { content: @fa-var-commenting-o; } +.@{fa-css-prefix}-houzz:before { content: @fa-var-houzz; } +.@{fa-css-prefix}-vimeo:before { content: @fa-var-vimeo; } +.@{fa-css-prefix}-black-tie:before { content: @fa-var-black-tie; } +.@{fa-css-prefix}-fonticons:before { content: @fa-var-fonticons; } +.@{fa-css-prefix}-reddit-alien:before { content: @fa-var-reddit-alien; } +.@{fa-css-prefix}-edge:before { content: @fa-var-edge; } +.@{fa-css-prefix}-credit-card-alt:before { content: @fa-var-credit-card-alt; } +.@{fa-css-prefix}-codiepie:before { content: @fa-var-codiepie; } +.@{fa-css-prefix}-modx:before { content: @fa-var-modx; } +.@{fa-css-prefix}-fort-awesome:before { content: @fa-var-fort-awesome; } +.@{fa-css-prefix}-usb:before { content: @fa-var-usb; } +.@{fa-css-prefix}-product-hunt:before { content: @fa-var-product-hunt; } +.@{fa-css-prefix}-mixcloud:before { content: @fa-var-mixcloud; } +.@{fa-css-prefix}-scribd:before { content: @fa-var-scribd; } +.@{fa-css-prefix}-pause-circle:before { content: @fa-var-pause-circle; } +.@{fa-css-prefix}-pause-circle-o:before { content: @fa-var-pause-circle-o; } +.@{fa-css-prefix}-stop-circle:before { content: @fa-var-stop-circle; } +.@{fa-css-prefix}-stop-circle-o:before { content: @fa-var-stop-circle-o; } +.@{fa-css-prefix}-shopping-bag:before { content: @fa-var-shopping-bag; } +.@{fa-css-prefix}-shopping-basket:before { content: @fa-var-shopping-basket; } +.@{fa-css-prefix}-hashtag:before { content: @fa-var-hashtag; } +.@{fa-css-prefix}-bluetooth:before { content: @fa-var-bluetooth; } +.@{fa-css-prefix}-bluetooth-b:before { content: @fa-var-bluetooth-b; } +.@{fa-css-prefix}-percent:before { content: @fa-var-percent; } +.@{fa-css-prefix}-gitlab:before { content: @fa-var-gitlab; } +.@{fa-css-prefix}-wpbeginner:before { content: @fa-var-wpbeginner; } +.@{fa-css-prefix}-wpforms:before { content: @fa-var-wpforms; } +.@{fa-css-prefix}-envira:before { content: @fa-var-envira; } +.@{fa-css-prefix}-universal-access:before { content: @fa-var-universal-access; } +.@{fa-css-prefix}-wheelchair-alt:before { content: @fa-var-wheelchair-alt; } +.@{fa-css-prefix}-question-circle-o:before { content: @fa-var-question-circle-o; } +.@{fa-css-prefix}-blind:before { content: @fa-var-blind; } +.@{fa-css-prefix}-audio-description:before { content: @fa-var-audio-description; } +.@{fa-css-prefix}-volume-control-phone:before { content: @fa-var-volume-control-phone; } +.@{fa-css-prefix}-braille:before { content: @fa-var-braille; } +.@{fa-css-prefix}-assistive-listening-systems:before { content: @fa-var-assistive-listening-systems; } +.@{fa-css-prefix}-asl-interpreting:before, +.@{fa-css-prefix}-american-sign-language-interpreting:before { content: @fa-var-american-sign-language-interpreting; } +.@{fa-css-prefix}-deafness:before, +.@{fa-css-prefix}-hard-of-hearing:before, +.@{fa-css-prefix}-deaf:before { content: @fa-var-deaf; } +.@{fa-css-prefix}-glide:before { content: @fa-var-glide; } +.@{fa-css-prefix}-glide-g:before { content: @fa-var-glide-g; } +.@{fa-css-prefix}-signing:before, +.@{fa-css-prefix}-sign-language:before { content: @fa-var-sign-language; } +.@{fa-css-prefix}-low-vision:before { content: @fa-var-low-vision; } +.@{fa-css-prefix}-viadeo:before { content: @fa-var-viadeo; } +.@{fa-css-prefix}-viadeo-square:before { content: @fa-var-viadeo-square; } +.@{fa-css-prefix}-snapchat:before { content: @fa-var-snapchat; } +.@{fa-css-prefix}-snapchat-ghost:before { content: @fa-var-snapchat-ghost; } +.@{fa-css-prefix}-snapchat-square:before { content: @fa-var-snapchat-square; } +.@{fa-css-prefix}-pied-piper:before { content: @fa-var-pied-piper; } +.@{fa-css-prefix}-first-order:before { content: @fa-var-first-order; } +.@{fa-css-prefix}-yoast:before { content: @fa-var-yoast; } +.@{fa-css-prefix}-themeisle:before { content: @fa-var-themeisle; } +.@{fa-css-prefix}-google-plus-circle:before, +.@{fa-css-prefix}-google-plus-official:before { content: @fa-var-google-plus-official; } +.@{fa-css-prefix}-fa:before, +.@{fa-css-prefix}-font-awesome:before { content: @fa-var-font-awesome; } diff --git a/vraptor/src/main/webapp/vendor/font-awesome/less/larger.less b/vraptor/src/main/webapp/vendor/font-awesome/less/larger.less new file mode 100644 index 0000000000..c9d646770e --- /dev/null +++ b/vraptor/src/main/webapp/vendor/font-awesome/less/larger.less @@ -0,0 +1,13 @@ +// Icon Sizes +// ------------------------- + +/* makes the font 33% larger relative to the icon container */ +.@{fa-css-prefix}-lg { + font-size: (4em / 3); + line-height: (3em / 4); + vertical-align: -15%; +} +.@{fa-css-prefix}-2x { font-size: 2em; } +.@{fa-css-prefix}-3x { font-size: 3em; } +.@{fa-css-prefix}-4x { font-size: 4em; } +.@{fa-css-prefix}-5x { font-size: 5em; } diff --git a/vraptor/src/main/webapp/vendor/font-awesome/less/list.less b/vraptor/src/main/webapp/vendor/font-awesome/less/list.less new file mode 100644 index 0000000000..0b440382f6 --- /dev/null +++ b/vraptor/src/main/webapp/vendor/font-awesome/less/list.less @@ -0,0 +1,19 @@ +// List Icons +// ------------------------- + +.@{fa-css-prefix}-ul { + padding-left: 0; + margin-left: @fa-li-width; + list-style-type: none; + > li { position: relative; } +} +.@{fa-css-prefix}-li { + position: absolute; + left: -@fa-li-width; + width: @fa-li-width; + top: (2em / 14); + text-align: center; + &.@{fa-css-prefix}-lg { + left: (-@fa-li-width + (4em / 14)); + } +} diff --git a/vraptor/src/main/webapp/vendor/font-awesome/less/mixins.less b/vraptor/src/main/webapp/vendor/font-awesome/less/mixins.less new file mode 100644 index 0000000000..beef231d0e --- /dev/null +++ b/vraptor/src/main/webapp/vendor/font-awesome/less/mixins.less @@ -0,0 +1,60 @@ +// Mixins +// -------------------------- + +.fa-icon() { + display: inline-block; + font: normal normal normal @fa-font-size-base/@fa-line-height-base FontAwesome; // shortening font declaration + font-size: inherit; // can't have font-size inherit on line above, so need to override + text-rendering: auto; // optimizelegibility throws things off #1094 + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + +} + +.fa-icon-rotate(@degrees, @rotation) { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=@{rotation})"; + -webkit-transform: rotate(@degrees); + -ms-transform: rotate(@degrees); + transform: rotate(@degrees); +} + +.fa-icon-flip(@horiz, @vert, @rotation) { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=@{rotation}, mirror=1)"; + -webkit-transform: scale(@horiz, @vert); + -ms-transform: scale(@horiz, @vert); + transform: scale(@horiz, @vert); +} + + +// Only display content to screen readers. A la Bootstrap 4. +// +// See: http://a11yproject.com/posts/how-to-hide-content/ + +.sr-only() { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + margin: -1px; + overflow: hidden; + clip: rect(0,0,0,0); + border: 0; +} + +// Use in conjunction with .sr-only to only display content when it's focused. +// +// Useful for "Skip to main content" links; see http://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1 +// +// Credit: HTML5 Boilerplate + +.sr-only-focusable() { + &:active, + &:focus { + position: static; + width: auto; + height: auto; + margin: 0; + overflow: visible; + clip: auto; + } +} diff --git a/vraptor/src/main/webapp/vendor/font-awesome/less/path.less b/vraptor/src/main/webapp/vendor/font-awesome/less/path.less new file mode 100644 index 0000000000..835be41f81 --- /dev/null +++ b/vraptor/src/main/webapp/vendor/font-awesome/less/path.less @@ -0,0 +1,15 @@ +/* FONT PATH + * -------------------------- */ + +@font-face { + font-family: 'FontAwesome'; + src: url('@{fa-font-path}/fontawesome-webfont.eot?v=@{fa-version}'); + src: url('@{fa-font-path}/fontawesome-webfont.eot?#iefix&v=@{fa-version}') format('embedded-opentype'), + url('@{fa-font-path}/fontawesome-webfont.woff2?v=@{fa-version}') format('woff2'), + url('@{fa-font-path}/fontawesome-webfont.woff?v=@{fa-version}') format('woff'), + url('@{fa-font-path}/fontawesome-webfont.ttf?v=@{fa-version}') format('truetype'), + url('@{fa-font-path}/fontawesome-webfont.svg?v=@{fa-version}#fontawesomeregular') format('svg'); + // src: url('@{fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts + font-weight: normal; + font-style: normal; +} diff --git a/vraptor/src/main/webapp/vendor/font-awesome/less/rotated-flipped.less b/vraptor/src/main/webapp/vendor/font-awesome/less/rotated-flipped.less new file mode 100644 index 0000000000..f6ba81475b --- /dev/null +++ b/vraptor/src/main/webapp/vendor/font-awesome/less/rotated-flipped.less @@ -0,0 +1,20 @@ +// Rotated & Flipped Icons +// ------------------------- + +.@{fa-css-prefix}-rotate-90 { .fa-icon-rotate(90deg, 1); } +.@{fa-css-prefix}-rotate-180 { .fa-icon-rotate(180deg, 2); } +.@{fa-css-prefix}-rotate-270 { .fa-icon-rotate(270deg, 3); } + +.@{fa-css-prefix}-flip-horizontal { .fa-icon-flip(-1, 1, 0); } +.@{fa-css-prefix}-flip-vertical { .fa-icon-flip(1, -1, 2); } + +// Hook for IE8-9 +// ------------------------- + +:root .@{fa-css-prefix}-rotate-90, +:root .@{fa-css-prefix}-rotate-180, +:root .@{fa-css-prefix}-rotate-270, +:root .@{fa-css-prefix}-flip-horizontal, +:root .@{fa-css-prefix}-flip-vertical { + filter: none; +} diff --git a/vraptor/src/main/webapp/vendor/font-awesome/less/screen-reader.less b/vraptor/src/main/webapp/vendor/font-awesome/less/screen-reader.less new file mode 100644 index 0000000000..11c188196d --- /dev/null +++ b/vraptor/src/main/webapp/vendor/font-awesome/less/screen-reader.less @@ -0,0 +1,5 @@ +// Screen Readers +// ------------------------- + +.sr-only { .sr-only(); } +.sr-only-focusable { .sr-only-focusable(); } diff --git a/vraptor/src/main/webapp/vendor/font-awesome/less/stacked.less b/vraptor/src/main/webapp/vendor/font-awesome/less/stacked.less new file mode 100644 index 0000000000..fc53fb0e7a --- /dev/null +++ b/vraptor/src/main/webapp/vendor/font-awesome/less/stacked.less @@ -0,0 +1,20 @@ +// Stacked Icons +// ------------------------- + +.@{fa-css-prefix}-stack { + position: relative; + display: inline-block; + width: 2em; + height: 2em; + line-height: 2em; + vertical-align: middle; +} +.@{fa-css-prefix}-stack-1x, .@{fa-css-prefix}-stack-2x { + position: absolute; + left: 0; + width: 100%; + text-align: center; +} +.@{fa-css-prefix}-stack-1x { line-height: inherit; } +.@{fa-css-prefix}-stack-2x { font-size: 2em; } +.@{fa-css-prefix}-inverse { color: @fa-inverse; } diff --git a/vraptor/src/main/webapp/vendor/font-awesome/less/variables.less b/vraptor/src/main/webapp/vendor/font-awesome/less/variables.less new file mode 100644 index 0000000000..2b3381975e --- /dev/null +++ b/vraptor/src/main/webapp/vendor/font-awesome/less/variables.less @@ -0,0 +1,744 @@ +// Variables +// -------------------------- + +@fa-font-path: "../fonts"; +@fa-font-size-base: 14px; +@fa-line-height-base: 1; +//@fa-font-path: "//netdna.bootstrapcdn.com/font-awesome/4.6.3/fonts"; // for referencing Bootstrap CDN font files directly +@fa-css-prefix: fa; +@fa-version: "4.6.3"; +@fa-border-color: #eee; +@fa-inverse: #fff; +@fa-li-width: (30em / 14); + +@fa-var-500px: "\f26e"; +@fa-var-adjust: "\f042"; +@fa-var-adn: "\f170"; +@fa-var-align-center: "\f037"; +@fa-var-align-justify: "\f039"; +@fa-var-align-left: "\f036"; +@fa-var-align-right: "\f038"; +@fa-var-amazon: "\f270"; +@fa-var-ambulance: "\f0f9"; +@fa-var-american-sign-language-interpreting: "\f2a3"; +@fa-var-anchor: "\f13d"; +@fa-var-android: "\f17b"; +@fa-var-angellist: "\f209"; +@fa-var-angle-double-down: "\f103"; +@fa-var-angle-double-left: "\f100"; +@fa-var-angle-double-right: "\f101"; +@fa-var-angle-double-up: "\f102"; +@fa-var-angle-down: "\f107"; +@fa-var-angle-left: "\f104"; +@fa-var-angle-right: "\f105"; +@fa-var-angle-up: "\f106"; +@fa-var-apple: "\f179"; +@fa-var-archive: "\f187"; +@fa-var-area-chart: "\f1fe"; +@fa-var-arrow-circle-down: "\f0ab"; +@fa-var-arrow-circle-left: "\f0a8"; +@fa-var-arrow-circle-o-down: "\f01a"; +@fa-var-arrow-circle-o-left: "\f190"; +@fa-var-arrow-circle-o-right: "\f18e"; +@fa-var-arrow-circle-o-up: "\f01b"; +@fa-var-arrow-circle-right: "\f0a9"; +@fa-var-arrow-circle-up: "\f0aa"; +@fa-var-arrow-down: "\f063"; +@fa-var-arrow-left: "\f060"; +@fa-var-arrow-right: "\f061"; +@fa-var-arrow-up: "\f062"; +@fa-var-arrows: "\f047"; +@fa-var-arrows-alt: "\f0b2"; +@fa-var-arrows-h: "\f07e"; +@fa-var-arrows-v: "\f07d"; +@fa-var-asl-interpreting: "\f2a3"; +@fa-var-assistive-listening-systems: "\f2a2"; +@fa-var-asterisk: "\f069"; +@fa-var-at: "\f1fa"; +@fa-var-audio-description: "\f29e"; +@fa-var-automobile: "\f1b9"; +@fa-var-backward: "\f04a"; +@fa-var-balance-scale: "\f24e"; +@fa-var-ban: "\f05e"; +@fa-var-bank: "\f19c"; +@fa-var-bar-chart: "\f080"; +@fa-var-bar-chart-o: "\f080"; +@fa-var-barcode: "\f02a"; +@fa-var-bars: "\f0c9"; +@fa-var-battery-0: "\f244"; +@fa-var-battery-1: "\f243"; +@fa-var-battery-2: "\f242"; +@fa-var-battery-3: "\f241"; +@fa-var-battery-4: "\f240"; +@fa-var-battery-empty: "\f244"; +@fa-var-battery-full: "\f240"; +@fa-var-battery-half: "\f242"; +@fa-var-battery-quarter: "\f243"; +@fa-var-battery-three-quarters: "\f241"; +@fa-var-bed: "\f236"; +@fa-var-beer: "\f0fc"; +@fa-var-behance: "\f1b4"; +@fa-var-behance-square: "\f1b5"; +@fa-var-bell: "\f0f3"; +@fa-var-bell-o: "\f0a2"; +@fa-var-bell-slash: "\f1f6"; +@fa-var-bell-slash-o: "\f1f7"; +@fa-var-bicycle: "\f206"; +@fa-var-binoculars: "\f1e5"; +@fa-var-birthday-cake: "\f1fd"; +@fa-var-bitbucket: "\f171"; +@fa-var-bitbucket-square: "\f172"; +@fa-var-bitcoin: "\f15a"; +@fa-var-black-tie: "\f27e"; +@fa-var-blind: "\f29d"; +@fa-var-bluetooth: "\f293"; +@fa-var-bluetooth-b: "\f294"; +@fa-var-bold: "\f032"; +@fa-var-bolt: "\f0e7"; +@fa-var-bomb: "\f1e2"; +@fa-var-book: "\f02d"; +@fa-var-bookmark: "\f02e"; +@fa-var-bookmark-o: "\f097"; +@fa-var-braille: "\f2a1"; +@fa-var-briefcase: "\f0b1"; +@fa-var-btc: "\f15a"; +@fa-var-bug: "\f188"; +@fa-var-building: "\f1ad"; +@fa-var-building-o: "\f0f7"; +@fa-var-bullhorn: "\f0a1"; +@fa-var-bullseye: "\f140"; +@fa-var-bus: "\f207"; +@fa-var-buysellads: "\f20d"; +@fa-var-cab: "\f1ba"; +@fa-var-calculator: "\f1ec"; +@fa-var-calendar: "\f073"; +@fa-var-calendar-check-o: "\f274"; +@fa-var-calendar-minus-o: "\f272"; +@fa-var-calendar-o: "\f133"; +@fa-var-calendar-plus-o: "\f271"; +@fa-var-calendar-times-o: "\f273"; +@fa-var-camera: "\f030"; +@fa-var-camera-retro: "\f083"; +@fa-var-car: "\f1b9"; +@fa-var-caret-down: "\f0d7"; +@fa-var-caret-left: "\f0d9"; +@fa-var-caret-right: "\f0da"; +@fa-var-caret-square-o-down: "\f150"; +@fa-var-caret-square-o-left: "\f191"; +@fa-var-caret-square-o-right: "\f152"; +@fa-var-caret-square-o-up: "\f151"; +@fa-var-caret-up: "\f0d8"; +@fa-var-cart-arrow-down: "\f218"; +@fa-var-cart-plus: "\f217"; +@fa-var-cc: "\f20a"; +@fa-var-cc-amex: "\f1f3"; +@fa-var-cc-diners-club: "\f24c"; +@fa-var-cc-discover: "\f1f2"; +@fa-var-cc-jcb: "\f24b"; +@fa-var-cc-mastercard: "\f1f1"; +@fa-var-cc-paypal: "\f1f4"; +@fa-var-cc-stripe: "\f1f5"; +@fa-var-cc-visa: "\f1f0"; +@fa-var-certificate: "\f0a3"; +@fa-var-chain: "\f0c1"; +@fa-var-chain-broken: "\f127"; +@fa-var-check: "\f00c"; +@fa-var-check-circle: "\f058"; +@fa-var-check-circle-o: "\f05d"; +@fa-var-check-square: "\f14a"; +@fa-var-check-square-o: "\f046"; +@fa-var-chevron-circle-down: "\f13a"; +@fa-var-chevron-circle-left: "\f137"; +@fa-var-chevron-circle-right: "\f138"; +@fa-var-chevron-circle-up: "\f139"; +@fa-var-chevron-down: "\f078"; +@fa-var-chevron-left: "\f053"; +@fa-var-chevron-right: "\f054"; +@fa-var-chevron-up: "\f077"; +@fa-var-child: "\f1ae"; +@fa-var-chrome: "\f268"; +@fa-var-circle: "\f111"; +@fa-var-circle-o: "\f10c"; +@fa-var-circle-o-notch: "\f1ce"; +@fa-var-circle-thin: "\f1db"; +@fa-var-clipboard: "\f0ea"; +@fa-var-clock-o: "\f017"; +@fa-var-clone: "\f24d"; +@fa-var-close: "\f00d"; +@fa-var-cloud: "\f0c2"; +@fa-var-cloud-download: "\f0ed"; +@fa-var-cloud-upload: "\f0ee"; +@fa-var-cny: "\f157"; +@fa-var-code: "\f121"; +@fa-var-code-fork: "\f126"; +@fa-var-codepen: "\f1cb"; +@fa-var-codiepie: "\f284"; +@fa-var-coffee: "\f0f4"; +@fa-var-cog: "\f013"; +@fa-var-cogs: "\f085"; +@fa-var-columns: "\f0db"; +@fa-var-comment: "\f075"; +@fa-var-comment-o: "\f0e5"; +@fa-var-commenting: "\f27a"; +@fa-var-commenting-o: "\f27b"; +@fa-var-comments: "\f086"; +@fa-var-comments-o: "\f0e6"; +@fa-var-compass: "\f14e"; +@fa-var-compress: "\f066"; +@fa-var-connectdevelop: "\f20e"; +@fa-var-contao: "\f26d"; +@fa-var-copy: "\f0c5"; +@fa-var-copyright: "\f1f9"; +@fa-var-creative-commons: "\f25e"; +@fa-var-credit-card: "\f09d"; +@fa-var-credit-card-alt: "\f283"; +@fa-var-crop: "\f125"; +@fa-var-crosshairs: "\f05b"; +@fa-var-css3: "\f13c"; +@fa-var-cube: "\f1b2"; +@fa-var-cubes: "\f1b3"; +@fa-var-cut: "\f0c4"; +@fa-var-cutlery: "\f0f5"; +@fa-var-dashboard: "\f0e4"; +@fa-var-dashcube: "\f210"; +@fa-var-database: "\f1c0"; +@fa-var-deaf: "\f2a4"; +@fa-var-deafness: "\f2a4"; +@fa-var-dedent: "\f03b"; +@fa-var-delicious: "\f1a5"; +@fa-var-desktop: "\f108"; +@fa-var-deviantart: "\f1bd"; +@fa-var-diamond: "\f219"; +@fa-var-digg: "\f1a6"; +@fa-var-dollar: "\f155"; +@fa-var-dot-circle-o: "\f192"; +@fa-var-download: "\f019"; +@fa-var-dribbble: "\f17d"; +@fa-var-dropbox: "\f16b"; +@fa-var-drupal: "\f1a9"; +@fa-var-edge: "\f282"; +@fa-var-edit: "\f044"; +@fa-var-eject: "\f052"; +@fa-var-ellipsis-h: "\f141"; +@fa-var-ellipsis-v: "\f142"; +@fa-var-empire: "\f1d1"; +@fa-var-envelope: "\f0e0"; +@fa-var-envelope-o: "\f003"; +@fa-var-envelope-square: "\f199"; +@fa-var-envira: "\f299"; +@fa-var-eraser: "\f12d"; +@fa-var-eur: "\f153"; +@fa-var-euro: "\f153"; +@fa-var-exchange: "\f0ec"; +@fa-var-exclamation: "\f12a"; +@fa-var-exclamation-circle: "\f06a"; +@fa-var-exclamation-triangle: "\f071"; +@fa-var-expand: "\f065"; +@fa-var-expeditedssl: "\f23e"; +@fa-var-external-link: "\f08e"; +@fa-var-external-link-square: "\f14c"; +@fa-var-eye: "\f06e"; +@fa-var-eye-slash: "\f070"; +@fa-var-eyedropper: "\f1fb"; +@fa-var-fa: "\f2b4"; +@fa-var-facebook: "\f09a"; +@fa-var-facebook-f: "\f09a"; +@fa-var-facebook-official: "\f230"; +@fa-var-facebook-square: "\f082"; +@fa-var-fast-backward: "\f049"; +@fa-var-fast-forward: "\f050"; +@fa-var-fax: "\f1ac"; +@fa-var-feed: "\f09e"; +@fa-var-female: "\f182"; +@fa-var-fighter-jet: "\f0fb"; +@fa-var-file: "\f15b"; +@fa-var-file-archive-o: "\f1c6"; +@fa-var-file-audio-o: "\f1c7"; +@fa-var-file-code-o: "\f1c9"; +@fa-var-file-excel-o: "\f1c3"; +@fa-var-file-image-o: "\f1c5"; +@fa-var-file-movie-o: "\f1c8"; +@fa-var-file-o: "\f016"; +@fa-var-file-pdf-o: "\f1c1"; +@fa-var-file-photo-o: "\f1c5"; +@fa-var-file-picture-o: "\f1c5"; +@fa-var-file-powerpoint-o: "\f1c4"; +@fa-var-file-sound-o: "\f1c7"; +@fa-var-file-text: "\f15c"; +@fa-var-file-text-o: "\f0f6"; +@fa-var-file-video-o: "\f1c8"; +@fa-var-file-word-o: "\f1c2"; +@fa-var-file-zip-o: "\f1c6"; +@fa-var-files-o: "\f0c5"; +@fa-var-film: "\f008"; +@fa-var-filter: "\f0b0"; +@fa-var-fire: "\f06d"; +@fa-var-fire-extinguisher: "\f134"; +@fa-var-firefox: "\f269"; +@fa-var-first-order: "\f2b0"; +@fa-var-flag: "\f024"; +@fa-var-flag-checkered: "\f11e"; +@fa-var-flag-o: "\f11d"; +@fa-var-flash: "\f0e7"; +@fa-var-flask: "\f0c3"; +@fa-var-flickr: "\f16e"; +@fa-var-floppy-o: "\f0c7"; +@fa-var-folder: "\f07b"; +@fa-var-folder-o: "\f114"; +@fa-var-folder-open: "\f07c"; +@fa-var-folder-open-o: "\f115"; +@fa-var-font: "\f031"; +@fa-var-font-awesome: "\f2b4"; +@fa-var-fonticons: "\f280"; +@fa-var-fort-awesome: "\f286"; +@fa-var-forumbee: "\f211"; +@fa-var-forward: "\f04e"; +@fa-var-foursquare: "\f180"; +@fa-var-frown-o: "\f119"; +@fa-var-futbol-o: "\f1e3"; +@fa-var-gamepad: "\f11b"; +@fa-var-gavel: "\f0e3"; +@fa-var-gbp: "\f154"; +@fa-var-ge: "\f1d1"; +@fa-var-gear: "\f013"; +@fa-var-gears: "\f085"; +@fa-var-genderless: "\f22d"; +@fa-var-get-pocket: "\f265"; +@fa-var-gg: "\f260"; +@fa-var-gg-circle: "\f261"; +@fa-var-gift: "\f06b"; +@fa-var-git: "\f1d3"; +@fa-var-git-square: "\f1d2"; +@fa-var-github: "\f09b"; +@fa-var-github-alt: "\f113"; +@fa-var-github-square: "\f092"; +@fa-var-gitlab: "\f296"; +@fa-var-gittip: "\f184"; +@fa-var-glass: "\f000"; +@fa-var-glide: "\f2a5"; +@fa-var-glide-g: "\f2a6"; +@fa-var-globe: "\f0ac"; +@fa-var-google: "\f1a0"; +@fa-var-google-plus: "\f0d5"; +@fa-var-google-plus-circle: "\f2b3"; +@fa-var-google-plus-official: "\f2b3"; +@fa-var-google-plus-square: "\f0d4"; +@fa-var-google-wallet: "\f1ee"; +@fa-var-graduation-cap: "\f19d"; +@fa-var-gratipay: "\f184"; +@fa-var-group: "\f0c0"; +@fa-var-h-square: "\f0fd"; +@fa-var-hacker-news: "\f1d4"; +@fa-var-hand-grab-o: "\f255"; +@fa-var-hand-lizard-o: "\f258"; +@fa-var-hand-o-down: "\f0a7"; +@fa-var-hand-o-left: "\f0a5"; +@fa-var-hand-o-right: "\f0a4"; +@fa-var-hand-o-up: "\f0a6"; +@fa-var-hand-paper-o: "\f256"; +@fa-var-hand-peace-o: "\f25b"; +@fa-var-hand-pointer-o: "\f25a"; +@fa-var-hand-rock-o: "\f255"; +@fa-var-hand-scissors-o: "\f257"; +@fa-var-hand-spock-o: "\f259"; +@fa-var-hand-stop-o: "\f256"; +@fa-var-hard-of-hearing: "\f2a4"; +@fa-var-hashtag: "\f292"; +@fa-var-hdd-o: "\f0a0"; +@fa-var-header: "\f1dc"; +@fa-var-headphones: "\f025"; +@fa-var-heart: "\f004"; +@fa-var-heart-o: "\f08a"; +@fa-var-heartbeat: "\f21e"; +@fa-var-history: "\f1da"; +@fa-var-home: "\f015"; +@fa-var-hospital-o: "\f0f8"; +@fa-var-hotel: "\f236"; +@fa-var-hourglass: "\f254"; +@fa-var-hourglass-1: "\f251"; +@fa-var-hourglass-2: "\f252"; +@fa-var-hourglass-3: "\f253"; +@fa-var-hourglass-end: "\f253"; +@fa-var-hourglass-half: "\f252"; +@fa-var-hourglass-o: "\f250"; +@fa-var-hourglass-start: "\f251"; +@fa-var-houzz: "\f27c"; +@fa-var-html5: "\f13b"; +@fa-var-i-cursor: "\f246"; +@fa-var-ils: "\f20b"; +@fa-var-image: "\f03e"; +@fa-var-inbox: "\f01c"; +@fa-var-indent: "\f03c"; +@fa-var-industry: "\f275"; +@fa-var-info: "\f129"; +@fa-var-info-circle: "\f05a"; +@fa-var-inr: "\f156"; +@fa-var-instagram: "\f16d"; +@fa-var-institution: "\f19c"; +@fa-var-internet-explorer: "\f26b"; +@fa-var-intersex: "\f224"; +@fa-var-ioxhost: "\f208"; +@fa-var-italic: "\f033"; +@fa-var-joomla: "\f1aa"; +@fa-var-jpy: "\f157"; +@fa-var-jsfiddle: "\f1cc"; +@fa-var-key: "\f084"; +@fa-var-keyboard-o: "\f11c"; +@fa-var-krw: "\f159"; +@fa-var-language: "\f1ab"; +@fa-var-laptop: "\f109"; +@fa-var-lastfm: "\f202"; +@fa-var-lastfm-square: "\f203"; +@fa-var-leaf: "\f06c"; +@fa-var-leanpub: "\f212"; +@fa-var-legal: "\f0e3"; +@fa-var-lemon-o: "\f094"; +@fa-var-level-down: "\f149"; +@fa-var-level-up: "\f148"; +@fa-var-life-bouy: "\f1cd"; +@fa-var-life-buoy: "\f1cd"; +@fa-var-life-ring: "\f1cd"; +@fa-var-life-saver: "\f1cd"; +@fa-var-lightbulb-o: "\f0eb"; +@fa-var-line-chart: "\f201"; +@fa-var-link: "\f0c1"; +@fa-var-linkedin: "\f0e1"; +@fa-var-linkedin-square: "\f08c"; +@fa-var-linux: "\f17c"; +@fa-var-list: "\f03a"; +@fa-var-list-alt: "\f022"; +@fa-var-list-ol: "\f0cb"; +@fa-var-list-ul: "\f0ca"; +@fa-var-location-arrow: "\f124"; +@fa-var-lock: "\f023"; +@fa-var-long-arrow-down: "\f175"; +@fa-var-long-arrow-left: "\f177"; +@fa-var-long-arrow-right: "\f178"; +@fa-var-long-arrow-up: "\f176"; +@fa-var-low-vision: "\f2a8"; +@fa-var-magic: "\f0d0"; +@fa-var-magnet: "\f076"; +@fa-var-mail-forward: "\f064"; +@fa-var-mail-reply: "\f112"; +@fa-var-mail-reply-all: "\f122"; +@fa-var-male: "\f183"; +@fa-var-map: "\f279"; +@fa-var-map-marker: "\f041"; +@fa-var-map-o: "\f278"; +@fa-var-map-pin: "\f276"; +@fa-var-map-signs: "\f277"; +@fa-var-mars: "\f222"; +@fa-var-mars-double: "\f227"; +@fa-var-mars-stroke: "\f229"; +@fa-var-mars-stroke-h: "\f22b"; +@fa-var-mars-stroke-v: "\f22a"; +@fa-var-maxcdn: "\f136"; +@fa-var-meanpath: "\f20c"; +@fa-var-medium: "\f23a"; +@fa-var-medkit: "\f0fa"; +@fa-var-meh-o: "\f11a"; +@fa-var-mercury: "\f223"; +@fa-var-microphone: "\f130"; +@fa-var-microphone-slash: "\f131"; +@fa-var-minus: "\f068"; +@fa-var-minus-circle: "\f056"; +@fa-var-minus-square: "\f146"; +@fa-var-minus-square-o: "\f147"; +@fa-var-mixcloud: "\f289"; +@fa-var-mobile: "\f10b"; +@fa-var-mobile-phone: "\f10b"; +@fa-var-modx: "\f285"; +@fa-var-money: "\f0d6"; +@fa-var-moon-o: "\f186"; +@fa-var-mortar-board: "\f19d"; +@fa-var-motorcycle: "\f21c"; +@fa-var-mouse-pointer: "\f245"; +@fa-var-music: "\f001"; +@fa-var-navicon: "\f0c9"; +@fa-var-neuter: "\f22c"; +@fa-var-newspaper-o: "\f1ea"; +@fa-var-object-group: "\f247"; +@fa-var-object-ungroup: "\f248"; +@fa-var-odnoklassniki: "\f263"; +@fa-var-odnoklassniki-square: "\f264"; +@fa-var-opencart: "\f23d"; +@fa-var-openid: "\f19b"; +@fa-var-opera: "\f26a"; +@fa-var-optin-monster: "\f23c"; +@fa-var-outdent: "\f03b"; +@fa-var-pagelines: "\f18c"; +@fa-var-paint-brush: "\f1fc"; +@fa-var-paper-plane: "\f1d8"; +@fa-var-paper-plane-o: "\f1d9"; +@fa-var-paperclip: "\f0c6"; +@fa-var-paragraph: "\f1dd"; +@fa-var-paste: "\f0ea"; +@fa-var-pause: "\f04c"; +@fa-var-pause-circle: "\f28b"; +@fa-var-pause-circle-o: "\f28c"; +@fa-var-paw: "\f1b0"; +@fa-var-paypal: "\f1ed"; +@fa-var-pencil: "\f040"; +@fa-var-pencil-square: "\f14b"; +@fa-var-pencil-square-o: "\f044"; +@fa-var-percent: "\f295"; +@fa-var-phone: "\f095"; +@fa-var-phone-square: "\f098"; +@fa-var-photo: "\f03e"; +@fa-var-picture-o: "\f03e"; +@fa-var-pie-chart: "\f200"; +@fa-var-pied-piper: "\f2ae"; +@fa-var-pied-piper-alt: "\f1a8"; +@fa-var-pied-piper-pp: "\f1a7"; +@fa-var-pinterest: "\f0d2"; +@fa-var-pinterest-p: "\f231"; +@fa-var-pinterest-square: "\f0d3"; +@fa-var-plane: "\f072"; +@fa-var-play: "\f04b"; +@fa-var-play-circle: "\f144"; +@fa-var-play-circle-o: "\f01d"; +@fa-var-plug: "\f1e6"; +@fa-var-plus: "\f067"; +@fa-var-plus-circle: "\f055"; +@fa-var-plus-square: "\f0fe"; +@fa-var-plus-square-o: "\f196"; +@fa-var-power-off: "\f011"; +@fa-var-print: "\f02f"; +@fa-var-product-hunt: "\f288"; +@fa-var-puzzle-piece: "\f12e"; +@fa-var-qq: "\f1d6"; +@fa-var-qrcode: "\f029"; +@fa-var-question: "\f128"; +@fa-var-question-circle: "\f059"; +@fa-var-question-circle-o: "\f29c"; +@fa-var-quote-left: "\f10d"; +@fa-var-quote-right: "\f10e"; +@fa-var-ra: "\f1d0"; +@fa-var-random: "\f074"; +@fa-var-rebel: "\f1d0"; +@fa-var-recycle: "\f1b8"; +@fa-var-reddit: "\f1a1"; +@fa-var-reddit-alien: "\f281"; +@fa-var-reddit-square: "\f1a2"; +@fa-var-refresh: "\f021"; +@fa-var-registered: "\f25d"; +@fa-var-remove: "\f00d"; +@fa-var-renren: "\f18b"; +@fa-var-reorder: "\f0c9"; +@fa-var-repeat: "\f01e"; +@fa-var-reply: "\f112"; +@fa-var-reply-all: "\f122"; +@fa-var-resistance: "\f1d0"; +@fa-var-retweet: "\f079"; +@fa-var-rmb: "\f157"; +@fa-var-road: "\f018"; +@fa-var-rocket: "\f135"; +@fa-var-rotate-left: "\f0e2"; +@fa-var-rotate-right: "\f01e"; +@fa-var-rouble: "\f158"; +@fa-var-rss: "\f09e"; +@fa-var-rss-square: "\f143"; +@fa-var-rub: "\f158"; +@fa-var-ruble: "\f158"; +@fa-var-rupee: "\f156"; +@fa-var-safari: "\f267"; +@fa-var-save: "\f0c7"; +@fa-var-scissors: "\f0c4"; +@fa-var-scribd: "\f28a"; +@fa-var-search: "\f002"; +@fa-var-search-minus: "\f010"; +@fa-var-search-plus: "\f00e"; +@fa-var-sellsy: "\f213"; +@fa-var-send: "\f1d8"; +@fa-var-send-o: "\f1d9"; +@fa-var-server: "\f233"; +@fa-var-share: "\f064"; +@fa-var-share-alt: "\f1e0"; +@fa-var-share-alt-square: "\f1e1"; +@fa-var-share-square: "\f14d"; +@fa-var-share-square-o: "\f045"; +@fa-var-shekel: "\f20b"; +@fa-var-sheqel: "\f20b"; +@fa-var-shield: "\f132"; +@fa-var-ship: "\f21a"; +@fa-var-shirtsinbulk: "\f214"; +@fa-var-shopping-bag: "\f290"; +@fa-var-shopping-basket: "\f291"; +@fa-var-shopping-cart: "\f07a"; +@fa-var-sign-in: "\f090"; +@fa-var-sign-language: "\f2a7"; +@fa-var-sign-out: "\f08b"; +@fa-var-signal: "\f012"; +@fa-var-signing: "\f2a7"; +@fa-var-simplybuilt: "\f215"; +@fa-var-sitemap: "\f0e8"; +@fa-var-skyatlas: "\f216"; +@fa-var-skype: "\f17e"; +@fa-var-slack: "\f198"; +@fa-var-sliders: "\f1de"; +@fa-var-slideshare: "\f1e7"; +@fa-var-smile-o: "\f118"; +@fa-var-snapchat: "\f2ab"; +@fa-var-snapchat-ghost: "\f2ac"; +@fa-var-snapchat-square: "\f2ad"; +@fa-var-soccer-ball-o: "\f1e3"; +@fa-var-sort: "\f0dc"; +@fa-var-sort-alpha-asc: "\f15d"; +@fa-var-sort-alpha-desc: "\f15e"; +@fa-var-sort-amount-asc: "\f160"; +@fa-var-sort-amount-desc: "\f161"; +@fa-var-sort-asc: "\f0de"; +@fa-var-sort-desc: "\f0dd"; +@fa-var-sort-down: "\f0dd"; +@fa-var-sort-numeric-asc: "\f162"; +@fa-var-sort-numeric-desc: "\f163"; +@fa-var-sort-up: "\f0de"; +@fa-var-soundcloud: "\f1be"; +@fa-var-space-shuttle: "\f197"; +@fa-var-spinner: "\f110"; +@fa-var-spoon: "\f1b1"; +@fa-var-spotify: "\f1bc"; +@fa-var-square: "\f0c8"; +@fa-var-square-o: "\f096"; +@fa-var-stack-exchange: "\f18d"; +@fa-var-stack-overflow: "\f16c"; +@fa-var-star: "\f005"; +@fa-var-star-half: "\f089"; +@fa-var-star-half-empty: "\f123"; +@fa-var-star-half-full: "\f123"; +@fa-var-star-half-o: "\f123"; +@fa-var-star-o: "\f006"; +@fa-var-steam: "\f1b6"; +@fa-var-steam-square: "\f1b7"; +@fa-var-step-backward: "\f048"; +@fa-var-step-forward: "\f051"; +@fa-var-stethoscope: "\f0f1"; +@fa-var-sticky-note: "\f249"; +@fa-var-sticky-note-o: "\f24a"; +@fa-var-stop: "\f04d"; +@fa-var-stop-circle: "\f28d"; +@fa-var-stop-circle-o: "\f28e"; +@fa-var-street-view: "\f21d"; +@fa-var-strikethrough: "\f0cc"; +@fa-var-stumbleupon: "\f1a4"; +@fa-var-stumbleupon-circle: "\f1a3"; +@fa-var-subscript: "\f12c"; +@fa-var-subway: "\f239"; +@fa-var-suitcase: "\f0f2"; +@fa-var-sun-o: "\f185"; +@fa-var-superscript: "\f12b"; +@fa-var-support: "\f1cd"; +@fa-var-table: "\f0ce"; +@fa-var-tablet: "\f10a"; +@fa-var-tachometer: "\f0e4"; +@fa-var-tag: "\f02b"; +@fa-var-tags: "\f02c"; +@fa-var-tasks: "\f0ae"; +@fa-var-taxi: "\f1ba"; +@fa-var-television: "\f26c"; +@fa-var-tencent-weibo: "\f1d5"; +@fa-var-terminal: "\f120"; +@fa-var-text-height: "\f034"; +@fa-var-text-width: "\f035"; +@fa-var-th: "\f00a"; +@fa-var-th-large: "\f009"; +@fa-var-th-list: "\f00b"; +@fa-var-themeisle: "\f2b2"; +@fa-var-thumb-tack: "\f08d"; +@fa-var-thumbs-down: "\f165"; +@fa-var-thumbs-o-down: "\f088"; +@fa-var-thumbs-o-up: "\f087"; +@fa-var-thumbs-up: "\f164"; +@fa-var-ticket: "\f145"; +@fa-var-times: "\f00d"; +@fa-var-times-circle: "\f057"; +@fa-var-times-circle-o: "\f05c"; +@fa-var-tint: "\f043"; +@fa-var-toggle-down: "\f150"; +@fa-var-toggle-left: "\f191"; +@fa-var-toggle-off: "\f204"; +@fa-var-toggle-on: "\f205"; +@fa-var-toggle-right: "\f152"; +@fa-var-toggle-up: "\f151"; +@fa-var-trademark: "\f25c"; +@fa-var-train: "\f238"; +@fa-var-transgender: "\f224"; +@fa-var-transgender-alt: "\f225"; +@fa-var-trash: "\f1f8"; +@fa-var-trash-o: "\f014"; +@fa-var-tree: "\f1bb"; +@fa-var-trello: "\f181"; +@fa-var-tripadvisor: "\f262"; +@fa-var-trophy: "\f091"; +@fa-var-truck: "\f0d1"; +@fa-var-try: "\f195"; +@fa-var-tty: "\f1e4"; +@fa-var-tumblr: "\f173"; +@fa-var-tumblr-square: "\f174"; +@fa-var-turkish-lira: "\f195"; +@fa-var-tv: "\f26c"; +@fa-var-twitch: "\f1e8"; +@fa-var-twitter: "\f099"; +@fa-var-twitter-square: "\f081"; +@fa-var-umbrella: "\f0e9"; +@fa-var-underline: "\f0cd"; +@fa-var-undo: "\f0e2"; +@fa-var-universal-access: "\f29a"; +@fa-var-university: "\f19c"; +@fa-var-unlink: "\f127"; +@fa-var-unlock: "\f09c"; +@fa-var-unlock-alt: "\f13e"; +@fa-var-unsorted: "\f0dc"; +@fa-var-upload: "\f093"; +@fa-var-usb: "\f287"; +@fa-var-usd: "\f155"; +@fa-var-user: "\f007"; +@fa-var-user-md: "\f0f0"; +@fa-var-user-plus: "\f234"; +@fa-var-user-secret: "\f21b"; +@fa-var-user-times: "\f235"; +@fa-var-users: "\f0c0"; +@fa-var-venus: "\f221"; +@fa-var-venus-double: "\f226"; +@fa-var-venus-mars: "\f228"; +@fa-var-viacoin: "\f237"; +@fa-var-viadeo: "\f2a9"; +@fa-var-viadeo-square: "\f2aa"; +@fa-var-video-camera: "\f03d"; +@fa-var-vimeo: "\f27d"; +@fa-var-vimeo-square: "\f194"; +@fa-var-vine: "\f1ca"; +@fa-var-vk: "\f189"; +@fa-var-volume-control-phone: "\f2a0"; +@fa-var-volume-down: "\f027"; +@fa-var-volume-off: "\f026"; +@fa-var-volume-up: "\f028"; +@fa-var-warning: "\f071"; +@fa-var-wechat: "\f1d7"; +@fa-var-weibo: "\f18a"; +@fa-var-weixin: "\f1d7"; +@fa-var-whatsapp: "\f232"; +@fa-var-wheelchair: "\f193"; +@fa-var-wheelchair-alt: "\f29b"; +@fa-var-wifi: "\f1eb"; +@fa-var-wikipedia-w: "\f266"; +@fa-var-windows: "\f17a"; +@fa-var-won: "\f159"; +@fa-var-wordpress: "\f19a"; +@fa-var-wpbeginner: "\f297"; +@fa-var-wpforms: "\f298"; +@fa-var-wrench: "\f0ad"; +@fa-var-xing: "\f168"; +@fa-var-xing-square: "\f169"; +@fa-var-y-combinator: "\f23b"; +@fa-var-y-combinator-square: "\f1d4"; +@fa-var-yahoo: "\f19e"; +@fa-var-yc: "\f23b"; +@fa-var-yc-square: "\f1d4"; +@fa-var-yelp: "\f1e9"; +@fa-var-yen: "\f157"; +@fa-var-yoast: "\f2b1"; +@fa-var-youtube: "\f167"; +@fa-var-youtube-play: "\f16a"; +@fa-var-youtube-square: "\f166"; + diff --git a/vraptor/src/main/webapp/vendor/font-awesome/scss/_animated.scss b/vraptor/src/main/webapp/vendor/font-awesome/scss/_animated.scss new file mode 100644 index 0000000000..8a020dbfff --- /dev/null +++ b/vraptor/src/main/webapp/vendor/font-awesome/scss/_animated.scss @@ -0,0 +1,34 @@ +// Spinning Icons +// -------------------------- + +.#{$fa-css-prefix}-spin { + -webkit-animation: fa-spin 2s infinite linear; + animation: fa-spin 2s infinite linear; +} + +.#{$fa-css-prefix}-pulse { + -webkit-animation: fa-spin 1s infinite steps(8); + animation: fa-spin 1s infinite steps(8); +} + +@-webkit-keyframes fa-spin { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + 100% { + -webkit-transform: rotate(359deg); + transform: rotate(359deg); + } +} + +@keyframes fa-spin { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + 100% { + -webkit-transform: rotate(359deg); + transform: rotate(359deg); + } +} diff --git a/vraptor/src/main/webapp/vendor/font-awesome/scss/_bordered-pulled.scss b/vraptor/src/main/webapp/vendor/font-awesome/scss/_bordered-pulled.scss new file mode 100644 index 0000000000..d4b85a02f2 --- /dev/null +++ b/vraptor/src/main/webapp/vendor/font-awesome/scss/_bordered-pulled.scss @@ -0,0 +1,25 @@ +// Bordered & Pulled +// ------------------------- + +.#{$fa-css-prefix}-border { + padding: .2em .25em .15em; + border: solid .08em $fa-border-color; + border-radius: .1em; +} + +.#{$fa-css-prefix}-pull-left { float: left; } +.#{$fa-css-prefix}-pull-right { float: right; } + +.#{$fa-css-prefix} { + &.#{$fa-css-prefix}-pull-left { margin-right: .3em; } + &.#{$fa-css-prefix}-pull-right { margin-left: .3em; } +} + +/* Deprecated as of 4.4.0 */ +.pull-right { float: right; } +.pull-left { float: left; } + +.#{$fa-css-prefix} { + &.pull-left { margin-right: .3em; } + &.pull-right { margin-left: .3em; } +} diff --git a/vraptor/src/main/webapp/vendor/font-awesome/scss/_core.scss b/vraptor/src/main/webapp/vendor/font-awesome/scss/_core.scss new file mode 100644 index 0000000000..7425ef85fc --- /dev/null +++ b/vraptor/src/main/webapp/vendor/font-awesome/scss/_core.scss @@ -0,0 +1,12 @@ +// Base Class Definition +// ------------------------- + +.#{$fa-css-prefix} { + display: inline-block; + font: normal normal normal #{$fa-font-size-base}/#{$fa-line-height-base} FontAwesome; // shortening font declaration + font-size: inherit; // can't have font-size inherit on line above, so need to override + text-rendering: auto; // optimizelegibility throws things off #1094 + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + +} diff --git a/vraptor/src/main/webapp/vendor/font-awesome/scss/_fixed-width.scss b/vraptor/src/main/webapp/vendor/font-awesome/scss/_fixed-width.scss new file mode 100644 index 0000000000..b221c98133 --- /dev/null +++ b/vraptor/src/main/webapp/vendor/font-awesome/scss/_fixed-width.scss @@ -0,0 +1,6 @@ +// Fixed Width Icons +// ------------------------- +.#{$fa-css-prefix}-fw { + width: (18em / 14); + text-align: center; +} diff --git a/vraptor/src/main/webapp/vendor/font-awesome/scss/_icons.scss b/vraptor/src/main/webapp/vendor/font-awesome/scss/_icons.scss new file mode 100644 index 0000000000..2944344350 --- /dev/null +++ b/vraptor/src/main/webapp/vendor/font-awesome/scss/_icons.scss @@ -0,0 +1,733 @@ +/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen + readers do not read off random characters that represent icons */ + +.#{$fa-css-prefix}-glass:before { content: $fa-var-glass; } +.#{$fa-css-prefix}-music:before { content: $fa-var-music; } +.#{$fa-css-prefix}-search:before { content: $fa-var-search; } +.#{$fa-css-prefix}-envelope-o:before { content: $fa-var-envelope-o; } +.#{$fa-css-prefix}-heart:before { content: $fa-var-heart; } +.#{$fa-css-prefix}-star:before { content: $fa-var-star; } +.#{$fa-css-prefix}-star-o:before { content: $fa-var-star-o; } +.#{$fa-css-prefix}-user:before { content: $fa-var-user; } +.#{$fa-css-prefix}-film:before { content: $fa-var-film; } +.#{$fa-css-prefix}-th-large:before { content: $fa-var-th-large; } +.#{$fa-css-prefix}-th:before { content: $fa-var-th; } +.#{$fa-css-prefix}-th-list:before { content: $fa-var-th-list; } +.#{$fa-css-prefix}-check:before { content: $fa-var-check; } +.#{$fa-css-prefix}-remove:before, +.#{$fa-css-prefix}-close:before, +.#{$fa-css-prefix}-times:before { content: $fa-var-times; } +.#{$fa-css-prefix}-search-plus:before { content: $fa-var-search-plus; } +.#{$fa-css-prefix}-search-minus:before { content: $fa-var-search-minus; } +.#{$fa-css-prefix}-power-off:before { content: $fa-var-power-off; } +.#{$fa-css-prefix}-signal:before { content: $fa-var-signal; } +.#{$fa-css-prefix}-gear:before, +.#{$fa-css-prefix}-cog:before { content: $fa-var-cog; } +.#{$fa-css-prefix}-trash-o:before { content: $fa-var-trash-o; } +.#{$fa-css-prefix}-home:before { content: $fa-var-home; } +.#{$fa-css-prefix}-file-o:before { content: $fa-var-file-o; } +.#{$fa-css-prefix}-clock-o:before { content: $fa-var-clock-o; } +.#{$fa-css-prefix}-road:before { content: $fa-var-road; } +.#{$fa-css-prefix}-download:before { content: $fa-var-download; } +.#{$fa-css-prefix}-arrow-circle-o-down:before { content: $fa-var-arrow-circle-o-down; } +.#{$fa-css-prefix}-arrow-circle-o-up:before { content: $fa-var-arrow-circle-o-up; } +.#{$fa-css-prefix}-inbox:before { content: $fa-var-inbox; } +.#{$fa-css-prefix}-play-circle-o:before { content: $fa-var-play-circle-o; } +.#{$fa-css-prefix}-rotate-right:before, +.#{$fa-css-prefix}-repeat:before { content: $fa-var-repeat; } +.#{$fa-css-prefix}-refresh:before { content: $fa-var-refresh; } +.#{$fa-css-prefix}-list-alt:before { content: $fa-var-list-alt; } +.#{$fa-css-prefix}-lock:before { content: $fa-var-lock; } +.#{$fa-css-prefix}-flag:before { content: $fa-var-flag; } +.#{$fa-css-prefix}-headphones:before { content: $fa-var-headphones; } +.#{$fa-css-prefix}-volume-off:before { content: $fa-var-volume-off; } +.#{$fa-css-prefix}-volume-down:before { content: $fa-var-volume-down; } +.#{$fa-css-prefix}-volume-up:before { content: $fa-var-volume-up; } +.#{$fa-css-prefix}-qrcode:before { content: $fa-var-qrcode; } +.#{$fa-css-prefix}-barcode:before { content: $fa-var-barcode; } +.#{$fa-css-prefix}-tag:before { content: $fa-var-tag; } +.#{$fa-css-prefix}-tags:before { content: $fa-var-tags; } +.#{$fa-css-prefix}-book:before { content: $fa-var-book; } +.#{$fa-css-prefix}-bookmark:before { content: $fa-var-bookmark; } +.#{$fa-css-prefix}-print:before { content: $fa-var-print; } +.#{$fa-css-prefix}-camera:before { content: $fa-var-camera; } +.#{$fa-css-prefix}-font:before { content: $fa-var-font; } +.#{$fa-css-prefix}-bold:before { content: $fa-var-bold; } +.#{$fa-css-prefix}-italic:before { content: $fa-var-italic; } +.#{$fa-css-prefix}-text-height:before { content: $fa-var-text-height; } +.#{$fa-css-prefix}-text-width:before { content: $fa-var-text-width; } +.#{$fa-css-prefix}-align-left:before { content: $fa-var-align-left; } +.#{$fa-css-prefix}-align-center:before { content: $fa-var-align-center; } +.#{$fa-css-prefix}-align-right:before { content: $fa-var-align-right; } +.#{$fa-css-prefix}-align-justify:before { content: $fa-var-align-justify; } +.#{$fa-css-prefix}-list:before { content: $fa-var-list; } +.#{$fa-css-prefix}-dedent:before, +.#{$fa-css-prefix}-outdent:before { content: $fa-var-outdent; } +.#{$fa-css-prefix}-indent:before { content: $fa-var-indent; } +.#{$fa-css-prefix}-video-camera:before { content: $fa-var-video-camera; } +.#{$fa-css-prefix}-photo:before, +.#{$fa-css-prefix}-image:before, +.#{$fa-css-prefix}-picture-o:before { content: $fa-var-picture-o; } +.#{$fa-css-prefix}-pencil:before { content: $fa-var-pencil; } +.#{$fa-css-prefix}-map-marker:before { content: $fa-var-map-marker; } +.#{$fa-css-prefix}-adjust:before { content: $fa-var-adjust; } +.#{$fa-css-prefix}-tint:before { content: $fa-var-tint; } +.#{$fa-css-prefix}-edit:before, +.#{$fa-css-prefix}-pencil-square-o:before { content: $fa-var-pencil-square-o; } +.#{$fa-css-prefix}-share-square-o:before { content: $fa-var-share-square-o; } +.#{$fa-css-prefix}-check-square-o:before { content: $fa-var-check-square-o; } +.#{$fa-css-prefix}-arrows:before { content: $fa-var-arrows; } +.#{$fa-css-prefix}-step-backward:before { content: $fa-var-step-backward; } +.#{$fa-css-prefix}-fast-backward:before { content: $fa-var-fast-backward; } +.#{$fa-css-prefix}-backward:before { content: $fa-var-backward; } +.#{$fa-css-prefix}-play:before { content: $fa-var-play; } +.#{$fa-css-prefix}-pause:before { content: $fa-var-pause; } +.#{$fa-css-prefix}-stop:before { content: $fa-var-stop; } +.#{$fa-css-prefix}-forward:before { content: $fa-var-forward; } +.#{$fa-css-prefix}-fast-forward:before { content: $fa-var-fast-forward; } +.#{$fa-css-prefix}-step-forward:before { content: $fa-var-step-forward; } +.#{$fa-css-prefix}-eject:before { content: $fa-var-eject; } +.#{$fa-css-prefix}-chevron-left:before { content: $fa-var-chevron-left; } +.#{$fa-css-prefix}-chevron-right:before { content: $fa-var-chevron-right; } +.#{$fa-css-prefix}-plus-circle:before { content: $fa-var-plus-circle; } +.#{$fa-css-prefix}-minus-circle:before { content: $fa-var-minus-circle; } +.#{$fa-css-prefix}-times-circle:before { content: $fa-var-times-circle; } +.#{$fa-css-prefix}-check-circle:before { content: $fa-var-check-circle; } +.#{$fa-css-prefix}-question-circle:before { content: $fa-var-question-circle; } +.#{$fa-css-prefix}-info-circle:before { content: $fa-var-info-circle; } +.#{$fa-css-prefix}-crosshairs:before { content: $fa-var-crosshairs; } +.#{$fa-css-prefix}-times-circle-o:before { content: $fa-var-times-circle-o; } +.#{$fa-css-prefix}-check-circle-o:before { content: $fa-var-check-circle-o; } +.#{$fa-css-prefix}-ban:before { content: $fa-var-ban; } +.#{$fa-css-prefix}-arrow-left:before { content: $fa-var-arrow-left; } +.#{$fa-css-prefix}-arrow-right:before { content: $fa-var-arrow-right; } +.#{$fa-css-prefix}-arrow-up:before { content: $fa-var-arrow-up; } +.#{$fa-css-prefix}-arrow-down:before { content: $fa-var-arrow-down; } +.#{$fa-css-prefix}-mail-forward:before, +.#{$fa-css-prefix}-share:before { content: $fa-var-share; } +.#{$fa-css-prefix}-expand:before { content: $fa-var-expand; } +.#{$fa-css-prefix}-compress:before { content: $fa-var-compress; } +.#{$fa-css-prefix}-plus:before { content: $fa-var-plus; } +.#{$fa-css-prefix}-minus:before { content: $fa-var-minus; } +.#{$fa-css-prefix}-asterisk:before { content: $fa-var-asterisk; } +.#{$fa-css-prefix}-exclamation-circle:before { content: $fa-var-exclamation-circle; } +.#{$fa-css-prefix}-gift:before { content: $fa-var-gift; } +.#{$fa-css-prefix}-leaf:before { content: $fa-var-leaf; } +.#{$fa-css-prefix}-fire:before { content: $fa-var-fire; } +.#{$fa-css-prefix}-eye:before { content: $fa-var-eye; } +.#{$fa-css-prefix}-eye-slash:before { content: $fa-var-eye-slash; } +.#{$fa-css-prefix}-warning:before, +.#{$fa-css-prefix}-exclamation-triangle:before { content: $fa-var-exclamation-triangle; } +.#{$fa-css-prefix}-plane:before { content: $fa-var-plane; } +.#{$fa-css-prefix}-calendar:before { content: $fa-var-calendar; } +.#{$fa-css-prefix}-random:before { content: $fa-var-random; } +.#{$fa-css-prefix}-comment:before { content: $fa-var-comment; } +.#{$fa-css-prefix}-magnet:before { content: $fa-var-magnet; } +.#{$fa-css-prefix}-chevron-up:before { content: $fa-var-chevron-up; } +.#{$fa-css-prefix}-chevron-down:before { content: $fa-var-chevron-down; } +.#{$fa-css-prefix}-retweet:before { content: $fa-var-retweet; } +.#{$fa-css-prefix}-shopping-cart:before { content: $fa-var-shopping-cart; } +.#{$fa-css-prefix}-folder:before { content: $fa-var-folder; } +.#{$fa-css-prefix}-folder-open:before { content: $fa-var-folder-open; } +.#{$fa-css-prefix}-arrows-v:before { content: $fa-var-arrows-v; } +.#{$fa-css-prefix}-arrows-h:before { content: $fa-var-arrows-h; } +.#{$fa-css-prefix}-bar-chart-o:before, +.#{$fa-css-prefix}-bar-chart:before { content: $fa-var-bar-chart; } +.#{$fa-css-prefix}-twitter-square:before { content: $fa-var-twitter-square; } +.#{$fa-css-prefix}-facebook-square:before { content: $fa-var-facebook-square; } +.#{$fa-css-prefix}-camera-retro:before { content: $fa-var-camera-retro; } +.#{$fa-css-prefix}-key:before { content: $fa-var-key; } +.#{$fa-css-prefix}-gears:before, +.#{$fa-css-prefix}-cogs:before { content: $fa-var-cogs; } +.#{$fa-css-prefix}-comments:before { content: $fa-var-comments; } +.#{$fa-css-prefix}-thumbs-o-up:before { content: $fa-var-thumbs-o-up; } +.#{$fa-css-prefix}-thumbs-o-down:before { content: $fa-var-thumbs-o-down; } +.#{$fa-css-prefix}-star-half:before { content: $fa-var-star-half; } +.#{$fa-css-prefix}-heart-o:before { content: $fa-var-heart-o; } +.#{$fa-css-prefix}-sign-out:before { content: $fa-var-sign-out; } +.#{$fa-css-prefix}-linkedin-square:before { content: $fa-var-linkedin-square; } +.#{$fa-css-prefix}-thumb-tack:before { content: $fa-var-thumb-tack; } +.#{$fa-css-prefix}-external-link:before { content: $fa-var-external-link; } +.#{$fa-css-prefix}-sign-in:before { content: $fa-var-sign-in; } +.#{$fa-css-prefix}-trophy:before { content: $fa-var-trophy; } +.#{$fa-css-prefix}-github-square:before { content: $fa-var-github-square; } +.#{$fa-css-prefix}-upload:before { content: $fa-var-upload; } +.#{$fa-css-prefix}-lemon-o:before { content: $fa-var-lemon-o; } +.#{$fa-css-prefix}-phone:before { content: $fa-var-phone; } +.#{$fa-css-prefix}-square-o:before { content: $fa-var-square-o; } +.#{$fa-css-prefix}-bookmark-o:before { content: $fa-var-bookmark-o; } +.#{$fa-css-prefix}-phone-square:before { content: $fa-var-phone-square; } +.#{$fa-css-prefix}-twitter:before { content: $fa-var-twitter; } +.#{$fa-css-prefix}-facebook-f:before, +.#{$fa-css-prefix}-facebook:before { content: $fa-var-facebook; } +.#{$fa-css-prefix}-github:before { content: $fa-var-github; } +.#{$fa-css-prefix}-unlock:before { content: $fa-var-unlock; } +.#{$fa-css-prefix}-credit-card:before { content: $fa-var-credit-card; } +.#{$fa-css-prefix}-feed:before, +.#{$fa-css-prefix}-rss:before { content: $fa-var-rss; } +.#{$fa-css-prefix}-hdd-o:before { content: $fa-var-hdd-o; } +.#{$fa-css-prefix}-bullhorn:before { content: $fa-var-bullhorn; } +.#{$fa-css-prefix}-bell:before { content: $fa-var-bell; } +.#{$fa-css-prefix}-certificate:before { content: $fa-var-certificate; } +.#{$fa-css-prefix}-hand-o-right:before { content: $fa-var-hand-o-right; } +.#{$fa-css-prefix}-hand-o-left:before { content: $fa-var-hand-o-left; } +.#{$fa-css-prefix}-hand-o-up:before { content: $fa-var-hand-o-up; } +.#{$fa-css-prefix}-hand-o-down:before { content: $fa-var-hand-o-down; } +.#{$fa-css-prefix}-arrow-circle-left:before { content: $fa-var-arrow-circle-left; } +.#{$fa-css-prefix}-arrow-circle-right:before { content: $fa-var-arrow-circle-right; } +.#{$fa-css-prefix}-arrow-circle-up:before { content: $fa-var-arrow-circle-up; } +.#{$fa-css-prefix}-arrow-circle-down:before { content: $fa-var-arrow-circle-down; } +.#{$fa-css-prefix}-globe:before { content: $fa-var-globe; } +.#{$fa-css-prefix}-wrench:before { content: $fa-var-wrench; } +.#{$fa-css-prefix}-tasks:before { content: $fa-var-tasks; } +.#{$fa-css-prefix}-filter:before { content: $fa-var-filter; } +.#{$fa-css-prefix}-briefcase:before { content: $fa-var-briefcase; } +.#{$fa-css-prefix}-arrows-alt:before { content: $fa-var-arrows-alt; } +.#{$fa-css-prefix}-group:before, +.#{$fa-css-prefix}-users:before { content: $fa-var-users; } +.#{$fa-css-prefix}-chain:before, +.#{$fa-css-prefix}-link:before { content: $fa-var-link; } +.#{$fa-css-prefix}-cloud:before { content: $fa-var-cloud; } +.#{$fa-css-prefix}-flask:before { content: $fa-var-flask; } +.#{$fa-css-prefix}-cut:before, +.#{$fa-css-prefix}-scissors:before { content: $fa-var-scissors; } +.#{$fa-css-prefix}-copy:before, +.#{$fa-css-prefix}-files-o:before { content: $fa-var-files-o; } +.#{$fa-css-prefix}-paperclip:before { content: $fa-var-paperclip; } +.#{$fa-css-prefix}-save:before, +.#{$fa-css-prefix}-floppy-o:before { content: $fa-var-floppy-o; } +.#{$fa-css-prefix}-square:before { content: $fa-var-square; } +.#{$fa-css-prefix}-navicon:before, +.#{$fa-css-prefix}-reorder:before, +.#{$fa-css-prefix}-bars:before { content: $fa-var-bars; } +.#{$fa-css-prefix}-list-ul:before { content: $fa-var-list-ul; } +.#{$fa-css-prefix}-list-ol:before { content: $fa-var-list-ol; } +.#{$fa-css-prefix}-strikethrough:before { content: $fa-var-strikethrough; } +.#{$fa-css-prefix}-underline:before { content: $fa-var-underline; } +.#{$fa-css-prefix}-table:before { content: $fa-var-table; } +.#{$fa-css-prefix}-magic:before { content: $fa-var-magic; } +.#{$fa-css-prefix}-truck:before { content: $fa-var-truck; } +.#{$fa-css-prefix}-pinterest:before { content: $fa-var-pinterest; } +.#{$fa-css-prefix}-pinterest-square:before { content: $fa-var-pinterest-square; } +.#{$fa-css-prefix}-google-plus-square:before { content: $fa-var-google-plus-square; } +.#{$fa-css-prefix}-google-plus:before { content: $fa-var-google-plus; } +.#{$fa-css-prefix}-money:before { content: $fa-var-money; } +.#{$fa-css-prefix}-caret-down:before { content: $fa-var-caret-down; } +.#{$fa-css-prefix}-caret-up:before { content: $fa-var-caret-up; } +.#{$fa-css-prefix}-caret-left:before { content: $fa-var-caret-left; } +.#{$fa-css-prefix}-caret-right:before { content: $fa-var-caret-right; } +.#{$fa-css-prefix}-columns:before { content: $fa-var-columns; } +.#{$fa-css-prefix}-unsorted:before, +.#{$fa-css-prefix}-sort:before { content: $fa-var-sort; } +.#{$fa-css-prefix}-sort-down:before, +.#{$fa-css-prefix}-sort-desc:before { content: $fa-var-sort-desc; } +.#{$fa-css-prefix}-sort-up:before, +.#{$fa-css-prefix}-sort-asc:before { content: $fa-var-sort-asc; } +.#{$fa-css-prefix}-envelope:before { content: $fa-var-envelope; } +.#{$fa-css-prefix}-linkedin:before { content: $fa-var-linkedin; } +.#{$fa-css-prefix}-rotate-left:before, +.#{$fa-css-prefix}-undo:before { content: $fa-var-undo; } +.#{$fa-css-prefix}-legal:before, +.#{$fa-css-prefix}-gavel:before { content: $fa-var-gavel; } +.#{$fa-css-prefix}-dashboard:before, +.#{$fa-css-prefix}-tachometer:before { content: $fa-var-tachometer; } +.#{$fa-css-prefix}-comment-o:before { content: $fa-var-comment-o; } +.#{$fa-css-prefix}-comments-o:before { content: $fa-var-comments-o; } +.#{$fa-css-prefix}-flash:before, +.#{$fa-css-prefix}-bolt:before { content: $fa-var-bolt; } +.#{$fa-css-prefix}-sitemap:before { content: $fa-var-sitemap; } +.#{$fa-css-prefix}-umbrella:before { content: $fa-var-umbrella; } +.#{$fa-css-prefix}-paste:before, +.#{$fa-css-prefix}-clipboard:before { content: $fa-var-clipboard; } +.#{$fa-css-prefix}-lightbulb-o:before { content: $fa-var-lightbulb-o; } +.#{$fa-css-prefix}-exchange:before { content: $fa-var-exchange; } +.#{$fa-css-prefix}-cloud-download:before { content: $fa-var-cloud-download; } +.#{$fa-css-prefix}-cloud-upload:before { content: $fa-var-cloud-upload; } +.#{$fa-css-prefix}-user-md:before { content: $fa-var-user-md; } +.#{$fa-css-prefix}-stethoscope:before { content: $fa-var-stethoscope; } +.#{$fa-css-prefix}-suitcase:before { content: $fa-var-suitcase; } +.#{$fa-css-prefix}-bell-o:before { content: $fa-var-bell-o; } +.#{$fa-css-prefix}-coffee:before { content: $fa-var-coffee; } +.#{$fa-css-prefix}-cutlery:before { content: $fa-var-cutlery; } +.#{$fa-css-prefix}-file-text-o:before { content: $fa-var-file-text-o; } +.#{$fa-css-prefix}-building-o:before { content: $fa-var-building-o; } +.#{$fa-css-prefix}-hospital-o:before { content: $fa-var-hospital-o; } +.#{$fa-css-prefix}-ambulance:before { content: $fa-var-ambulance; } +.#{$fa-css-prefix}-medkit:before { content: $fa-var-medkit; } +.#{$fa-css-prefix}-fighter-jet:before { content: $fa-var-fighter-jet; } +.#{$fa-css-prefix}-beer:before { content: $fa-var-beer; } +.#{$fa-css-prefix}-h-square:before { content: $fa-var-h-square; } +.#{$fa-css-prefix}-plus-square:before { content: $fa-var-plus-square; } +.#{$fa-css-prefix}-angle-double-left:before { content: $fa-var-angle-double-left; } +.#{$fa-css-prefix}-angle-double-right:before { content: $fa-var-angle-double-right; } +.#{$fa-css-prefix}-angle-double-up:before { content: $fa-var-angle-double-up; } +.#{$fa-css-prefix}-angle-double-down:before { content: $fa-var-angle-double-down; } +.#{$fa-css-prefix}-angle-left:before { content: $fa-var-angle-left; } +.#{$fa-css-prefix}-angle-right:before { content: $fa-var-angle-right; } +.#{$fa-css-prefix}-angle-up:before { content: $fa-var-angle-up; } +.#{$fa-css-prefix}-angle-down:before { content: $fa-var-angle-down; } +.#{$fa-css-prefix}-desktop:before { content: $fa-var-desktop; } +.#{$fa-css-prefix}-laptop:before { content: $fa-var-laptop; } +.#{$fa-css-prefix}-tablet:before { content: $fa-var-tablet; } +.#{$fa-css-prefix}-mobile-phone:before, +.#{$fa-css-prefix}-mobile:before { content: $fa-var-mobile; } +.#{$fa-css-prefix}-circle-o:before { content: $fa-var-circle-o; } +.#{$fa-css-prefix}-quote-left:before { content: $fa-var-quote-left; } +.#{$fa-css-prefix}-quote-right:before { content: $fa-var-quote-right; } +.#{$fa-css-prefix}-spinner:before { content: $fa-var-spinner; } +.#{$fa-css-prefix}-circle:before { content: $fa-var-circle; } +.#{$fa-css-prefix}-mail-reply:before, +.#{$fa-css-prefix}-reply:before { content: $fa-var-reply; } +.#{$fa-css-prefix}-github-alt:before { content: $fa-var-github-alt; } +.#{$fa-css-prefix}-folder-o:before { content: $fa-var-folder-o; } +.#{$fa-css-prefix}-folder-open-o:before { content: $fa-var-folder-open-o; } +.#{$fa-css-prefix}-smile-o:before { content: $fa-var-smile-o; } +.#{$fa-css-prefix}-frown-o:before { content: $fa-var-frown-o; } +.#{$fa-css-prefix}-meh-o:before { content: $fa-var-meh-o; } +.#{$fa-css-prefix}-gamepad:before { content: $fa-var-gamepad; } +.#{$fa-css-prefix}-keyboard-o:before { content: $fa-var-keyboard-o; } +.#{$fa-css-prefix}-flag-o:before { content: $fa-var-flag-o; } +.#{$fa-css-prefix}-flag-checkered:before { content: $fa-var-flag-checkered; } +.#{$fa-css-prefix}-terminal:before { content: $fa-var-terminal; } +.#{$fa-css-prefix}-code:before { content: $fa-var-code; } +.#{$fa-css-prefix}-mail-reply-all:before, +.#{$fa-css-prefix}-reply-all:before { content: $fa-var-reply-all; } +.#{$fa-css-prefix}-star-half-empty:before, +.#{$fa-css-prefix}-star-half-full:before, +.#{$fa-css-prefix}-star-half-o:before { content: $fa-var-star-half-o; } +.#{$fa-css-prefix}-location-arrow:before { content: $fa-var-location-arrow; } +.#{$fa-css-prefix}-crop:before { content: $fa-var-crop; } +.#{$fa-css-prefix}-code-fork:before { content: $fa-var-code-fork; } +.#{$fa-css-prefix}-unlink:before, +.#{$fa-css-prefix}-chain-broken:before { content: $fa-var-chain-broken; } +.#{$fa-css-prefix}-question:before { content: $fa-var-question; } +.#{$fa-css-prefix}-info:before { content: $fa-var-info; } +.#{$fa-css-prefix}-exclamation:before { content: $fa-var-exclamation; } +.#{$fa-css-prefix}-superscript:before { content: $fa-var-superscript; } +.#{$fa-css-prefix}-subscript:before { content: $fa-var-subscript; } +.#{$fa-css-prefix}-eraser:before { content: $fa-var-eraser; } +.#{$fa-css-prefix}-puzzle-piece:before { content: $fa-var-puzzle-piece; } +.#{$fa-css-prefix}-microphone:before { content: $fa-var-microphone; } +.#{$fa-css-prefix}-microphone-slash:before { content: $fa-var-microphone-slash; } +.#{$fa-css-prefix}-shield:before { content: $fa-var-shield; } +.#{$fa-css-prefix}-calendar-o:before { content: $fa-var-calendar-o; } +.#{$fa-css-prefix}-fire-extinguisher:before { content: $fa-var-fire-extinguisher; } +.#{$fa-css-prefix}-rocket:before { content: $fa-var-rocket; } +.#{$fa-css-prefix}-maxcdn:before { content: $fa-var-maxcdn; } +.#{$fa-css-prefix}-chevron-circle-left:before { content: $fa-var-chevron-circle-left; } +.#{$fa-css-prefix}-chevron-circle-right:before { content: $fa-var-chevron-circle-right; } +.#{$fa-css-prefix}-chevron-circle-up:before { content: $fa-var-chevron-circle-up; } +.#{$fa-css-prefix}-chevron-circle-down:before { content: $fa-var-chevron-circle-down; } +.#{$fa-css-prefix}-html5:before { content: $fa-var-html5; } +.#{$fa-css-prefix}-css3:before { content: $fa-var-css3; } +.#{$fa-css-prefix}-anchor:before { content: $fa-var-anchor; } +.#{$fa-css-prefix}-unlock-alt:before { content: $fa-var-unlock-alt; } +.#{$fa-css-prefix}-bullseye:before { content: $fa-var-bullseye; } +.#{$fa-css-prefix}-ellipsis-h:before { content: $fa-var-ellipsis-h; } +.#{$fa-css-prefix}-ellipsis-v:before { content: $fa-var-ellipsis-v; } +.#{$fa-css-prefix}-rss-square:before { content: $fa-var-rss-square; } +.#{$fa-css-prefix}-play-circle:before { content: $fa-var-play-circle; } +.#{$fa-css-prefix}-ticket:before { content: $fa-var-ticket; } +.#{$fa-css-prefix}-minus-square:before { content: $fa-var-minus-square; } +.#{$fa-css-prefix}-minus-square-o:before { content: $fa-var-minus-square-o; } +.#{$fa-css-prefix}-level-up:before { content: $fa-var-level-up; } +.#{$fa-css-prefix}-level-down:before { content: $fa-var-level-down; } +.#{$fa-css-prefix}-check-square:before { content: $fa-var-check-square; } +.#{$fa-css-prefix}-pencil-square:before { content: $fa-var-pencil-square; } +.#{$fa-css-prefix}-external-link-square:before { content: $fa-var-external-link-square; } +.#{$fa-css-prefix}-share-square:before { content: $fa-var-share-square; } +.#{$fa-css-prefix}-compass:before { content: $fa-var-compass; } +.#{$fa-css-prefix}-toggle-down:before, +.#{$fa-css-prefix}-caret-square-o-down:before { content: $fa-var-caret-square-o-down; } +.#{$fa-css-prefix}-toggle-up:before, +.#{$fa-css-prefix}-caret-square-o-up:before { content: $fa-var-caret-square-o-up; } +.#{$fa-css-prefix}-toggle-right:before, +.#{$fa-css-prefix}-caret-square-o-right:before { content: $fa-var-caret-square-o-right; } +.#{$fa-css-prefix}-euro:before, +.#{$fa-css-prefix}-eur:before { content: $fa-var-eur; } +.#{$fa-css-prefix}-gbp:before { content: $fa-var-gbp; } +.#{$fa-css-prefix}-dollar:before, +.#{$fa-css-prefix}-usd:before { content: $fa-var-usd; } +.#{$fa-css-prefix}-rupee:before, +.#{$fa-css-prefix}-inr:before { content: $fa-var-inr; } +.#{$fa-css-prefix}-cny:before, +.#{$fa-css-prefix}-rmb:before, +.#{$fa-css-prefix}-yen:before, +.#{$fa-css-prefix}-jpy:before { content: $fa-var-jpy; } +.#{$fa-css-prefix}-ruble:before, +.#{$fa-css-prefix}-rouble:before, +.#{$fa-css-prefix}-rub:before { content: $fa-var-rub; } +.#{$fa-css-prefix}-won:before, +.#{$fa-css-prefix}-krw:before { content: $fa-var-krw; } +.#{$fa-css-prefix}-bitcoin:before, +.#{$fa-css-prefix}-btc:before { content: $fa-var-btc; } +.#{$fa-css-prefix}-file:before { content: $fa-var-file; } +.#{$fa-css-prefix}-file-text:before { content: $fa-var-file-text; } +.#{$fa-css-prefix}-sort-alpha-asc:before { content: $fa-var-sort-alpha-asc; } +.#{$fa-css-prefix}-sort-alpha-desc:before { content: $fa-var-sort-alpha-desc; } +.#{$fa-css-prefix}-sort-amount-asc:before { content: $fa-var-sort-amount-asc; } +.#{$fa-css-prefix}-sort-amount-desc:before { content: $fa-var-sort-amount-desc; } +.#{$fa-css-prefix}-sort-numeric-asc:before { content: $fa-var-sort-numeric-asc; } +.#{$fa-css-prefix}-sort-numeric-desc:before { content: $fa-var-sort-numeric-desc; } +.#{$fa-css-prefix}-thumbs-up:before { content: $fa-var-thumbs-up; } +.#{$fa-css-prefix}-thumbs-down:before { content: $fa-var-thumbs-down; } +.#{$fa-css-prefix}-youtube-square:before { content: $fa-var-youtube-square; } +.#{$fa-css-prefix}-youtube:before { content: $fa-var-youtube; } +.#{$fa-css-prefix}-xing:before { content: $fa-var-xing; } +.#{$fa-css-prefix}-xing-square:before { content: $fa-var-xing-square; } +.#{$fa-css-prefix}-youtube-play:before { content: $fa-var-youtube-play; } +.#{$fa-css-prefix}-dropbox:before { content: $fa-var-dropbox; } +.#{$fa-css-prefix}-stack-overflow:before { content: $fa-var-stack-overflow; } +.#{$fa-css-prefix}-instagram:before { content: $fa-var-instagram; } +.#{$fa-css-prefix}-flickr:before { content: $fa-var-flickr; } +.#{$fa-css-prefix}-adn:before { content: $fa-var-adn; } +.#{$fa-css-prefix}-bitbucket:before { content: $fa-var-bitbucket; } +.#{$fa-css-prefix}-bitbucket-square:before { content: $fa-var-bitbucket-square; } +.#{$fa-css-prefix}-tumblr:before { content: $fa-var-tumblr; } +.#{$fa-css-prefix}-tumblr-square:before { content: $fa-var-tumblr-square; } +.#{$fa-css-prefix}-long-arrow-down:before { content: $fa-var-long-arrow-down; } +.#{$fa-css-prefix}-long-arrow-up:before { content: $fa-var-long-arrow-up; } +.#{$fa-css-prefix}-long-arrow-left:before { content: $fa-var-long-arrow-left; } +.#{$fa-css-prefix}-long-arrow-right:before { content: $fa-var-long-arrow-right; } +.#{$fa-css-prefix}-apple:before { content: $fa-var-apple; } +.#{$fa-css-prefix}-windows:before { content: $fa-var-windows; } +.#{$fa-css-prefix}-android:before { content: $fa-var-android; } +.#{$fa-css-prefix}-linux:before { content: $fa-var-linux; } +.#{$fa-css-prefix}-dribbble:before { content: $fa-var-dribbble; } +.#{$fa-css-prefix}-skype:before { content: $fa-var-skype; } +.#{$fa-css-prefix}-foursquare:before { content: $fa-var-foursquare; } +.#{$fa-css-prefix}-trello:before { content: $fa-var-trello; } +.#{$fa-css-prefix}-female:before { content: $fa-var-female; } +.#{$fa-css-prefix}-male:before { content: $fa-var-male; } +.#{$fa-css-prefix}-gittip:before, +.#{$fa-css-prefix}-gratipay:before { content: $fa-var-gratipay; } +.#{$fa-css-prefix}-sun-o:before { content: $fa-var-sun-o; } +.#{$fa-css-prefix}-moon-o:before { content: $fa-var-moon-o; } +.#{$fa-css-prefix}-archive:before { content: $fa-var-archive; } +.#{$fa-css-prefix}-bug:before { content: $fa-var-bug; } +.#{$fa-css-prefix}-vk:before { content: $fa-var-vk; } +.#{$fa-css-prefix}-weibo:before { content: $fa-var-weibo; } +.#{$fa-css-prefix}-renren:before { content: $fa-var-renren; } +.#{$fa-css-prefix}-pagelines:before { content: $fa-var-pagelines; } +.#{$fa-css-prefix}-stack-exchange:before { content: $fa-var-stack-exchange; } +.#{$fa-css-prefix}-arrow-circle-o-right:before { content: $fa-var-arrow-circle-o-right; } +.#{$fa-css-prefix}-arrow-circle-o-left:before { content: $fa-var-arrow-circle-o-left; } +.#{$fa-css-prefix}-toggle-left:before, +.#{$fa-css-prefix}-caret-square-o-left:before { content: $fa-var-caret-square-o-left; } +.#{$fa-css-prefix}-dot-circle-o:before { content: $fa-var-dot-circle-o; } +.#{$fa-css-prefix}-wheelchair:before { content: $fa-var-wheelchair; } +.#{$fa-css-prefix}-vimeo-square:before { content: $fa-var-vimeo-square; } +.#{$fa-css-prefix}-turkish-lira:before, +.#{$fa-css-prefix}-try:before { content: $fa-var-try; } +.#{$fa-css-prefix}-plus-square-o:before { content: $fa-var-plus-square-o; } +.#{$fa-css-prefix}-space-shuttle:before { content: $fa-var-space-shuttle; } +.#{$fa-css-prefix}-slack:before { content: $fa-var-slack; } +.#{$fa-css-prefix}-envelope-square:before { content: $fa-var-envelope-square; } +.#{$fa-css-prefix}-wordpress:before { content: $fa-var-wordpress; } +.#{$fa-css-prefix}-openid:before { content: $fa-var-openid; } +.#{$fa-css-prefix}-institution:before, +.#{$fa-css-prefix}-bank:before, +.#{$fa-css-prefix}-university:before { content: $fa-var-university; } +.#{$fa-css-prefix}-mortar-board:before, +.#{$fa-css-prefix}-graduation-cap:before { content: $fa-var-graduation-cap; } +.#{$fa-css-prefix}-yahoo:before { content: $fa-var-yahoo; } +.#{$fa-css-prefix}-google:before { content: $fa-var-google; } +.#{$fa-css-prefix}-reddit:before { content: $fa-var-reddit; } +.#{$fa-css-prefix}-reddit-square:before { content: $fa-var-reddit-square; } +.#{$fa-css-prefix}-stumbleupon-circle:before { content: $fa-var-stumbleupon-circle; } +.#{$fa-css-prefix}-stumbleupon:before { content: $fa-var-stumbleupon; } +.#{$fa-css-prefix}-delicious:before { content: $fa-var-delicious; } +.#{$fa-css-prefix}-digg:before { content: $fa-var-digg; } +.#{$fa-css-prefix}-pied-piper-pp:before { content: $fa-var-pied-piper-pp; } +.#{$fa-css-prefix}-pied-piper-alt:before { content: $fa-var-pied-piper-alt; } +.#{$fa-css-prefix}-drupal:before { content: $fa-var-drupal; } +.#{$fa-css-prefix}-joomla:before { content: $fa-var-joomla; } +.#{$fa-css-prefix}-language:before { content: $fa-var-language; } +.#{$fa-css-prefix}-fax:before { content: $fa-var-fax; } +.#{$fa-css-prefix}-building:before { content: $fa-var-building; } +.#{$fa-css-prefix}-child:before { content: $fa-var-child; } +.#{$fa-css-prefix}-paw:before { content: $fa-var-paw; } +.#{$fa-css-prefix}-spoon:before { content: $fa-var-spoon; } +.#{$fa-css-prefix}-cube:before { content: $fa-var-cube; } +.#{$fa-css-prefix}-cubes:before { content: $fa-var-cubes; } +.#{$fa-css-prefix}-behance:before { content: $fa-var-behance; } +.#{$fa-css-prefix}-behance-square:before { content: $fa-var-behance-square; } +.#{$fa-css-prefix}-steam:before { content: $fa-var-steam; } +.#{$fa-css-prefix}-steam-square:before { content: $fa-var-steam-square; } +.#{$fa-css-prefix}-recycle:before { content: $fa-var-recycle; } +.#{$fa-css-prefix}-automobile:before, +.#{$fa-css-prefix}-car:before { content: $fa-var-car; } +.#{$fa-css-prefix}-cab:before, +.#{$fa-css-prefix}-taxi:before { content: $fa-var-taxi; } +.#{$fa-css-prefix}-tree:before { content: $fa-var-tree; } +.#{$fa-css-prefix}-spotify:before { content: $fa-var-spotify; } +.#{$fa-css-prefix}-deviantart:before { content: $fa-var-deviantart; } +.#{$fa-css-prefix}-soundcloud:before { content: $fa-var-soundcloud; } +.#{$fa-css-prefix}-database:before { content: $fa-var-database; } +.#{$fa-css-prefix}-file-pdf-o:before { content: $fa-var-file-pdf-o; } +.#{$fa-css-prefix}-file-word-o:before { content: $fa-var-file-word-o; } +.#{$fa-css-prefix}-file-excel-o:before { content: $fa-var-file-excel-o; } +.#{$fa-css-prefix}-file-powerpoint-o:before { content: $fa-var-file-powerpoint-o; } +.#{$fa-css-prefix}-file-photo-o:before, +.#{$fa-css-prefix}-file-picture-o:before, +.#{$fa-css-prefix}-file-image-o:before { content: $fa-var-file-image-o; } +.#{$fa-css-prefix}-file-zip-o:before, +.#{$fa-css-prefix}-file-archive-o:before { content: $fa-var-file-archive-o; } +.#{$fa-css-prefix}-file-sound-o:before, +.#{$fa-css-prefix}-file-audio-o:before { content: $fa-var-file-audio-o; } +.#{$fa-css-prefix}-file-movie-o:before, +.#{$fa-css-prefix}-file-video-o:before { content: $fa-var-file-video-o; } +.#{$fa-css-prefix}-file-code-o:before { content: $fa-var-file-code-o; } +.#{$fa-css-prefix}-vine:before { content: $fa-var-vine; } +.#{$fa-css-prefix}-codepen:before { content: $fa-var-codepen; } +.#{$fa-css-prefix}-jsfiddle:before { content: $fa-var-jsfiddle; } +.#{$fa-css-prefix}-life-bouy:before, +.#{$fa-css-prefix}-life-buoy:before, +.#{$fa-css-prefix}-life-saver:before, +.#{$fa-css-prefix}-support:before, +.#{$fa-css-prefix}-life-ring:before { content: $fa-var-life-ring; } +.#{$fa-css-prefix}-circle-o-notch:before { content: $fa-var-circle-o-notch; } +.#{$fa-css-prefix}-ra:before, +.#{$fa-css-prefix}-resistance:before, +.#{$fa-css-prefix}-rebel:before { content: $fa-var-rebel; } +.#{$fa-css-prefix}-ge:before, +.#{$fa-css-prefix}-empire:before { content: $fa-var-empire; } +.#{$fa-css-prefix}-git-square:before { content: $fa-var-git-square; } +.#{$fa-css-prefix}-git:before { content: $fa-var-git; } +.#{$fa-css-prefix}-y-combinator-square:before, +.#{$fa-css-prefix}-yc-square:before, +.#{$fa-css-prefix}-hacker-news:before { content: $fa-var-hacker-news; } +.#{$fa-css-prefix}-tencent-weibo:before { content: $fa-var-tencent-weibo; } +.#{$fa-css-prefix}-qq:before { content: $fa-var-qq; } +.#{$fa-css-prefix}-wechat:before, +.#{$fa-css-prefix}-weixin:before { content: $fa-var-weixin; } +.#{$fa-css-prefix}-send:before, +.#{$fa-css-prefix}-paper-plane:before { content: $fa-var-paper-plane; } +.#{$fa-css-prefix}-send-o:before, +.#{$fa-css-prefix}-paper-plane-o:before { content: $fa-var-paper-plane-o; } +.#{$fa-css-prefix}-history:before { content: $fa-var-history; } +.#{$fa-css-prefix}-circle-thin:before { content: $fa-var-circle-thin; } +.#{$fa-css-prefix}-header:before { content: $fa-var-header; } +.#{$fa-css-prefix}-paragraph:before { content: $fa-var-paragraph; } +.#{$fa-css-prefix}-sliders:before { content: $fa-var-sliders; } +.#{$fa-css-prefix}-share-alt:before { content: $fa-var-share-alt; } +.#{$fa-css-prefix}-share-alt-square:before { content: $fa-var-share-alt-square; } +.#{$fa-css-prefix}-bomb:before { content: $fa-var-bomb; } +.#{$fa-css-prefix}-soccer-ball-o:before, +.#{$fa-css-prefix}-futbol-o:before { content: $fa-var-futbol-o; } +.#{$fa-css-prefix}-tty:before { content: $fa-var-tty; } +.#{$fa-css-prefix}-binoculars:before { content: $fa-var-binoculars; } +.#{$fa-css-prefix}-plug:before { content: $fa-var-plug; } +.#{$fa-css-prefix}-slideshare:before { content: $fa-var-slideshare; } +.#{$fa-css-prefix}-twitch:before { content: $fa-var-twitch; } +.#{$fa-css-prefix}-yelp:before { content: $fa-var-yelp; } +.#{$fa-css-prefix}-newspaper-o:before { content: $fa-var-newspaper-o; } +.#{$fa-css-prefix}-wifi:before { content: $fa-var-wifi; } +.#{$fa-css-prefix}-calculator:before { content: $fa-var-calculator; } +.#{$fa-css-prefix}-paypal:before { content: $fa-var-paypal; } +.#{$fa-css-prefix}-google-wallet:before { content: $fa-var-google-wallet; } +.#{$fa-css-prefix}-cc-visa:before { content: $fa-var-cc-visa; } +.#{$fa-css-prefix}-cc-mastercard:before { content: $fa-var-cc-mastercard; } +.#{$fa-css-prefix}-cc-discover:before { content: $fa-var-cc-discover; } +.#{$fa-css-prefix}-cc-amex:before { content: $fa-var-cc-amex; } +.#{$fa-css-prefix}-cc-paypal:before { content: $fa-var-cc-paypal; } +.#{$fa-css-prefix}-cc-stripe:before { content: $fa-var-cc-stripe; } +.#{$fa-css-prefix}-bell-slash:before { content: $fa-var-bell-slash; } +.#{$fa-css-prefix}-bell-slash-o:before { content: $fa-var-bell-slash-o; } +.#{$fa-css-prefix}-trash:before { content: $fa-var-trash; } +.#{$fa-css-prefix}-copyright:before { content: $fa-var-copyright; } +.#{$fa-css-prefix}-at:before { content: $fa-var-at; } +.#{$fa-css-prefix}-eyedropper:before { content: $fa-var-eyedropper; } +.#{$fa-css-prefix}-paint-brush:before { content: $fa-var-paint-brush; } +.#{$fa-css-prefix}-birthday-cake:before { content: $fa-var-birthday-cake; } +.#{$fa-css-prefix}-area-chart:before { content: $fa-var-area-chart; } +.#{$fa-css-prefix}-pie-chart:before { content: $fa-var-pie-chart; } +.#{$fa-css-prefix}-line-chart:before { content: $fa-var-line-chart; } +.#{$fa-css-prefix}-lastfm:before { content: $fa-var-lastfm; } +.#{$fa-css-prefix}-lastfm-square:before { content: $fa-var-lastfm-square; } +.#{$fa-css-prefix}-toggle-off:before { content: $fa-var-toggle-off; } +.#{$fa-css-prefix}-toggle-on:before { content: $fa-var-toggle-on; } +.#{$fa-css-prefix}-bicycle:before { content: $fa-var-bicycle; } +.#{$fa-css-prefix}-bus:before { content: $fa-var-bus; } +.#{$fa-css-prefix}-ioxhost:before { content: $fa-var-ioxhost; } +.#{$fa-css-prefix}-angellist:before { content: $fa-var-angellist; } +.#{$fa-css-prefix}-cc:before { content: $fa-var-cc; } +.#{$fa-css-prefix}-shekel:before, +.#{$fa-css-prefix}-sheqel:before, +.#{$fa-css-prefix}-ils:before { content: $fa-var-ils; } +.#{$fa-css-prefix}-meanpath:before { content: $fa-var-meanpath; } +.#{$fa-css-prefix}-buysellads:before { content: $fa-var-buysellads; } +.#{$fa-css-prefix}-connectdevelop:before { content: $fa-var-connectdevelop; } +.#{$fa-css-prefix}-dashcube:before { content: $fa-var-dashcube; } +.#{$fa-css-prefix}-forumbee:before { content: $fa-var-forumbee; } +.#{$fa-css-prefix}-leanpub:before { content: $fa-var-leanpub; } +.#{$fa-css-prefix}-sellsy:before { content: $fa-var-sellsy; } +.#{$fa-css-prefix}-shirtsinbulk:before { content: $fa-var-shirtsinbulk; } +.#{$fa-css-prefix}-simplybuilt:before { content: $fa-var-simplybuilt; } +.#{$fa-css-prefix}-skyatlas:before { content: $fa-var-skyatlas; } +.#{$fa-css-prefix}-cart-plus:before { content: $fa-var-cart-plus; } +.#{$fa-css-prefix}-cart-arrow-down:before { content: $fa-var-cart-arrow-down; } +.#{$fa-css-prefix}-diamond:before { content: $fa-var-diamond; } +.#{$fa-css-prefix}-ship:before { content: $fa-var-ship; } +.#{$fa-css-prefix}-user-secret:before { content: $fa-var-user-secret; } +.#{$fa-css-prefix}-motorcycle:before { content: $fa-var-motorcycle; } +.#{$fa-css-prefix}-street-view:before { content: $fa-var-street-view; } +.#{$fa-css-prefix}-heartbeat:before { content: $fa-var-heartbeat; } +.#{$fa-css-prefix}-venus:before { content: $fa-var-venus; } +.#{$fa-css-prefix}-mars:before { content: $fa-var-mars; } +.#{$fa-css-prefix}-mercury:before { content: $fa-var-mercury; } +.#{$fa-css-prefix}-intersex:before, +.#{$fa-css-prefix}-transgender:before { content: $fa-var-transgender; } +.#{$fa-css-prefix}-transgender-alt:before { content: $fa-var-transgender-alt; } +.#{$fa-css-prefix}-venus-double:before { content: $fa-var-venus-double; } +.#{$fa-css-prefix}-mars-double:before { content: $fa-var-mars-double; } +.#{$fa-css-prefix}-venus-mars:before { content: $fa-var-venus-mars; } +.#{$fa-css-prefix}-mars-stroke:before { content: $fa-var-mars-stroke; } +.#{$fa-css-prefix}-mars-stroke-v:before { content: $fa-var-mars-stroke-v; } +.#{$fa-css-prefix}-mars-stroke-h:before { content: $fa-var-mars-stroke-h; } +.#{$fa-css-prefix}-neuter:before { content: $fa-var-neuter; } +.#{$fa-css-prefix}-genderless:before { content: $fa-var-genderless; } +.#{$fa-css-prefix}-facebook-official:before { content: $fa-var-facebook-official; } +.#{$fa-css-prefix}-pinterest-p:before { content: $fa-var-pinterest-p; } +.#{$fa-css-prefix}-whatsapp:before { content: $fa-var-whatsapp; } +.#{$fa-css-prefix}-server:before { content: $fa-var-server; } +.#{$fa-css-prefix}-user-plus:before { content: $fa-var-user-plus; } +.#{$fa-css-prefix}-user-times:before { content: $fa-var-user-times; } +.#{$fa-css-prefix}-hotel:before, +.#{$fa-css-prefix}-bed:before { content: $fa-var-bed; } +.#{$fa-css-prefix}-viacoin:before { content: $fa-var-viacoin; } +.#{$fa-css-prefix}-train:before { content: $fa-var-train; } +.#{$fa-css-prefix}-subway:before { content: $fa-var-subway; } +.#{$fa-css-prefix}-medium:before { content: $fa-var-medium; } +.#{$fa-css-prefix}-yc:before, +.#{$fa-css-prefix}-y-combinator:before { content: $fa-var-y-combinator; } +.#{$fa-css-prefix}-optin-monster:before { content: $fa-var-optin-monster; } +.#{$fa-css-prefix}-opencart:before { content: $fa-var-opencart; } +.#{$fa-css-prefix}-expeditedssl:before { content: $fa-var-expeditedssl; } +.#{$fa-css-prefix}-battery-4:before, +.#{$fa-css-prefix}-battery-full:before { content: $fa-var-battery-full; } +.#{$fa-css-prefix}-battery-3:before, +.#{$fa-css-prefix}-battery-three-quarters:before { content: $fa-var-battery-three-quarters; } +.#{$fa-css-prefix}-battery-2:before, +.#{$fa-css-prefix}-battery-half:before { content: $fa-var-battery-half; } +.#{$fa-css-prefix}-battery-1:before, +.#{$fa-css-prefix}-battery-quarter:before { content: $fa-var-battery-quarter; } +.#{$fa-css-prefix}-battery-0:before, +.#{$fa-css-prefix}-battery-empty:before { content: $fa-var-battery-empty; } +.#{$fa-css-prefix}-mouse-pointer:before { content: $fa-var-mouse-pointer; } +.#{$fa-css-prefix}-i-cursor:before { content: $fa-var-i-cursor; } +.#{$fa-css-prefix}-object-group:before { content: $fa-var-object-group; } +.#{$fa-css-prefix}-object-ungroup:before { content: $fa-var-object-ungroup; } +.#{$fa-css-prefix}-sticky-note:before { content: $fa-var-sticky-note; } +.#{$fa-css-prefix}-sticky-note-o:before { content: $fa-var-sticky-note-o; } +.#{$fa-css-prefix}-cc-jcb:before { content: $fa-var-cc-jcb; } +.#{$fa-css-prefix}-cc-diners-club:before { content: $fa-var-cc-diners-club; } +.#{$fa-css-prefix}-clone:before { content: $fa-var-clone; } +.#{$fa-css-prefix}-balance-scale:before { content: $fa-var-balance-scale; } +.#{$fa-css-prefix}-hourglass-o:before { content: $fa-var-hourglass-o; } +.#{$fa-css-prefix}-hourglass-1:before, +.#{$fa-css-prefix}-hourglass-start:before { content: $fa-var-hourglass-start; } +.#{$fa-css-prefix}-hourglass-2:before, +.#{$fa-css-prefix}-hourglass-half:before { content: $fa-var-hourglass-half; } +.#{$fa-css-prefix}-hourglass-3:before, +.#{$fa-css-prefix}-hourglass-end:before { content: $fa-var-hourglass-end; } +.#{$fa-css-prefix}-hourglass:before { content: $fa-var-hourglass; } +.#{$fa-css-prefix}-hand-grab-o:before, +.#{$fa-css-prefix}-hand-rock-o:before { content: $fa-var-hand-rock-o; } +.#{$fa-css-prefix}-hand-stop-o:before, +.#{$fa-css-prefix}-hand-paper-o:before { content: $fa-var-hand-paper-o; } +.#{$fa-css-prefix}-hand-scissors-o:before { content: $fa-var-hand-scissors-o; } +.#{$fa-css-prefix}-hand-lizard-o:before { content: $fa-var-hand-lizard-o; } +.#{$fa-css-prefix}-hand-spock-o:before { content: $fa-var-hand-spock-o; } +.#{$fa-css-prefix}-hand-pointer-o:before { content: $fa-var-hand-pointer-o; } +.#{$fa-css-prefix}-hand-peace-o:before { content: $fa-var-hand-peace-o; } +.#{$fa-css-prefix}-trademark:before { content: $fa-var-trademark; } +.#{$fa-css-prefix}-registered:before { content: $fa-var-registered; } +.#{$fa-css-prefix}-creative-commons:before { content: $fa-var-creative-commons; } +.#{$fa-css-prefix}-gg:before { content: $fa-var-gg; } +.#{$fa-css-prefix}-gg-circle:before { content: $fa-var-gg-circle; } +.#{$fa-css-prefix}-tripadvisor:before { content: $fa-var-tripadvisor; } +.#{$fa-css-prefix}-odnoklassniki:before { content: $fa-var-odnoklassniki; } +.#{$fa-css-prefix}-odnoklassniki-square:before { content: $fa-var-odnoklassniki-square; } +.#{$fa-css-prefix}-get-pocket:before { content: $fa-var-get-pocket; } +.#{$fa-css-prefix}-wikipedia-w:before { content: $fa-var-wikipedia-w; } +.#{$fa-css-prefix}-safari:before { content: $fa-var-safari; } +.#{$fa-css-prefix}-chrome:before { content: $fa-var-chrome; } +.#{$fa-css-prefix}-firefox:before { content: $fa-var-firefox; } +.#{$fa-css-prefix}-opera:before { content: $fa-var-opera; } +.#{$fa-css-prefix}-internet-explorer:before { content: $fa-var-internet-explorer; } +.#{$fa-css-prefix}-tv:before, +.#{$fa-css-prefix}-television:before { content: $fa-var-television; } +.#{$fa-css-prefix}-contao:before { content: $fa-var-contao; } +.#{$fa-css-prefix}-500px:before { content: $fa-var-500px; } +.#{$fa-css-prefix}-amazon:before { content: $fa-var-amazon; } +.#{$fa-css-prefix}-calendar-plus-o:before { content: $fa-var-calendar-plus-o; } +.#{$fa-css-prefix}-calendar-minus-o:before { content: $fa-var-calendar-minus-o; } +.#{$fa-css-prefix}-calendar-times-o:before { content: $fa-var-calendar-times-o; } +.#{$fa-css-prefix}-calendar-check-o:before { content: $fa-var-calendar-check-o; } +.#{$fa-css-prefix}-industry:before { content: $fa-var-industry; } +.#{$fa-css-prefix}-map-pin:before { content: $fa-var-map-pin; } +.#{$fa-css-prefix}-map-signs:before { content: $fa-var-map-signs; } +.#{$fa-css-prefix}-map-o:before { content: $fa-var-map-o; } +.#{$fa-css-prefix}-map:before { content: $fa-var-map; } +.#{$fa-css-prefix}-commenting:before { content: $fa-var-commenting; } +.#{$fa-css-prefix}-commenting-o:before { content: $fa-var-commenting-o; } +.#{$fa-css-prefix}-houzz:before { content: $fa-var-houzz; } +.#{$fa-css-prefix}-vimeo:before { content: $fa-var-vimeo; } +.#{$fa-css-prefix}-black-tie:before { content: $fa-var-black-tie; } +.#{$fa-css-prefix}-fonticons:before { content: $fa-var-fonticons; } +.#{$fa-css-prefix}-reddit-alien:before { content: $fa-var-reddit-alien; } +.#{$fa-css-prefix}-edge:before { content: $fa-var-edge; } +.#{$fa-css-prefix}-credit-card-alt:before { content: $fa-var-credit-card-alt; } +.#{$fa-css-prefix}-codiepie:before { content: $fa-var-codiepie; } +.#{$fa-css-prefix}-modx:before { content: $fa-var-modx; } +.#{$fa-css-prefix}-fort-awesome:before { content: $fa-var-fort-awesome; } +.#{$fa-css-prefix}-usb:before { content: $fa-var-usb; } +.#{$fa-css-prefix}-product-hunt:before { content: $fa-var-product-hunt; } +.#{$fa-css-prefix}-mixcloud:before { content: $fa-var-mixcloud; } +.#{$fa-css-prefix}-scribd:before { content: $fa-var-scribd; } +.#{$fa-css-prefix}-pause-circle:before { content: $fa-var-pause-circle; } +.#{$fa-css-prefix}-pause-circle-o:before { content: $fa-var-pause-circle-o; } +.#{$fa-css-prefix}-stop-circle:before { content: $fa-var-stop-circle; } +.#{$fa-css-prefix}-stop-circle-o:before { content: $fa-var-stop-circle-o; } +.#{$fa-css-prefix}-shopping-bag:before { content: $fa-var-shopping-bag; } +.#{$fa-css-prefix}-shopping-basket:before { content: $fa-var-shopping-basket; } +.#{$fa-css-prefix}-hashtag:before { content: $fa-var-hashtag; } +.#{$fa-css-prefix}-bluetooth:before { content: $fa-var-bluetooth; } +.#{$fa-css-prefix}-bluetooth-b:before { content: $fa-var-bluetooth-b; } +.#{$fa-css-prefix}-percent:before { content: $fa-var-percent; } +.#{$fa-css-prefix}-gitlab:before { content: $fa-var-gitlab; } +.#{$fa-css-prefix}-wpbeginner:before { content: $fa-var-wpbeginner; } +.#{$fa-css-prefix}-wpforms:before { content: $fa-var-wpforms; } +.#{$fa-css-prefix}-envira:before { content: $fa-var-envira; } +.#{$fa-css-prefix}-universal-access:before { content: $fa-var-universal-access; } +.#{$fa-css-prefix}-wheelchair-alt:before { content: $fa-var-wheelchair-alt; } +.#{$fa-css-prefix}-question-circle-o:before { content: $fa-var-question-circle-o; } +.#{$fa-css-prefix}-blind:before { content: $fa-var-blind; } +.#{$fa-css-prefix}-audio-description:before { content: $fa-var-audio-description; } +.#{$fa-css-prefix}-volume-control-phone:before { content: $fa-var-volume-control-phone; } +.#{$fa-css-prefix}-braille:before { content: $fa-var-braille; } +.#{$fa-css-prefix}-assistive-listening-systems:before { content: $fa-var-assistive-listening-systems; } +.#{$fa-css-prefix}-asl-interpreting:before, +.#{$fa-css-prefix}-american-sign-language-interpreting:before { content: $fa-var-american-sign-language-interpreting; } +.#{$fa-css-prefix}-deafness:before, +.#{$fa-css-prefix}-hard-of-hearing:before, +.#{$fa-css-prefix}-deaf:before { content: $fa-var-deaf; } +.#{$fa-css-prefix}-glide:before { content: $fa-var-glide; } +.#{$fa-css-prefix}-glide-g:before { content: $fa-var-glide-g; } +.#{$fa-css-prefix}-signing:before, +.#{$fa-css-prefix}-sign-language:before { content: $fa-var-sign-language; } +.#{$fa-css-prefix}-low-vision:before { content: $fa-var-low-vision; } +.#{$fa-css-prefix}-viadeo:before { content: $fa-var-viadeo; } +.#{$fa-css-prefix}-viadeo-square:before { content: $fa-var-viadeo-square; } +.#{$fa-css-prefix}-snapchat:before { content: $fa-var-snapchat; } +.#{$fa-css-prefix}-snapchat-ghost:before { content: $fa-var-snapchat-ghost; } +.#{$fa-css-prefix}-snapchat-square:before { content: $fa-var-snapchat-square; } +.#{$fa-css-prefix}-pied-piper:before { content: $fa-var-pied-piper; } +.#{$fa-css-prefix}-first-order:before { content: $fa-var-first-order; } +.#{$fa-css-prefix}-yoast:before { content: $fa-var-yoast; } +.#{$fa-css-prefix}-themeisle:before { content: $fa-var-themeisle; } +.#{$fa-css-prefix}-google-plus-circle:before, +.#{$fa-css-prefix}-google-plus-official:before { content: $fa-var-google-plus-official; } +.#{$fa-css-prefix}-fa:before, +.#{$fa-css-prefix}-font-awesome:before { content: $fa-var-font-awesome; } diff --git a/vraptor/src/main/webapp/vendor/font-awesome/scss/_larger.scss b/vraptor/src/main/webapp/vendor/font-awesome/scss/_larger.scss new file mode 100644 index 0000000000..41e9a8184a --- /dev/null +++ b/vraptor/src/main/webapp/vendor/font-awesome/scss/_larger.scss @@ -0,0 +1,13 @@ +// Icon Sizes +// ------------------------- + +/* makes the font 33% larger relative to the icon container */ +.#{$fa-css-prefix}-lg { + font-size: (4em / 3); + line-height: (3em / 4); + vertical-align: -15%; +} +.#{$fa-css-prefix}-2x { font-size: 2em; } +.#{$fa-css-prefix}-3x { font-size: 3em; } +.#{$fa-css-prefix}-4x { font-size: 4em; } +.#{$fa-css-prefix}-5x { font-size: 5em; } diff --git a/vraptor/src/main/webapp/vendor/font-awesome/scss/_list.scss b/vraptor/src/main/webapp/vendor/font-awesome/scss/_list.scss new file mode 100644 index 0000000000..7d1e4d54d6 --- /dev/null +++ b/vraptor/src/main/webapp/vendor/font-awesome/scss/_list.scss @@ -0,0 +1,19 @@ +// List Icons +// ------------------------- + +.#{$fa-css-prefix}-ul { + padding-left: 0; + margin-left: $fa-li-width; + list-style-type: none; + > li { position: relative; } +} +.#{$fa-css-prefix}-li { + position: absolute; + left: -$fa-li-width; + width: $fa-li-width; + top: (2em / 14); + text-align: center; + &.#{$fa-css-prefix}-lg { + left: -$fa-li-width + (4em / 14); + } +} diff --git a/vraptor/src/main/webapp/vendor/font-awesome/scss/_mixins.scss b/vraptor/src/main/webapp/vendor/font-awesome/scss/_mixins.scss new file mode 100644 index 0000000000..c3bbd5745d --- /dev/null +++ b/vraptor/src/main/webapp/vendor/font-awesome/scss/_mixins.scss @@ -0,0 +1,60 @@ +// Mixins +// -------------------------- + +@mixin fa-icon() { + display: inline-block; + font: normal normal normal #{$fa-font-size-base}/#{$fa-line-height-base} FontAwesome; // shortening font declaration + font-size: inherit; // can't have font-size inherit on line above, so need to override + text-rendering: auto; // optimizelegibility throws things off #1094 + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + +} + +@mixin fa-icon-rotate($degrees, $rotation) { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation})"; + -webkit-transform: rotate($degrees); + -ms-transform: rotate($degrees); + transform: rotate($degrees); +} + +@mixin fa-icon-flip($horiz, $vert, $rotation) { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation}, mirror=1)"; + -webkit-transform: scale($horiz, $vert); + -ms-transform: scale($horiz, $vert); + transform: scale($horiz, $vert); +} + + +// Only display content to screen readers. A la Bootstrap 4. +// +// See: http://a11yproject.com/posts/how-to-hide-content/ + +@mixin sr-only { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + margin: -1px; + overflow: hidden; + clip: rect(0,0,0,0); + border: 0; +} + +// Use in conjunction with .sr-only to only display content when it's focused. +// +// Useful for "Skip to main content" links; see http://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1 +// +// Credit: HTML5 Boilerplate + +@mixin sr-only-focusable { + &:active, + &:focus { + position: static; + width: auto; + height: auto; + margin: 0; + overflow: visible; + clip: auto; + } +} diff --git a/vraptor/src/main/webapp/vendor/font-awesome/scss/_path.scss b/vraptor/src/main/webapp/vendor/font-awesome/scss/_path.scss new file mode 100644 index 0000000000..bb457c23a8 --- /dev/null +++ b/vraptor/src/main/webapp/vendor/font-awesome/scss/_path.scss @@ -0,0 +1,15 @@ +/* FONT PATH + * -------------------------- */ + +@font-face { + font-family: 'FontAwesome'; + src: url('#{$fa-font-path}/fontawesome-webfont.eot?v=#{$fa-version}'); + src: url('#{$fa-font-path}/fontawesome-webfont.eot?#iefix&v=#{$fa-version}') format('embedded-opentype'), + url('#{$fa-font-path}/fontawesome-webfont.woff2?v=#{$fa-version}') format('woff2'), + url('#{$fa-font-path}/fontawesome-webfont.woff?v=#{$fa-version}') format('woff'), + url('#{$fa-font-path}/fontawesome-webfont.ttf?v=#{$fa-version}') format('truetype'), + url('#{$fa-font-path}/fontawesome-webfont.svg?v=#{$fa-version}#fontawesomeregular') format('svg'); +// src: url('#{$fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts + font-weight: normal; + font-style: normal; +} diff --git a/vraptor/src/main/webapp/vendor/font-awesome/scss/_rotated-flipped.scss b/vraptor/src/main/webapp/vendor/font-awesome/scss/_rotated-flipped.scss new file mode 100644 index 0000000000..a3558fd09c --- /dev/null +++ b/vraptor/src/main/webapp/vendor/font-awesome/scss/_rotated-flipped.scss @@ -0,0 +1,20 @@ +// Rotated & Flipped Icons +// ------------------------- + +.#{$fa-css-prefix}-rotate-90 { @include fa-icon-rotate(90deg, 1); } +.#{$fa-css-prefix}-rotate-180 { @include fa-icon-rotate(180deg, 2); } +.#{$fa-css-prefix}-rotate-270 { @include fa-icon-rotate(270deg, 3); } + +.#{$fa-css-prefix}-flip-horizontal { @include fa-icon-flip(-1, 1, 0); } +.#{$fa-css-prefix}-flip-vertical { @include fa-icon-flip(1, -1, 2); } + +// Hook for IE8-9 +// ------------------------- + +:root .#{$fa-css-prefix}-rotate-90, +:root .#{$fa-css-prefix}-rotate-180, +:root .#{$fa-css-prefix}-rotate-270, +:root .#{$fa-css-prefix}-flip-horizontal, +:root .#{$fa-css-prefix}-flip-vertical { + filter: none; +} diff --git a/vraptor/src/main/webapp/vendor/font-awesome/scss/_screen-reader.scss b/vraptor/src/main/webapp/vendor/font-awesome/scss/_screen-reader.scss new file mode 100644 index 0000000000..637426f0da --- /dev/null +++ b/vraptor/src/main/webapp/vendor/font-awesome/scss/_screen-reader.scss @@ -0,0 +1,5 @@ +// Screen Readers +// ------------------------- + +.sr-only { @include sr-only(); } +.sr-only-focusable { @include sr-only-focusable(); } diff --git a/vraptor/src/main/webapp/vendor/font-awesome/scss/_stacked.scss b/vraptor/src/main/webapp/vendor/font-awesome/scss/_stacked.scss new file mode 100644 index 0000000000..aef7403660 --- /dev/null +++ b/vraptor/src/main/webapp/vendor/font-awesome/scss/_stacked.scss @@ -0,0 +1,20 @@ +// Stacked Icons +// ------------------------- + +.#{$fa-css-prefix}-stack { + position: relative; + display: inline-block; + width: 2em; + height: 2em; + line-height: 2em; + vertical-align: middle; +} +.#{$fa-css-prefix}-stack-1x, .#{$fa-css-prefix}-stack-2x { + position: absolute; + left: 0; + width: 100%; + text-align: center; +} +.#{$fa-css-prefix}-stack-1x { line-height: inherit; } +.#{$fa-css-prefix}-stack-2x { font-size: 2em; } +.#{$fa-css-prefix}-inverse { color: $fa-inverse; } diff --git a/vraptor/src/main/webapp/vendor/font-awesome/scss/_variables.scss b/vraptor/src/main/webapp/vendor/font-awesome/scss/_variables.scss new file mode 100644 index 0000000000..a5a89ef97b --- /dev/null +++ b/vraptor/src/main/webapp/vendor/font-awesome/scss/_variables.scss @@ -0,0 +1,744 @@ +// Variables +// -------------------------- + +$fa-font-path: "../fonts" !default; +$fa-font-size-base: 14px !default; +$fa-line-height-base: 1 !default; +//$fa-font-path: "//netdna.bootstrapcdn.com/font-awesome/4.6.3/fonts" !default; // for referencing Bootstrap CDN font files directly +$fa-css-prefix: fa !default; +$fa-version: "4.6.3" !default; +$fa-border-color: #eee !default; +$fa-inverse: #fff !default; +$fa-li-width: (30em / 14) !default; + +$fa-var-500px: "\f26e"; +$fa-var-adjust: "\f042"; +$fa-var-adn: "\f170"; +$fa-var-align-center: "\f037"; +$fa-var-align-justify: "\f039"; +$fa-var-align-left: "\f036"; +$fa-var-align-right: "\f038"; +$fa-var-amazon: "\f270"; +$fa-var-ambulance: "\f0f9"; +$fa-var-american-sign-language-interpreting: "\f2a3"; +$fa-var-anchor: "\f13d"; +$fa-var-android: "\f17b"; +$fa-var-angellist: "\f209"; +$fa-var-angle-double-down: "\f103"; +$fa-var-angle-double-left: "\f100"; +$fa-var-angle-double-right: "\f101"; +$fa-var-angle-double-up: "\f102"; +$fa-var-angle-down: "\f107"; +$fa-var-angle-left: "\f104"; +$fa-var-angle-right: "\f105"; +$fa-var-angle-up: "\f106"; +$fa-var-apple: "\f179"; +$fa-var-archive: "\f187"; +$fa-var-area-chart: "\f1fe"; +$fa-var-arrow-circle-down: "\f0ab"; +$fa-var-arrow-circle-left: "\f0a8"; +$fa-var-arrow-circle-o-down: "\f01a"; +$fa-var-arrow-circle-o-left: "\f190"; +$fa-var-arrow-circle-o-right: "\f18e"; +$fa-var-arrow-circle-o-up: "\f01b"; +$fa-var-arrow-circle-right: "\f0a9"; +$fa-var-arrow-circle-up: "\f0aa"; +$fa-var-arrow-down: "\f063"; +$fa-var-arrow-left: "\f060"; +$fa-var-arrow-right: "\f061"; +$fa-var-arrow-up: "\f062"; +$fa-var-arrows: "\f047"; +$fa-var-arrows-alt: "\f0b2"; +$fa-var-arrows-h: "\f07e"; +$fa-var-arrows-v: "\f07d"; +$fa-var-asl-interpreting: "\f2a3"; +$fa-var-assistive-listening-systems: "\f2a2"; +$fa-var-asterisk: "\f069"; +$fa-var-at: "\f1fa"; +$fa-var-audio-description: "\f29e"; +$fa-var-automobile: "\f1b9"; +$fa-var-backward: "\f04a"; +$fa-var-balance-scale: "\f24e"; +$fa-var-ban: "\f05e"; +$fa-var-bank: "\f19c"; +$fa-var-bar-chart: "\f080"; +$fa-var-bar-chart-o: "\f080"; +$fa-var-barcode: "\f02a"; +$fa-var-bars: "\f0c9"; +$fa-var-battery-0: "\f244"; +$fa-var-battery-1: "\f243"; +$fa-var-battery-2: "\f242"; +$fa-var-battery-3: "\f241"; +$fa-var-battery-4: "\f240"; +$fa-var-battery-empty: "\f244"; +$fa-var-battery-full: "\f240"; +$fa-var-battery-half: "\f242"; +$fa-var-battery-quarter: "\f243"; +$fa-var-battery-three-quarters: "\f241"; +$fa-var-bed: "\f236"; +$fa-var-beer: "\f0fc"; +$fa-var-behance: "\f1b4"; +$fa-var-behance-square: "\f1b5"; +$fa-var-bell: "\f0f3"; +$fa-var-bell-o: "\f0a2"; +$fa-var-bell-slash: "\f1f6"; +$fa-var-bell-slash-o: "\f1f7"; +$fa-var-bicycle: "\f206"; +$fa-var-binoculars: "\f1e5"; +$fa-var-birthday-cake: "\f1fd"; +$fa-var-bitbucket: "\f171"; +$fa-var-bitbucket-square: "\f172"; +$fa-var-bitcoin: "\f15a"; +$fa-var-black-tie: "\f27e"; +$fa-var-blind: "\f29d"; +$fa-var-bluetooth: "\f293"; +$fa-var-bluetooth-b: "\f294"; +$fa-var-bold: "\f032"; +$fa-var-bolt: "\f0e7"; +$fa-var-bomb: "\f1e2"; +$fa-var-book: "\f02d"; +$fa-var-bookmark: "\f02e"; +$fa-var-bookmark-o: "\f097"; +$fa-var-braille: "\f2a1"; +$fa-var-briefcase: "\f0b1"; +$fa-var-btc: "\f15a"; +$fa-var-bug: "\f188"; +$fa-var-building: "\f1ad"; +$fa-var-building-o: "\f0f7"; +$fa-var-bullhorn: "\f0a1"; +$fa-var-bullseye: "\f140"; +$fa-var-bus: "\f207"; +$fa-var-buysellads: "\f20d"; +$fa-var-cab: "\f1ba"; +$fa-var-calculator: "\f1ec"; +$fa-var-calendar: "\f073"; +$fa-var-calendar-check-o: "\f274"; +$fa-var-calendar-minus-o: "\f272"; +$fa-var-calendar-o: "\f133"; +$fa-var-calendar-plus-o: "\f271"; +$fa-var-calendar-times-o: "\f273"; +$fa-var-camera: "\f030"; +$fa-var-camera-retro: "\f083"; +$fa-var-car: "\f1b9"; +$fa-var-caret-down: "\f0d7"; +$fa-var-caret-left: "\f0d9"; +$fa-var-caret-right: "\f0da"; +$fa-var-caret-square-o-down: "\f150"; +$fa-var-caret-square-o-left: "\f191"; +$fa-var-caret-square-o-right: "\f152"; +$fa-var-caret-square-o-up: "\f151"; +$fa-var-caret-up: "\f0d8"; +$fa-var-cart-arrow-down: "\f218"; +$fa-var-cart-plus: "\f217"; +$fa-var-cc: "\f20a"; +$fa-var-cc-amex: "\f1f3"; +$fa-var-cc-diners-club: "\f24c"; +$fa-var-cc-discover: "\f1f2"; +$fa-var-cc-jcb: "\f24b"; +$fa-var-cc-mastercard: "\f1f1"; +$fa-var-cc-paypal: "\f1f4"; +$fa-var-cc-stripe: "\f1f5"; +$fa-var-cc-visa: "\f1f0"; +$fa-var-certificate: "\f0a3"; +$fa-var-chain: "\f0c1"; +$fa-var-chain-broken: "\f127"; +$fa-var-check: "\f00c"; +$fa-var-check-circle: "\f058"; +$fa-var-check-circle-o: "\f05d"; +$fa-var-check-square: "\f14a"; +$fa-var-check-square-o: "\f046"; +$fa-var-chevron-circle-down: "\f13a"; +$fa-var-chevron-circle-left: "\f137"; +$fa-var-chevron-circle-right: "\f138"; +$fa-var-chevron-circle-up: "\f139"; +$fa-var-chevron-down: "\f078"; +$fa-var-chevron-left: "\f053"; +$fa-var-chevron-right: "\f054"; +$fa-var-chevron-up: "\f077"; +$fa-var-child: "\f1ae"; +$fa-var-chrome: "\f268"; +$fa-var-circle: "\f111"; +$fa-var-circle-o: "\f10c"; +$fa-var-circle-o-notch: "\f1ce"; +$fa-var-circle-thin: "\f1db"; +$fa-var-clipboard: "\f0ea"; +$fa-var-clock-o: "\f017"; +$fa-var-clone: "\f24d"; +$fa-var-close: "\f00d"; +$fa-var-cloud: "\f0c2"; +$fa-var-cloud-download: "\f0ed"; +$fa-var-cloud-upload: "\f0ee"; +$fa-var-cny: "\f157"; +$fa-var-code: "\f121"; +$fa-var-code-fork: "\f126"; +$fa-var-codepen: "\f1cb"; +$fa-var-codiepie: "\f284"; +$fa-var-coffee: "\f0f4"; +$fa-var-cog: "\f013"; +$fa-var-cogs: "\f085"; +$fa-var-columns: "\f0db"; +$fa-var-comment: "\f075"; +$fa-var-comment-o: "\f0e5"; +$fa-var-commenting: "\f27a"; +$fa-var-commenting-o: "\f27b"; +$fa-var-comments: "\f086"; +$fa-var-comments-o: "\f0e6"; +$fa-var-compass: "\f14e"; +$fa-var-compress: "\f066"; +$fa-var-connectdevelop: "\f20e"; +$fa-var-contao: "\f26d"; +$fa-var-copy: "\f0c5"; +$fa-var-copyright: "\f1f9"; +$fa-var-creative-commons: "\f25e"; +$fa-var-credit-card: "\f09d"; +$fa-var-credit-card-alt: "\f283"; +$fa-var-crop: "\f125"; +$fa-var-crosshairs: "\f05b"; +$fa-var-css3: "\f13c"; +$fa-var-cube: "\f1b2"; +$fa-var-cubes: "\f1b3"; +$fa-var-cut: "\f0c4"; +$fa-var-cutlery: "\f0f5"; +$fa-var-dashboard: "\f0e4"; +$fa-var-dashcube: "\f210"; +$fa-var-database: "\f1c0"; +$fa-var-deaf: "\f2a4"; +$fa-var-deafness: "\f2a4"; +$fa-var-dedent: "\f03b"; +$fa-var-delicious: "\f1a5"; +$fa-var-desktop: "\f108"; +$fa-var-deviantart: "\f1bd"; +$fa-var-diamond: "\f219"; +$fa-var-digg: "\f1a6"; +$fa-var-dollar: "\f155"; +$fa-var-dot-circle-o: "\f192"; +$fa-var-download: "\f019"; +$fa-var-dribbble: "\f17d"; +$fa-var-dropbox: "\f16b"; +$fa-var-drupal: "\f1a9"; +$fa-var-edge: "\f282"; +$fa-var-edit: "\f044"; +$fa-var-eject: "\f052"; +$fa-var-ellipsis-h: "\f141"; +$fa-var-ellipsis-v: "\f142"; +$fa-var-empire: "\f1d1"; +$fa-var-envelope: "\f0e0"; +$fa-var-envelope-o: "\f003"; +$fa-var-envelope-square: "\f199"; +$fa-var-envira: "\f299"; +$fa-var-eraser: "\f12d"; +$fa-var-eur: "\f153"; +$fa-var-euro: "\f153"; +$fa-var-exchange: "\f0ec"; +$fa-var-exclamation: "\f12a"; +$fa-var-exclamation-circle: "\f06a"; +$fa-var-exclamation-triangle: "\f071"; +$fa-var-expand: "\f065"; +$fa-var-expeditedssl: "\f23e"; +$fa-var-external-link: "\f08e"; +$fa-var-external-link-square: "\f14c"; +$fa-var-eye: "\f06e"; +$fa-var-eye-slash: "\f070"; +$fa-var-eyedropper: "\f1fb"; +$fa-var-fa: "\f2b4"; +$fa-var-facebook: "\f09a"; +$fa-var-facebook-f: "\f09a"; +$fa-var-facebook-official: "\f230"; +$fa-var-facebook-square: "\f082"; +$fa-var-fast-backward: "\f049"; +$fa-var-fast-forward: "\f050"; +$fa-var-fax: "\f1ac"; +$fa-var-feed: "\f09e"; +$fa-var-female: "\f182"; +$fa-var-fighter-jet: "\f0fb"; +$fa-var-file: "\f15b"; +$fa-var-file-archive-o: "\f1c6"; +$fa-var-file-audio-o: "\f1c7"; +$fa-var-file-code-o: "\f1c9"; +$fa-var-file-excel-o: "\f1c3"; +$fa-var-file-image-o: "\f1c5"; +$fa-var-file-movie-o: "\f1c8"; +$fa-var-file-o: "\f016"; +$fa-var-file-pdf-o: "\f1c1"; +$fa-var-file-photo-o: "\f1c5"; +$fa-var-file-picture-o: "\f1c5"; +$fa-var-file-powerpoint-o: "\f1c4"; +$fa-var-file-sound-o: "\f1c7"; +$fa-var-file-text: "\f15c"; +$fa-var-file-text-o: "\f0f6"; +$fa-var-file-video-o: "\f1c8"; +$fa-var-file-word-o: "\f1c2"; +$fa-var-file-zip-o: "\f1c6"; +$fa-var-files-o: "\f0c5"; +$fa-var-film: "\f008"; +$fa-var-filter: "\f0b0"; +$fa-var-fire: "\f06d"; +$fa-var-fire-extinguisher: "\f134"; +$fa-var-firefox: "\f269"; +$fa-var-first-order: "\f2b0"; +$fa-var-flag: "\f024"; +$fa-var-flag-checkered: "\f11e"; +$fa-var-flag-o: "\f11d"; +$fa-var-flash: "\f0e7"; +$fa-var-flask: "\f0c3"; +$fa-var-flickr: "\f16e"; +$fa-var-floppy-o: "\f0c7"; +$fa-var-folder: "\f07b"; +$fa-var-folder-o: "\f114"; +$fa-var-folder-open: "\f07c"; +$fa-var-folder-open-o: "\f115"; +$fa-var-font: "\f031"; +$fa-var-font-awesome: "\f2b4"; +$fa-var-fonticons: "\f280"; +$fa-var-fort-awesome: "\f286"; +$fa-var-forumbee: "\f211"; +$fa-var-forward: "\f04e"; +$fa-var-foursquare: "\f180"; +$fa-var-frown-o: "\f119"; +$fa-var-futbol-o: "\f1e3"; +$fa-var-gamepad: "\f11b"; +$fa-var-gavel: "\f0e3"; +$fa-var-gbp: "\f154"; +$fa-var-ge: "\f1d1"; +$fa-var-gear: "\f013"; +$fa-var-gears: "\f085"; +$fa-var-genderless: "\f22d"; +$fa-var-get-pocket: "\f265"; +$fa-var-gg: "\f260"; +$fa-var-gg-circle: "\f261"; +$fa-var-gift: "\f06b"; +$fa-var-git: "\f1d3"; +$fa-var-git-square: "\f1d2"; +$fa-var-github: "\f09b"; +$fa-var-github-alt: "\f113"; +$fa-var-github-square: "\f092"; +$fa-var-gitlab: "\f296"; +$fa-var-gittip: "\f184"; +$fa-var-glass: "\f000"; +$fa-var-glide: "\f2a5"; +$fa-var-glide-g: "\f2a6"; +$fa-var-globe: "\f0ac"; +$fa-var-google: "\f1a0"; +$fa-var-google-plus: "\f0d5"; +$fa-var-google-plus-circle: "\f2b3"; +$fa-var-google-plus-official: "\f2b3"; +$fa-var-google-plus-square: "\f0d4"; +$fa-var-google-wallet: "\f1ee"; +$fa-var-graduation-cap: "\f19d"; +$fa-var-gratipay: "\f184"; +$fa-var-group: "\f0c0"; +$fa-var-h-square: "\f0fd"; +$fa-var-hacker-news: "\f1d4"; +$fa-var-hand-grab-o: "\f255"; +$fa-var-hand-lizard-o: "\f258"; +$fa-var-hand-o-down: "\f0a7"; +$fa-var-hand-o-left: "\f0a5"; +$fa-var-hand-o-right: "\f0a4"; +$fa-var-hand-o-up: "\f0a6"; +$fa-var-hand-paper-o: "\f256"; +$fa-var-hand-peace-o: "\f25b"; +$fa-var-hand-pointer-o: "\f25a"; +$fa-var-hand-rock-o: "\f255"; +$fa-var-hand-scissors-o: "\f257"; +$fa-var-hand-spock-o: "\f259"; +$fa-var-hand-stop-o: "\f256"; +$fa-var-hard-of-hearing: "\f2a4"; +$fa-var-hashtag: "\f292"; +$fa-var-hdd-o: "\f0a0"; +$fa-var-header: "\f1dc"; +$fa-var-headphones: "\f025"; +$fa-var-heart: "\f004"; +$fa-var-heart-o: "\f08a"; +$fa-var-heartbeat: "\f21e"; +$fa-var-history: "\f1da"; +$fa-var-home: "\f015"; +$fa-var-hospital-o: "\f0f8"; +$fa-var-hotel: "\f236"; +$fa-var-hourglass: "\f254"; +$fa-var-hourglass-1: "\f251"; +$fa-var-hourglass-2: "\f252"; +$fa-var-hourglass-3: "\f253"; +$fa-var-hourglass-end: "\f253"; +$fa-var-hourglass-half: "\f252"; +$fa-var-hourglass-o: "\f250"; +$fa-var-hourglass-start: "\f251"; +$fa-var-houzz: "\f27c"; +$fa-var-html5: "\f13b"; +$fa-var-i-cursor: "\f246"; +$fa-var-ils: "\f20b"; +$fa-var-image: "\f03e"; +$fa-var-inbox: "\f01c"; +$fa-var-indent: "\f03c"; +$fa-var-industry: "\f275"; +$fa-var-info: "\f129"; +$fa-var-info-circle: "\f05a"; +$fa-var-inr: "\f156"; +$fa-var-instagram: "\f16d"; +$fa-var-institution: "\f19c"; +$fa-var-internet-explorer: "\f26b"; +$fa-var-intersex: "\f224"; +$fa-var-ioxhost: "\f208"; +$fa-var-italic: "\f033"; +$fa-var-joomla: "\f1aa"; +$fa-var-jpy: "\f157"; +$fa-var-jsfiddle: "\f1cc"; +$fa-var-key: "\f084"; +$fa-var-keyboard-o: "\f11c"; +$fa-var-krw: "\f159"; +$fa-var-language: "\f1ab"; +$fa-var-laptop: "\f109"; +$fa-var-lastfm: "\f202"; +$fa-var-lastfm-square: "\f203"; +$fa-var-leaf: "\f06c"; +$fa-var-leanpub: "\f212"; +$fa-var-legal: "\f0e3"; +$fa-var-lemon-o: "\f094"; +$fa-var-level-down: "\f149"; +$fa-var-level-up: "\f148"; +$fa-var-life-bouy: "\f1cd"; +$fa-var-life-buoy: "\f1cd"; +$fa-var-life-ring: "\f1cd"; +$fa-var-life-saver: "\f1cd"; +$fa-var-lightbulb-o: "\f0eb"; +$fa-var-line-chart: "\f201"; +$fa-var-link: "\f0c1"; +$fa-var-linkedin: "\f0e1"; +$fa-var-linkedin-square: "\f08c"; +$fa-var-linux: "\f17c"; +$fa-var-list: "\f03a"; +$fa-var-list-alt: "\f022"; +$fa-var-list-ol: "\f0cb"; +$fa-var-list-ul: "\f0ca"; +$fa-var-location-arrow: "\f124"; +$fa-var-lock: "\f023"; +$fa-var-long-arrow-down: "\f175"; +$fa-var-long-arrow-left: "\f177"; +$fa-var-long-arrow-right: "\f178"; +$fa-var-long-arrow-up: "\f176"; +$fa-var-low-vision: "\f2a8"; +$fa-var-magic: "\f0d0"; +$fa-var-magnet: "\f076"; +$fa-var-mail-forward: "\f064"; +$fa-var-mail-reply: "\f112"; +$fa-var-mail-reply-all: "\f122"; +$fa-var-male: "\f183"; +$fa-var-map: "\f279"; +$fa-var-map-marker: "\f041"; +$fa-var-map-o: "\f278"; +$fa-var-map-pin: "\f276"; +$fa-var-map-signs: "\f277"; +$fa-var-mars: "\f222"; +$fa-var-mars-double: "\f227"; +$fa-var-mars-stroke: "\f229"; +$fa-var-mars-stroke-h: "\f22b"; +$fa-var-mars-stroke-v: "\f22a"; +$fa-var-maxcdn: "\f136"; +$fa-var-meanpath: "\f20c"; +$fa-var-medium: "\f23a"; +$fa-var-medkit: "\f0fa"; +$fa-var-meh-o: "\f11a"; +$fa-var-mercury: "\f223"; +$fa-var-microphone: "\f130"; +$fa-var-microphone-slash: "\f131"; +$fa-var-minus: "\f068"; +$fa-var-minus-circle: "\f056"; +$fa-var-minus-square: "\f146"; +$fa-var-minus-square-o: "\f147"; +$fa-var-mixcloud: "\f289"; +$fa-var-mobile: "\f10b"; +$fa-var-mobile-phone: "\f10b"; +$fa-var-modx: "\f285"; +$fa-var-money: "\f0d6"; +$fa-var-moon-o: "\f186"; +$fa-var-mortar-board: "\f19d"; +$fa-var-motorcycle: "\f21c"; +$fa-var-mouse-pointer: "\f245"; +$fa-var-music: "\f001"; +$fa-var-navicon: "\f0c9"; +$fa-var-neuter: "\f22c"; +$fa-var-newspaper-o: "\f1ea"; +$fa-var-object-group: "\f247"; +$fa-var-object-ungroup: "\f248"; +$fa-var-odnoklassniki: "\f263"; +$fa-var-odnoklassniki-square: "\f264"; +$fa-var-opencart: "\f23d"; +$fa-var-openid: "\f19b"; +$fa-var-opera: "\f26a"; +$fa-var-optin-monster: "\f23c"; +$fa-var-outdent: "\f03b"; +$fa-var-pagelines: "\f18c"; +$fa-var-paint-brush: "\f1fc"; +$fa-var-paper-plane: "\f1d8"; +$fa-var-paper-plane-o: "\f1d9"; +$fa-var-paperclip: "\f0c6"; +$fa-var-paragraph: "\f1dd"; +$fa-var-paste: "\f0ea"; +$fa-var-pause: "\f04c"; +$fa-var-pause-circle: "\f28b"; +$fa-var-pause-circle-o: "\f28c"; +$fa-var-paw: "\f1b0"; +$fa-var-paypal: "\f1ed"; +$fa-var-pencil: "\f040"; +$fa-var-pencil-square: "\f14b"; +$fa-var-pencil-square-o: "\f044"; +$fa-var-percent: "\f295"; +$fa-var-phone: "\f095"; +$fa-var-phone-square: "\f098"; +$fa-var-photo: "\f03e"; +$fa-var-picture-o: "\f03e"; +$fa-var-pie-chart: "\f200"; +$fa-var-pied-piper: "\f2ae"; +$fa-var-pied-piper-alt: "\f1a8"; +$fa-var-pied-piper-pp: "\f1a7"; +$fa-var-pinterest: "\f0d2"; +$fa-var-pinterest-p: "\f231"; +$fa-var-pinterest-square: "\f0d3"; +$fa-var-plane: "\f072"; +$fa-var-play: "\f04b"; +$fa-var-play-circle: "\f144"; +$fa-var-play-circle-o: "\f01d"; +$fa-var-plug: "\f1e6"; +$fa-var-plus: "\f067"; +$fa-var-plus-circle: "\f055"; +$fa-var-plus-square: "\f0fe"; +$fa-var-plus-square-o: "\f196"; +$fa-var-power-off: "\f011"; +$fa-var-print: "\f02f"; +$fa-var-product-hunt: "\f288"; +$fa-var-puzzle-piece: "\f12e"; +$fa-var-qq: "\f1d6"; +$fa-var-qrcode: "\f029"; +$fa-var-question: "\f128"; +$fa-var-question-circle: "\f059"; +$fa-var-question-circle-o: "\f29c"; +$fa-var-quote-left: "\f10d"; +$fa-var-quote-right: "\f10e"; +$fa-var-ra: "\f1d0"; +$fa-var-random: "\f074"; +$fa-var-rebel: "\f1d0"; +$fa-var-recycle: "\f1b8"; +$fa-var-reddit: "\f1a1"; +$fa-var-reddit-alien: "\f281"; +$fa-var-reddit-square: "\f1a2"; +$fa-var-refresh: "\f021"; +$fa-var-registered: "\f25d"; +$fa-var-remove: "\f00d"; +$fa-var-renren: "\f18b"; +$fa-var-reorder: "\f0c9"; +$fa-var-repeat: "\f01e"; +$fa-var-reply: "\f112"; +$fa-var-reply-all: "\f122"; +$fa-var-resistance: "\f1d0"; +$fa-var-retweet: "\f079"; +$fa-var-rmb: "\f157"; +$fa-var-road: "\f018"; +$fa-var-rocket: "\f135"; +$fa-var-rotate-left: "\f0e2"; +$fa-var-rotate-right: "\f01e"; +$fa-var-rouble: "\f158"; +$fa-var-rss: "\f09e"; +$fa-var-rss-square: "\f143"; +$fa-var-rub: "\f158"; +$fa-var-ruble: "\f158"; +$fa-var-rupee: "\f156"; +$fa-var-safari: "\f267"; +$fa-var-save: "\f0c7"; +$fa-var-scissors: "\f0c4"; +$fa-var-scribd: "\f28a"; +$fa-var-search: "\f002"; +$fa-var-search-minus: "\f010"; +$fa-var-search-plus: "\f00e"; +$fa-var-sellsy: "\f213"; +$fa-var-send: "\f1d8"; +$fa-var-send-o: "\f1d9"; +$fa-var-server: "\f233"; +$fa-var-share: "\f064"; +$fa-var-share-alt: "\f1e0"; +$fa-var-share-alt-square: "\f1e1"; +$fa-var-share-square: "\f14d"; +$fa-var-share-square-o: "\f045"; +$fa-var-shekel: "\f20b"; +$fa-var-sheqel: "\f20b"; +$fa-var-shield: "\f132"; +$fa-var-ship: "\f21a"; +$fa-var-shirtsinbulk: "\f214"; +$fa-var-shopping-bag: "\f290"; +$fa-var-shopping-basket: "\f291"; +$fa-var-shopping-cart: "\f07a"; +$fa-var-sign-in: "\f090"; +$fa-var-sign-language: "\f2a7"; +$fa-var-sign-out: "\f08b"; +$fa-var-signal: "\f012"; +$fa-var-signing: "\f2a7"; +$fa-var-simplybuilt: "\f215"; +$fa-var-sitemap: "\f0e8"; +$fa-var-skyatlas: "\f216"; +$fa-var-skype: "\f17e"; +$fa-var-slack: "\f198"; +$fa-var-sliders: "\f1de"; +$fa-var-slideshare: "\f1e7"; +$fa-var-smile-o: "\f118"; +$fa-var-snapchat: "\f2ab"; +$fa-var-snapchat-ghost: "\f2ac"; +$fa-var-snapchat-square: "\f2ad"; +$fa-var-soccer-ball-o: "\f1e3"; +$fa-var-sort: "\f0dc"; +$fa-var-sort-alpha-asc: "\f15d"; +$fa-var-sort-alpha-desc: "\f15e"; +$fa-var-sort-amount-asc: "\f160"; +$fa-var-sort-amount-desc: "\f161"; +$fa-var-sort-asc: "\f0de"; +$fa-var-sort-desc: "\f0dd"; +$fa-var-sort-down: "\f0dd"; +$fa-var-sort-numeric-asc: "\f162"; +$fa-var-sort-numeric-desc: "\f163"; +$fa-var-sort-up: "\f0de"; +$fa-var-soundcloud: "\f1be"; +$fa-var-space-shuttle: "\f197"; +$fa-var-spinner: "\f110"; +$fa-var-spoon: "\f1b1"; +$fa-var-spotify: "\f1bc"; +$fa-var-square: "\f0c8"; +$fa-var-square-o: "\f096"; +$fa-var-stack-exchange: "\f18d"; +$fa-var-stack-overflow: "\f16c"; +$fa-var-star: "\f005"; +$fa-var-star-half: "\f089"; +$fa-var-star-half-empty: "\f123"; +$fa-var-star-half-full: "\f123"; +$fa-var-star-half-o: "\f123"; +$fa-var-star-o: "\f006"; +$fa-var-steam: "\f1b6"; +$fa-var-steam-square: "\f1b7"; +$fa-var-step-backward: "\f048"; +$fa-var-step-forward: "\f051"; +$fa-var-stethoscope: "\f0f1"; +$fa-var-sticky-note: "\f249"; +$fa-var-sticky-note-o: "\f24a"; +$fa-var-stop: "\f04d"; +$fa-var-stop-circle: "\f28d"; +$fa-var-stop-circle-o: "\f28e"; +$fa-var-street-view: "\f21d"; +$fa-var-strikethrough: "\f0cc"; +$fa-var-stumbleupon: "\f1a4"; +$fa-var-stumbleupon-circle: "\f1a3"; +$fa-var-subscript: "\f12c"; +$fa-var-subway: "\f239"; +$fa-var-suitcase: "\f0f2"; +$fa-var-sun-o: "\f185"; +$fa-var-superscript: "\f12b"; +$fa-var-support: "\f1cd"; +$fa-var-table: "\f0ce"; +$fa-var-tablet: "\f10a"; +$fa-var-tachometer: "\f0e4"; +$fa-var-tag: "\f02b"; +$fa-var-tags: "\f02c"; +$fa-var-tasks: "\f0ae"; +$fa-var-taxi: "\f1ba"; +$fa-var-television: "\f26c"; +$fa-var-tencent-weibo: "\f1d5"; +$fa-var-terminal: "\f120"; +$fa-var-text-height: "\f034"; +$fa-var-text-width: "\f035"; +$fa-var-th: "\f00a"; +$fa-var-th-large: "\f009"; +$fa-var-th-list: "\f00b"; +$fa-var-themeisle: "\f2b2"; +$fa-var-thumb-tack: "\f08d"; +$fa-var-thumbs-down: "\f165"; +$fa-var-thumbs-o-down: "\f088"; +$fa-var-thumbs-o-up: "\f087"; +$fa-var-thumbs-up: "\f164"; +$fa-var-ticket: "\f145"; +$fa-var-times: "\f00d"; +$fa-var-times-circle: "\f057"; +$fa-var-times-circle-o: "\f05c"; +$fa-var-tint: "\f043"; +$fa-var-toggle-down: "\f150"; +$fa-var-toggle-left: "\f191"; +$fa-var-toggle-off: "\f204"; +$fa-var-toggle-on: "\f205"; +$fa-var-toggle-right: "\f152"; +$fa-var-toggle-up: "\f151"; +$fa-var-trademark: "\f25c"; +$fa-var-train: "\f238"; +$fa-var-transgender: "\f224"; +$fa-var-transgender-alt: "\f225"; +$fa-var-trash: "\f1f8"; +$fa-var-trash-o: "\f014"; +$fa-var-tree: "\f1bb"; +$fa-var-trello: "\f181"; +$fa-var-tripadvisor: "\f262"; +$fa-var-trophy: "\f091"; +$fa-var-truck: "\f0d1"; +$fa-var-try: "\f195"; +$fa-var-tty: "\f1e4"; +$fa-var-tumblr: "\f173"; +$fa-var-tumblr-square: "\f174"; +$fa-var-turkish-lira: "\f195"; +$fa-var-tv: "\f26c"; +$fa-var-twitch: "\f1e8"; +$fa-var-twitter: "\f099"; +$fa-var-twitter-square: "\f081"; +$fa-var-umbrella: "\f0e9"; +$fa-var-underline: "\f0cd"; +$fa-var-undo: "\f0e2"; +$fa-var-universal-access: "\f29a"; +$fa-var-university: "\f19c"; +$fa-var-unlink: "\f127"; +$fa-var-unlock: "\f09c"; +$fa-var-unlock-alt: "\f13e"; +$fa-var-unsorted: "\f0dc"; +$fa-var-upload: "\f093"; +$fa-var-usb: "\f287"; +$fa-var-usd: "\f155"; +$fa-var-user: "\f007"; +$fa-var-user-md: "\f0f0"; +$fa-var-user-plus: "\f234"; +$fa-var-user-secret: "\f21b"; +$fa-var-user-times: "\f235"; +$fa-var-users: "\f0c0"; +$fa-var-venus: "\f221"; +$fa-var-venus-double: "\f226"; +$fa-var-venus-mars: "\f228"; +$fa-var-viacoin: "\f237"; +$fa-var-viadeo: "\f2a9"; +$fa-var-viadeo-square: "\f2aa"; +$fa-var-video-camera: "\f03d"; +$fa-var-vimeo: "\f27d"; +$fa-var-vimeo-square: "\f194"; +$fa-var-vine: "\f1ca"; +$fa-var-vk: "\f189"; +$fa-var-volume-control-phone: "\f2a0"; +$fa-var-volume-down: "\f027"; +$fa-var-volume-off: "\f026"; +$fa-var-volume-up: "\f028"; +$fa-var-warning: "\f071"; +$fa-var-wechat: "\f1d7"; +$fa-var-weibo: "\f18a"; +$fa-var-weixin: "\f1d7"; +$fa-var-whatsapp: "\f232"; +$fa-var-wheelchair: "\f193"; +$fa-var-wheelchair-alt: "\f29b"; +$fa-var-wifi: "\f1eb"; +$fa-var-wikipedia-w: "\f266"; +$fa-var-windows: "\f17a"; +$fa-var-won: "\f159"; +$fa-var-wordpress: "\f19a"; +$fa-var-wpbeginner: "\f297"; +$fa-var-wpforms: "\f298"; +$fa-var-wrench: "\f0ad"; +$fa-var-xing: "\f168"; +$fa-var-xing-square: "\f169"; +$fa-var-y-combinator: "\f23b"; +$fa-var-y-combinator-square: "\f1d4"; +$fa-var-yahoo: "\f19e"; +$fa-var-yc: "\f23b"; +$fa-var-yc-square: "\f1d4"; +$fa-var-yelp: "\f1e9"; +$fa-var-yen: "\f157"; +$fa-var-yoast: "\f2b1"; +$fa-var-youtube: "\f167"; +$fa-var-youtube-play: "\f16a"; +$fa-var-youtube-square: "\f166"; + diff --git a/vraptor/src/main/webapp/vendor/font-awesome/scss/font-awesome.scss b/vraptor/src/main/webapp/vendor/font-awesome/scss/font-awesome.scss new file mode 100644 index 0000000000..2308b14ca7 --- /dev/null +++ b/vraptor/src/main/webapp/vendor/font-awesome/scss/font-awesome.scss @@ -0,0 +1,18 @@ +/*! + * Font Awesome 4.6.3 by @davegandy - http://fontawesome.io - @fontawesome + * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) + */ + +@import "variables"; +@import "mixins"; +@import "path"; +@import "core"; +@import "larger"; +@import "fixed-width"; +@import "list"; +@import "bordered-pulled"; +@import "animated"; +@import "rotated-flipped"; +@import "stacked"; +@import "icons"; +@import "screen-reader"; diff --git a/vraptor/src/main/webapp/vendor/jquery/jquery.js b/vraptor/src/main/webapp/vendor/jquery/jquery.js new file mode 100644 index 0000000000..7fc60fca78 --- /dev/null +++ b/vraptor/src/main/webapp/vendor/jquery/jquery.js @@ -0,0 +1,11008 @@ +/*! + * jQuery JavaScript Library v1.12.4 + * http://jquery.com/ + * + * Includes Sizzle.js + * http://sizzlejs.com/ + * + * Copyright jQuery Foundation and other contributors + * Released under the MIT license + * http://jquery.org/license + * + * Date: 2016-05-20T17:17Z + */ + +(function( global, factory ) { + + if ( typeof module === "object" && typeof module.exports === "object" ) { + // For CommonJS and CommonJS-like environments where a proper `window` + // is present, execute the factory and get jQuery. + // For environments that do not have a `window` with a `document` + // (such as Node.js), expose a factory as module.exports. + // This accentuates the need for the creation of a real `window`. + // e.g. var jQuery = require("jquery")(window); + // See ticket #14549 for more info. + module.exports = global.document ? + factory( global, true ) : + function( w ) { + if ( !w.document ) { + throw new Error( "jQuery requires a window with a document" ); + } + return factory( w ); + }; + } else { + factory( global ); + } + +// Pass this if window is not defined yet +}(typeof window !== "undefined" ? window : this, function( window, noGlobal ) { + +// Support: Firefox 18+ +// Can't be in strict mode, several libs including ASP.NET trace +// the stack via arguments.caller.callee and Firefox dies if +// you try to trace through "use strict" call chains. (#13335) +//"use strict"; +var deletedIds = []; + +var document = window.document; + +var slice = deletedIds.slice; + +var concat = deletedIds.concat; + +var push = deletedIds.push; + +var indexOf = deletedIds.indexOf; + +var class2type = {}; + +var toString = class2type.toString; + +var hasOwn = class2type.hasOwnProperty; + +var support = {}; + + + +var + version = "1.12.4", + + // Define a local copy of jQuery + jQuery = function( selector, context ) { + + // The jQuery object is actually just the init constructor 'enhanced' + // Need init if jQuery is called (just allow error to be thrown if not included) + return new jQuery.fn.init( selector, context ); + }, + + // Support: Android<4.1, IE<9 + // Make sure we trim BOM and NBSP + rtrim = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, + + // Matches dashed string for camelizing + rmsPrefix = /^-ms-/, + rdashAlpha = /-([\da-z])/gi, + + // Used by jQuery.camelCase as callback to replace() + fcamelCase = function( all, letter ) { + return letter.toUpperCase(); + }; + +jQuery.fn = jQuery.prototype = { + + // The current version of jQuery being used + jquery: version, + + constructor: jQuery, + + // Start with an empty selector + selector: "", + + // The default length of a jQuery object is 0 + length: 0, + + toArray: function() { + return slice.call( this ); + }, + + // Get the Nth element in the matched element set OR + // Get the whole matched element set as a clean array + get: function( num ) { + return num != null ? + + // Return just the one element from the set + ( num < 0 ? this[ num + this.length ] : this[ num ] ) : + + // Return all the elements in a clean array + slice.call( this ); + }, + + // Take an array of elements and push it onto the stack + // (returning the new matched element set) + pushStack: function( elems ) { + + // Build a new jQuery matched element set + var ret = jQuery.merge( this.constructor(), elems ); + + // Add the old object onto the stack (as a reference) + ret.prevObject = this; + ret.context = this.context; + + // Return the newly-formed element set + return ret; + }, + + // Execute a callback for every element in the matched set. + each: function( callback ) { + return jQuery.each( this, callback ); + }, + + map: function( callback ) { + return this.pushStack( jQuery.map( this, function( elem, i ) { + return callback.call( elem, i, elem ); + } ) ); + }, + + slice: function() { + return this.pushStack( slice.apply( this, arguments ) ); + }, + + first: function() { + return this.eq( 0 ); + }, + + last: function() { + return this.eq( -1 ); + }, + + eq: function( i ) { + var len = this.length, + j = +i + ( i < 0 ? len : 0 ); + return this.pushStack( j >= 0 && j < len ? [ this[ j ] ] : [] ); + }, + + end: function() { + return this.prevObject || this.constructor(); + }, + + // For internal use only. + // Behaves like an Array's method, not like a jQuery method. + push: push, + sort: deletedIds.sort, + splice: deletedIds.splice +}; + +jQuery.extend = jQuery.fn.extend = function() { + var src, copyIsArray, copy, name, options, clone, + target = arguments[ 0 ] || {}, + i = 1, + length = arguments.length, + deep = false; + + // Handle a deep copy situation + if ( typeof target === "boolean" ) { + deep = target; + + // skip the boolean and the target + target = arguments[ i ] || {}; + i++; + } + + // Handle case when target is a string or something (possible in deep copy) + if ( typeof target !== "object" && !jQuery.isFunction( target ) ) { + target = {}; + } + + // extend jQuery itself if only one argument is passed + if ( i === length ) { + target = this; + i--; + } + + for ( ; i < length; i++ ) { + + // Only deal with non-null/undefined values + if ( ( options = arguments[ i ] ) != null ) { + + // Extend the base object + for ( name in options ) { + src = target[ name ]; + copy = options[ name ]; + + // Prevent never-ending loop + if ( target === copy ) { + continue; + } + + // Recurse if we're merging plain objects or arrays + if ( deep && copy && ( jQuery.isPlainObject( copy ) || + ( copyIsArray = jQuery.isArray( copy ) ) ) ) { + + if ( copyIsArray ) { + copyIsArray = false; + clone = src && jQuery.isArray( src ) ? src : []; + + } else { + clone = src && jQuery.isPlainObject( src ) ? src : {}; + } + + // Never move original objects, clone them + target[ name ] = jQuery.extend( deep, clone, copy ); + + // Don't bring in undefined values + } else if ( copy !== undefined ) { + target[ name ] = copy; + } + } + } + } + + // Return the modified object + return target; +}; + +jQuery.extend( { + + // Unique for each copy of jQuery on the page + expando: "jQuery" + ( version + Math.random() ).replace( /\D/g, "" ), + + // Assume jQuery is ready without the ready module + isReady: true, + + error: function( msg ) { + throw new Error( msg ); + }, + + noop: function() {}, + + // See test/unit/core.js for details concerning isFunction. + // Since version 1.3, DOM methods and functions like alert + // aren't supported. They return false on IE (#2968). + isFunction: function( obj ) { + return jQuery.type( obj ) === "function"; + }, + + isArray: Array.isArray || function( obj ) { + return jQuery.type( obj ) === "array"; + }, + + isWindow: function( obj ) { + /* jshint eqeqeq: false */ + return obj != null && obj == obj.window; + }, + + isNumeric: function( obj ) { + + // parseFloat NaNs numeric-cast false positives (null|true|false|"") + // ...but misinterprets leading-number strings, particularly hex literals ("0x...") + // subtraction forces infinities to NaN + // adding 1 corrects loss of precision from parseFloat (#15100) + var realStringObj = obj && obj.toString(); + return !jQuery.isArray( obj ) && ( realStringObj - parseFloat( realStringObj ) + 1 ) >= 0; + }, + + isEmptyObject: function( obj ) { + var name; + for ( name in obj ) { + return false; + } + return true; + }, + + isPlainObject: function( obj ) { + var key; + + // Must be an Object. + // Because of IE, we also have to check the presence of the constructor property. + // Make sure that DOM nodes and window objects don't pass through, as well + if ( !obj || jQuery.type( obj ) !== "object" || obj.nodeType || jQuery.isWindow( obj ) ) { + return false; + } + + try { + + // Not own constructor property must be Object + if ( obj.constructor && + !hasOwn.call( obj, "constructor" ) && + !hasOwn.call( obj.constructor.prototype, "isPrototypeOf" ) ) { + return false; + } + } catch ( e ) { + + // IE8,9 Will throw exceptions on certain host objects #9897 + return false; + } + + // Support: IE<9 + // Handle iteration over inherited properties before own properties. + if ( !support.ownFirst ) { + for ( key in obj ) { + return hasOwn.call( obj, key ); + } + } + + // Own properties are enumerated firstly, so to speed up, + // if last one is own, then all properties are own. + for ( key in obj ) {} + + return key === undefined || hasOwn.call( obj, key ); + }, + + type: function( obj ) { + if ( obj == null ) { + return obj + ""; + } + return typeof obj === "object" || typeof obj === "function" ? + class2type[ toString.call( obj ) ] || "object" : + typeof obj; + }, + + // Workarounds based on findings by Jim Driscoll + // http://weblogs.java.net/blog/driscoll/archive/2009/09/08/eval-javascript-global-context + globalEval: function( data ) { + if ( data && jQuery.trim( data ) ) { + + // We use execScript on Internet Explorer + // We use an anonymous function so that context is window + // rather than jQuery in Firefox + ( window.execScript || function( data ) { + window[ "eval" ].call( window, data ); // jscs:ignore requireDotNotation + } )( data ); + } + }, + + // Convert dashed to camelCase; used by the css and data modules + // Microsoft forgot to hump their vendor prefix (#9572) + camelCase: function( string ) { + return string.replace( rmsPrefix, "ms-" ).replace( rdashAlpha, fcamelCase ); + }, + + nodeName: function( elem, name ) { + return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase(); + }, + + each: function( obj, callback ) { + var length, i = 0; + + if ( isArrayLike( obj ) ) { + length = obj.length; + for ( ; i < length; i++ ) { + if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) { + break; + } + } + } else { + for ( i in obj ) { + if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) { + break; + } + } + } + + return obj; + }, + + // Support: Android<4.1, IE<9 + trim: function( text ) { + return text == null ? + "" : + ( text + "" ).replace( rtrim, "" ); + }, + + // results is for internal usage only + makeArray: function( arr, results ) { + var ret = results || []; + + if ( arr != null ) { + if ( isArrayLike( Object( arr ) ) ) { + jQuery.merge( ret, + typeof arr === "string" ? + [ arr ] : arr + ); + } else { + push.call( ret, arr ); + } + } + + return ret; + }, + + inArray: function( elem, arr, i ) { + var len; + + if ( arr ) { + if ( indexOf ) { + return indexOf.call( arr, elem, i ); + } + + len = arr.length; + i = i ? i < 0 ? Math.max( 0, len + i ) : i : 0; + + for ( ; i < len; i++ ) { + + // Skip accessing in sparse arrays + if ( i in arr && arr[ i ] === elem ) { + return i; + } + } + } + + return -1; + }, + + merge: function( first, second ) { + var len = +second.length, + j = 0, + i = first.length; + + while ( j < len ) { + first[ i++ ] = second[ j++ ]; + } + + // Support: IE<9 + // Workaround casting of .length to NaN on otherwise arraylike objects (e.g., NodeLists) + if ( len !== len ) { + while ( second[ j ] !== undefined ) { + first[ i++ ] = second[ j++ ]; + } + } + + first.length = i; + + return first; + }, + + grep: function( elems, callback, invert ) { + var callbackInverse, + matches = [], + i = 0, + length = elems.length, + callbackExpect = !invert; + + // Go through the array, only saving the items + // that pass the validator function + for ( ; i < length; i++ ) { + callbackInverse = !callback( elems[ i ], i ); + if ( callbackInverse !== callbackExpect ) { + matches.push( elems[ i ] ); + } + } + + return matches; + }, + + // arg is for internal usage only + map: function( elems, callback, arg ) { + var length, value, + i = 0, + ret = []; + + // Go through the array, translating each of the items to their new values + if ( isArrayLike( elems ) ) { + length = elems.length; + for ( ; i < length; i++ ) { + value = callback( elems[ i ], i, arg ); + + if ( value != null ) { + ret.push( value ); + } + } + + // Go through every key on the object, + } else { + for ( i in elems ) { + value = callback( elems[ i ], i, arg ); + + if ( value != null ) { + ret.push( value ); + } + } + } + + // Flatten any nested arrays + return concat.apply( [], ret ); + }, + + // A global GUID counter for objects + guid: 1, + + // Bind a function to a context, optionally partially applying any + // arguments. + proxy: function( fn, context ) { + var args, proxy, tmp; + + if ( typeof context === "string" ) { + tmp = fn[ context ]; + context = fn; + fn = tmp; + } + + // Quick check to determine if target is callable, in the spec + // this throws a TypeError, but we will just return undefined. + if ( !jQuery.isFunction( fn ) ) { + return undefined; + } + + // Simulated bind + args = slice.call( arguments, 2 ); + proxy = function() { + return fn.apply( context || this, args.concat( slice.call( arguments ) ) ); + }; + + // Set the guid of unique handler to the same of original handler, so it can be removed + proxy.guid = fn.guid = fn.guid || jQuery.guid++; + + return proxy; + }, + + now: function() { + return +( new Date() ); + }, + + // jQuery.support is not used in Core but other projects attach their + // properties to it so it needs to exist. + support: support +} ); + +// JSHint would error on this code due to the Symbol not being defined in ES5. +// Defining this global in .jshintrc would create a danger of using the global +// unguarded in another place, it seems safer to just disable JSHint for these +// three lines. +/* jshint ignore: start */ +if ( typeof Symbol === "function" ) { + jQuery.fn[ Symbol.iterator ] = deletedIds[ Symbol.iterator ]; +} +/* jshint ignore: end */ + +// Populate the class2type map +jQuery.each( "Boolean Number String Function Array Date RegExp Object Error Symbol".split( " " ), +function( i, name ) { + class2type[ "[object " + name + "]" ] = name.toLowerCase(); +} ); + +function isArrayLike( obj ) { + + // Support: iOS 8.2 (not reproducible in simulator) + // `in` check used to prevent JIT error (gh-2145) + // hasOwn isn't used here due to false negatives + // regarding Nodelist length in IE + var length = !!obj && "length" in obj && obj.length, + type = jQuery.type( obj ); + + if ( type === "function" || jQuery.isWindow( obj ) ) { + return false; + } + + return type === "array" || length === 0 || + typeof length === "number" && length > 0 && ( length - 1 ) in obj; +} +var Sizzle = +/*! + * Sizzle CSS Selector Engine v2.2.1 + * http://sizzlejs.com/ + * + * Copyright jQuery Foundation and other contributors + * Released under the MIT license + * http://jquery.org/license + * + * Date: 2015-10-17 + */ +(function( window ) { + +var i, + support, + Expr, + getText, + isXML, + tokenize, + compile, + select, + outermostContext, + sortInput, + hasDuplicate, + + // Local document vars + setDocument, + document, + docElem, + documentIsHTML, + rbuggyQSA, + rbuggyMatches, + matches, + contains, + + // Instance-specific data + expando = "sizzle" + 1 * new Date(), + preferredDoc = window.document, + dirruns = 0, + done = 0, + classCache = createCache(), + tokenCache = createCache(), + compilerCache = createCache(), + sortOrder = function( a, b ) { + if ( a === b ) { + hasDuplicate = true; + } + return 0; + }, + + // General-purpose constants + MAX_NEGATIVE = 1 << 31, + + // Instance methods + hasOwn = ({}).hasOwnProperty, + arr = [], + pop = arr.pop, + push_native = arr.push, + push = arr.push, + slice = arr.slice, + // Use a stripped-down indexOf as it's faster than native + // http://jsperf.com/thor-indexof-vs-for/5 + indexOf = function( list, elem ) { + var i = 0, + len = list.length; + for ( ; i < len; i++ ) { + if ( list[i] === elem ) { + return i; + } + } + return -1; + }, + + booleans = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped", + + // Regular expressions + + // http://www.w3.org/TR/css3-selectors/#whitespace + whitespace = "[\\x20\\t\\r\\n\\f]", + + // http://www.w3.org/TR/CSS21/syndata.html#value-def-identifier + identifier = "(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+", + + // Attribute selectors: http://www.w3.org/TR/selectors/#attribute-selectors + attributes = "\\[" + whitespace + "*(" + identifier + ")(?:" + whitespace + + // Operator (capture 2) + "*([*^$|!~]?=)" + whitespace + + // "Attribute values must be CSS identifiers [capture 5] or strings [capture 3 or capture 4]" + "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + identifier + "))|)" + whitespace + + "*\\]", + + pseudos = ":(" + identifier + ")(?:\\((" + + // To reduce the number of selectors needing tokenize in the preFilter, prefer arguments: + // 1. quoted (capture 3; capture 4 or capture 5) + "('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|" + + // 2. simple (capture 6) + "((?:\\\\.|[^\\\\()[\\]]|" + attributes + ")*)|" + + // 3. anything else (capture 2) + ".*" + + ")\\)|)", + + // Leading and non-escaped trailing whitespace, capturing some non-whitespace characters preceding the latter + rwhitespace = new RegExp( whitespace + "+", "g" ), + rtrim = new RegExp( "^" + whitespace + "+|((?:^|[^\\\\])(?:\\\\.)*)" + whitespace + "+$", "g" ), + + rcomma = new RegExp( "^" + whitespace + "*," + whitespace + "*" ), + rcombinators = new RegExp( "^" + whitespace + "*([>+~]|" + whitespace + ")" + whitespace + "*" ), + + rattributeQuotes = new RegExp( "=" + whitespace + "*([^\\]'\"]*?)" + whitespace + "*\\]", "g" ), + + rpseudo = new RegExp( pseudos ), + ridentifier = new RegExp( "^" + identifier + "$" ), + + matchExpr = { + "ID": new RegExp( "^#(" + identifier + ")" ), + "CLASS": new RegExp( "^\\.(" + identifier + ")" ), + "TAG": new RegExp( "^(" + identifier + "|[*])" ), + "ATTR": new RegExp( "^" + attributes ), + "PSEUDO": new RegExp( "^" + pseudos ), + "CHILD": new RegExp( "^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + whitespace + + "*(even|odd|(([+-]|)(\\d*)n|)" + whitespace + "*(?:([+-]|)" + whitespace + + "*(\\d+)|))" + whitespace + "*\\)|)", "i" ), + "bool": new RegExp( "^(?:" + booleans + ")$", "i" ), + // For use in libraries implementing .is() + // We use this for POS matching in `select` + "needsContext": new RegExp( "^" + whitespace + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + + whitespace + "*((?:-\\d)?\\d*)" + whitespace + "*\\)|)(?=[^-]|$)", "i" ) + }, + + rinputs = /^(?:input|select|textarea|button)$/i, + rheader = /^h\d$/i, + + rnative = /^[^{]+\{\s*\[native \w/, + + // Easily-parseable/retrievable ID or TAG or CLASS selectors + rquickExpr = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, + + rsibling = /[+~]/, + rescape = /'|\\/g, + + // CSS escapes http://www.w3.org/TR/CSS21/syndata.html#escaped-characters + runescape = new RegExp( "\\\\([\\da-f]{1,6}" + whitespace + "?|(" + whitespace + ")|.)", "ig" ), + funescape = function( _, escaped, escapedWhitespace ) { + var high = "0x" + escaped - 0x10000; + // NaN means non-codepoint + // Support: Firefox<24 + // Workaround erroneous numeric interpretation of +"0x" + return high !== high || escapedWhitespace ? + escaped : + high < 0 ? + // BMP codepoint + String.fromCharCode( high + 0x10000 ) : + // Supplemental Plane codepoint (surrogate pair) + String.fromCharCode( high >> 10 | 0xD800, high & 0x3FF | 0xDC00 ); + }, + + // Used for iframes + // See setDocument() + // Removing the function wrapper causes a "Permission Denied" + // error in IE + unloadHandler = function() { + setDocument(); + }; + +// Optimize for push.apply( _, NodeList ) +try { + push.apply( + (arr = slice.call( preferredDoc.childNodes )), + preferredDoc.childNodes + ); + // Support: Android<4.0 + // Detect silently failing push.apply + arr[ preferredDoc.childNodes.length ].nodeType; +} catch ( e ) { + push = { apply: arr.length ? + + // Leverage slice if possible + function( target, els ) { + push_native.apply( target, slice.call(els) ); + } : + + // Support: IE<9 + // Otherwise append directly + function( target, els ) { + var j = target.length, + i = 0; + // Can't trust NodeList.length + while ( (target[j++] = els[i++]) ) {} + target.length = j - 1; + } + }; +} + +function Sizzle( selector, context, results, seed ) { + var m, i, elem, nid, nidselect, match, groups, newSelector, + newContext = context && context.ownerDocument, + + // nodeType defaults to 9, since context defaults to document + nodeType = context ? context.nodeType : 9; + + results = results || []; + + // Return early from calls with invalid selector or context + if ( typeof selector !== "string" || !selector || + nodeType !== 1 && nodeType !== 9 && nodeType !== 11 ) { + + return results; + } + + // Try to shortcut find operations (as opposed to filters) in HTML documents + if ( !seed ) { + + if ( ( context ? context.ownerDocument || context : preferredDoc ) !== document ) { + setDocument( context ); + } + context = context || document; + + if ( documentIsHTML ) { + + // If the selector is sufficiently simple, try using a "get*By*" DOM method + // (excepting DocumentFragment context, where the methods don't exist) + if ( nodeType !== 11 && (match = rquickExpr.exec( selector )) ) { + + // ID selector + if ( (m = match[1]) ) { + + // Document context + if ( nodeType === 9 ) { + if ( (elem = context.getElementById( m )) ) { + + // Support: IE, Opera, Webkit + // TODO: identify versions + // getElementById can match elements by name instead of ID + if ( elem.id === m ) { + results.push( elem ); + return results; + } + } else { + return results; + } + + // Element context + } else { + + // Support: IE, Opera, Webkit + // TODO: identify versions + // getElementById can match elements by name instead of ID + if ( newContext && (elem = newContext.getElementById( m )) && + contains( context, elem ) && + elem.id === m ) { + + results.push( elem ); + return results; + } + } + + // Type selector + } else if ( match[2] ) { + push.apply( results, context.getElementsByTagName( selector ) ); + return results; + + // Class selector + } else if ( (m = match[3]) && support.getElementsByClassName && + context.getElementsByClassName ) { + + push.apply( results, context.getElementsByClassName( m ) ); + return results; + } + } + + // Take advantage of querySelectorAll + if ( support.qsa && + !compilerCache[ selector + " " ] && + (!rbuggyQSA || !rbuggyQSA.test( selector )) ) { + + if ( nodeType !== 1 ) { + newContext = context; + newSelector = selector; + + // qSA looks outside Element context, which is not what we want + // Thanks to Andrew Dupont for this workaround technique + // Support: IE <=8 + // Exclude object elements + } else if ( context.nodeName.toLowerCase() !== "object" ) { + + // Capture the context ID, setting it first if necessary + if ( (nid = context.getAttribute( "id" )) ) { + nid = nid.replace( rescape, "\\$&" ); + } else { + context.setAttribute( "id", (nid = expando) ); + } + + // Prefix every selector in the list + groups = tokenize( selector ); + i = groups.length; + nidselect = ridentifier.test( nid ) ? "#" + nid : "[id='" + nid + "']"; + while ( i-- ) { + groups[i] = nidselect + " " + toSelector( groups[i] ); + } + newSelector = groups.join( "," ); + + // Expand context for sibling selectors + newContext = rsibling.test( selector ) && testContext( context.parentNode ) || + context; + } + + if ( newSelector ) { + try { + push.apply( results, + newContext.querySelectorAll( newSelector ) + ); + return results; + } catch ( qsaError ) { + } finally { + if ( nid === expando ) { + context.removeAttribute( "id" ); + } + } + } + } + } + } + + // All others + return select( selector.replace( rtrim, "$1" ), context, results, seed ); +} + +/** + * Create key-value caches of limited size + * @returns {function(string, object)} Returns the Object data after storing it on itself with + * property name the (space-suffixed) string and (if the cache is larger than Expr.cacheLength) + * deleting the oldest entry + */ +function createCache() { + var keys = []; + + function cache( key, value ) { + // Use (key + " ") to avoid collision with native prototype properties (see Issue #157) + if ( keys.push( key + " " ) > Expr.cacheLength ) { + // Only keep the most recent entries + delete cache[ keys.shift() ]; + } + return (cache[ key + " " ] = value); + } + return cache; +} + +/** + * Mark a function for special use by Sizzle + * @param {Function} fn The function to mark + */ +function markFunction( fn ) { + fn[ expando ] = true; + return fn; +} + +/** + * Support testing using an element + * @param {Function} fn Passed the created div and expects a boolean result + */ +function assert( fn ) { + var div = document.createElement("div"); + + try { + return !!fn( div ); + } catch (e) { + return false; + } finally { + // Remove from its parent by default + if ( div.parentNode ) { + div.parentNode.removeChild( div ); + } + // release memory in IE + div = null; + } +} + +/** + * Adds the same handler for all of the specified attrs + * @param {String} attrs Pipe-separated list of attributes + * @param {Function} handler The method that will be applied + */ +function addHandle( attrs, handler ) { + var arr = attrs.split("|"), + i = arr.length; + + while ( i-- ) { + Expr.attrHandle[ arr[i] ] = handler; + } +} + +/** + * Checks document order of two siblings + * @param {Element} a + * @param {Element} b + * @returns {Number} Returns less than 0 if a precedes b, greater than 0 if a follows b + */ +function siblingCheck( a, b ) { + var cur = b && a, + diff = cur && a.nodeType === 1 && b.nodeType === 1 && + ( ~b.sourceIndex || MAX_NEGATIVE ) - + ( ~a.sourceIndex || MAX_NEGATIVE ); + + // Use IE sourceIndex if available on both nodes + if ( diff ) { + return diff; + } + + // Check if b follows a + if ( cur ) { + while ( (cur = cur.nextSibling) ) { + if ( cur === b ) { + return -1; + } + } + } + + return a ? 1 : -1; +} + +/** + * Returns a function to use in pseudos for input types + * @param {String} type + */ +function createInputPseudo( type ) { + return function( elem ) { + var name = elem.nodeName.toLowerCase(); + return name === "input" && elem.type === type; + }; +} + +/** + * Returns a function to use in pseudos for buttons + * @param {String} type + */ +function createButtonPseudo( type ) { + return function( elem ) { + var name = elem.nodeName.toLowerCase(); + return (name === "input" || name === "button") && elem.type === type; + }; +} + +/** + * Returns a function to use in pseudos for positionals + * @param {Function} fn + */ +function createPositionalPseudo( fn ) { + return markFunction(function( argument ) { + argument = +argument; + return markFunction(function( seed, matches ) { + var j, + matchIndexes = fn( [], seed.length, argument ), + i = matchIndexes.length; + + // Match elements found at the specified indexes + while ( i-- ) { + if ( seed[ (j = matchIndexes[i]) ] ) { + seed[j] = !(matches[j] = seed[j]); + } + } + }); + }); +} + +/** + * Checks a node for validity as a Sizzle context + * @param {Element|Object=} context + * @returns {Element|Object|Boolean} The input node if acceptable, otherwise a falsy value + */ +function testContext( context ) { + return context && typeof context.getElementsByTagName !== "undefined" && context; +} + +// Expose support vars for convenience +support = Sizzle.support = {}; + +/** + * Detects XML nodes + * @param {Element|Object} elem An element or a document + * @returns {Boolean} True iff elem is a non-HTML XML node + */ +isXML = Sizzle.isXML = function( elem ) { + // documentElement is verified for cases where it doesn't yet exist + // (such as loading iframes in IE - #4833) + var documentElement = elem && (elem.ownerDocument || elem).documentElement; + return documentElement ? documentElement.nodeName !== "HTML" : false; +}; + +/** + * Sets document-related variables once based on the current document + * @param {Element|Object} [doc] An element or document object to use to set the document + * @returns {Object} Returns the current document + */ +setDocument = Sizzle.setDocument = function( node ) { + var hasCompare, parent, + doc = node ? node.ownerDocument || node : preferredDoc; + + // Return early if doc is invalid or already selected + if ( doc === document || doc.nodeType !== 9 || !doc.documentElement ) { + return document; + } + + // Update global variables + document = doc; + docElem = document.documentElement; + documentIsHTML = !isXML( document ); + + // Support: IE 9-11, Edge + // Accessing iframe documents after unload throws "permission denied" errors (jQuery #13936) + if ( (parent = document.defaultView) && parent.top !== parent ) { + // Support: IE 11 + if ( parent.addEventListener ) { + parent.addEventListener( "unload", unloadHandler, false ); + + // Support: IE 9 - 10 only + } else if ( parent.attachEvent ) { + parent.attachEvent( "onunload", unloadHandler ); + } + } + + /* Attributes + ---------------------------------------------------------------------- */ + + // Support: IE<8 + // Verify that getAttribute really returns attributes and not properties + // (excepting IE8 booleans) + support.attributes = assert(function( div ) { + div.className = "i"; + return !div.getAttribute("className"); + }); + + /* getElement(s)By* + ---------------------------------------------------------------------- */ + + // Check if getElementsByTagName("*") returns only elements + support.getElementsByTagName = assert(function( div ) { + div.appendChild( document.createComment("") ); + return !div.getElementsByTagName("*").length; + }); + + // Support: IE<9 + support.getElementsByClassName = rnative.test( document.getElementsByClassName ); + + // Support: IE<10 + // Check if getElementById returns elements by name + // The broken getElementById methods don't pick up programatically-set names, + // so use a roundabout getElementsByName test + support.getById = assert(function( div ) { + docElem.appendChild( div ).id = expando; + return !document.getElementsByName || !document.getElementsByName( expando ).length; + }); + + // ID find and filter + if ( support.getById ) { + Expr.find["ID"] = function( id, context ) { + if ( typeof context.getElementById !== "undefined" && documentIsHTML ) { + var m = context.getElementById( id ); + return m ? [ m ] : []; + } + }; + Expr.filter["ID"] = function( id ) { + var attrId = id.replace( runescape, funescape ); + return function( elem ) { + return elem.getAttribute("id") === attrId; + }; + }; + } else { + // Support: IE6/7 + // getElementById is not reliable as a find shortcut + delete Expr.find["ID"]; + + Expr.filter["ID"] = function( id ) { + var attrId = id.replace( runescape, funescape ); + return function( elem ) { + var node = typeof elem.getAttributeNode !== "undefined" && + elem.getAttributeNode("id"); + return node && node.value === attrId; + }; + }; + } + + // Tag + Expr.find["TAG"] = support.getElementsByTagName ? + function( tag, context ) { + if ( typeof context.getElementsByTagName !== "undefined" ) { + return context.getElementsByTagName( tag ); + + // DocumentFragment nodes don't have gEBTN + } else if ( support.qsa ) { + return context.querySelectorAll( tag ); + } + } : + + function( tag, context ) { + var elem, + tmp = [], + i = 0, + // By happy coincidence, a (broken) gEBTN appears on DocumentFragment nodes too + results = context.getElementsByTagName( tag ); + + // Filter out possible comments + if ( tag === "*" ) { + while ( (elem = results[i++]) ) { + if ( elem.nodeType === 1 ) { + tmp.push( elem ); + } + } + + return tmp; + } + return results; + }; + + // Class + Expr.find["CLASS"] = support.getElementsByClassName && function( className, context ) { + if ( typeof context.getElementsByClassName !== "undefined" && documentIsHTML ) { + return context.getElementsByClassName( className ); + } + }; + + /* QSA/matchesSelector + ---------------------------------------------------------------------- */ + + // QSA and matchesSelector support + + // matchesSelector(:active) reports false when true (IE9/Opera 11.5) + rbuggyMatches = []; + + // qSa(:focus) reports false when true (Chrome 21) + // We allow this because of a bug in IE8/9 that throws an error + // whenever `document.activeElement` is accessed on an iframe + // So, we allow :focus to pass through QSA all the time to avoid the IE error + // See http://bugs.jquery.com/ticket/13378 + rbuggyQSA = []; + + if ( (support.qsa = rnative.test( document.querySelectorAll )) ) { + // Build QSA regex + // Regex strategy adopted from Diego Perini + assert(function( div ) { + // Select is set to empty string on purpose + // This is to test IE's treatment of not explicitly + // setting a boolean content attribute, + // since its presence should be enough + // http://bugs.jquery.com/ticket/12359 + docElem.appendChild( div ).innerHTML = "" + + ""; + + // Support: IE8, Opera 11-12.16 + // Nothing should be selected when empty strings follow ^= or $= or *= + // The test attribute must be unknown in Opera but "safe" for WinRT + // http://msdn.microsoft.com/en-us/library/ie/hh465388.aspx#attribute_section + if ( div.querySelectorAll("[msallowcapture^='']").length ) { + rbuggyQSA.push( "[*^$]=" + whitespace + "*(?:''|\"\")" ); + } + + // Support: IE8 + // Boolean attributes and "value" are not treated correctly + if ( !div.querySelectorAll("[selected]").length ) { + rbuggyQSA.push( "\\[" + whitespace + "*(?:value|" + booleans + ")" ); + } + + // Support: Chrome<29, Android<4.4, Safari<7.0+, iOS<7.0+, PhantomJS<1.9.8+ + if ( !div.querySelectorAll( "[id~=" + expando + "-]" ).length ) { + rbuggyQSA.push("~="); + } + + // Webkit/Opera - :checked should return selected option elements + // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked + // IE8 throws error here and will not see later tests + if ( !div.querySelectorAll(":checked").length ) { + rbuggyQSA.push(":checked"); + } + + // Support: Safari 8+, iOS 8+ + // https://bugs.webkit.org/show_bug.cgi?id=136851 + // In-page `selector#id sibing-combinator selector` fails + if ( !div.querySelectorAll( "a#" + expando + "+*" ).length ) { + rbuggyQSA.push(".#.+[+~]"); + } + }); + + assert(function( div ) { + // Support: Windows 8 Native Apps + // The type and name attributes are restricted during .innerHTML assignment + var input = document.createElement("input"); + input.setAttribute( "type", "hidden" ); + div.appendChild( input ).setAttribute( "name", "D" ); + + // Support: IE8 + // Enforce case-sensitivity of name attribute + if ( div.querySelectorAll("[name=d]").length ) { + rbuggyQSA.push( "name" + whitespace + "*[*^$|!~]?=" ); + } + + // FF 3.5 - :enabled/:disabled and hidden elements (hidden elements are still enabled) + // IE8 throws error here and will not see later tests + if ( !div.querySelectorAll(":enabled").length ) { + rbuggyQSA.push( ":enabled", ":disabled" ); + } + + // Opera 10-11 does not throw on post-comma invalid pseudos + div.querySelectorAll("*,:x"); + rbuggyQSA.push(",.*:"); + }); + } + + if ( (support.matchesSelector = rnative.test( (matches = docElem.matches || + docElem.webkitMatchesSelector || + docElem.mozMatchesSelector || + docElem.oMatchesSelector || + docElem.msMatchesSelector) )) ) { + + assert(function( div ) { + // Check to see if it's possible to do matchesSelector + // on a disconnected node (IE 9) + support.disconnectedMatch = matches.call( div, "div" ); + + // This should fail with an exception + // Gecko does not error, returns false instead + matches.call( div, "[s!='']:x" ); + rbuggyMatches.push( "!=", pseudos ); + }); + } + + rbuggyQSA = rbuggyQSA.length && new RegExp( rbuggyQSA.join("|") ); + rbuggyMatches = rbuggyMatches.length && new RegExp( rbuggyMatches.join("|") ); + + /* Contains + ---------------------------------------------------------------------- */ + hasCompare = rnative.test( docElem.compareDocumentPosition ); + + // Element contains another + // Purposefully self-exclusive + // As in, an element does not contain itself + contains = hasCompare || rnative.test( docElem.contains ) ? + function( a, b ) { + var adown = a.nodeType === 9 ? a.documentElement : a, + bup = b && b.parentNode; + return a === bup || !!( bup && bup.nodeType === 1 && ( + adown.contains ? + adown.contains( bup ) : + a.compareDocumentPosition && a.compareDocumentPosition( bup ) & 16 + )); + } : + function( a, b ) { + if ( b ) { + while ( (b = b.parentNode) ) { + if ( b === a ) { + return true; + } + } + } + return false; + }; + + /* Sorting + ---------------------------------------------------------------------- */ + + // Document order sorting + sortOrder = hasCompare ? + function( a, b ) { + + // Flag for duplicate removal + if ( a === b ) { + hasDuplicate = true; + return 0; + } + + // Sort on method existence if only one input has compareDocumentPosition + var compare = !a.compareDocumentPosition - !b.compareDocumentPosition; + if ( compare ) { + return compare; + } + + // Calculate position if both inputs belong to the same document + compare = ( a.ownerDocument || a ) === ( b.ownerDocument || b ) ? + a.compareDocumentPosition( b ) : + + // Otherwise we know they are disconnected + 1; + + // Disconnected nodes + if ( compare & 1 || + (!support.sortDetached && b.compareDocumentPosition( a ) === compare) ) { + + // Choose the first element that is related to our preferred document + if ( a === document || a.ownerDocument === preferredDoc && contains(preferredDoc, a) ) { + return -1; + } + if ( b === document || b.ownerDocument === preferredDoc && contains(preferredDoc, b) ) { + return 1; + } + + // Maintain original order + return sortInput ? + ( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) : + 0; + } + + return compare & 4 ? -1 : 1; + } : + function( a, b ) { + // Exit early if the nodes are identical + if ( a === b ) { + hasDuplicate = true; + return 0; + } + + var cur, + i = 0, + aup = a.parentNode, + bup = b.parentNode, + ap = [ a ], + bp = [ b ]; + + // Parentless nodes are either documents or disconnected + if ( !aup || !bup ) { + return a === document ? -1 : + b === document ? 1 : + aup ? -1 : + bup ? 1 : + sortInput ? + ( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) : + 0; + + // If the nodes are siblings, we can do a quick check + } else if ( aup === bup ) { + return siblingCheck( a, b ); + } + + // Otherwise we need full lists of their ancestors for comparison + cur = a; + while ( (cur = cur.parentNode) ) { + ap.unshift( cur ); + } + cur = b; + while ( (cur = cur.parentNode) ) { + bp.unshift( cur ); + } + + // Walk down the tree looking for a discrepancy + while ( ap[i] === bp[i] ) { + i++; + } + + return i ? + // Do a sibling check if the nodes have a common ancestor + siblingCheck( ap[i], bp[i] ) : + + // Otherwise nodes in our document sort first + ap[i] === preferredDoc ? -1 : + bp[i] === preferredDoc ? 1 : + 0; + }; + + return document; +}; + +Sizzle.matches = function( expr, elements ) { + return Sizzle( expr, null, null, elements ); +}; + +Sizzle.matchesSelector = function( elem, expr ) { + // Set document vars if needed + if ( ( elem.ownerDocument || elem ) !== document ) { + setDocument( elem ); + } + + // Make sure that attribute selectors are quoted + expr = expr.replace( rattributeQuotes, "='$1']" ); + + if ( support.matchesSelector && documentIsHTML && + !compilerCache[ expr + " " ] && + ( !rbuggyMatches || !rbuggyMatches.test( expr ) ) && + ( !rbuggyQSA || !rbuggyQSA.test( expr ) ) ) { + + try { + var ret = matches.call( elem, expr ); + + // IE 9's matchesSelector returns false on disconnected nodes + if ( ret || support.disconnectedMatch || + // As well, disconnected nodes are said to be in a document + // fragment in IE 9 + elem.document && elem.document.nodeType !== 11 ) { + return ret; + } + } catch (e) {} + } + + return Sizzle( expr, document, null, [ elem ] ).length > 0; +}; + +Sizzle.contains = function( context, elem ) { + // Set document vars if needed + if ( ( context.ownerDocument || context ) !== document ) { + setDocument( context ); + } + return contains( context, elem ); +}; + +Sizzle.attr = function( elem, name ) { + // Set document vars if needed + if ( ( elem.ownerDocument || elem ) !== document ) { + setDocument( elem ); + } + + var fn = Expr.attrHandle[ name.toLowerCase() ], + // Don't get fooled by Object.prototype properties (jQuery #13807) + val = fn && hasOwn.call( Expr.attrHandle, name.toLowerCase() ) ? + fn( elem, name, !documentIsHTML ) : + undefined; + + return val !== undefined ? + val : + support.attributes || !documentIsHTML ? + elem.getAttribute( name ) : + (val = elem.getAttributeNode(name)) && val.specified ? + val.value : + null; +}; + +Sizzle.error = function( msg ) { + throw new Error( "Syntax error, unrecognized expression: " + msg ); +}; + +/** + * Document sorting and removing duplicates + * @param {ArrayLike} results + */ +Sizzle.uniqueSort = function( results ) { + var elem, + duplicates = [], + j = 0, + i = 0; + + // Unless we *know* we can detect duplicates, assume their presence + hasDuplicate = !support.detectDuplicates; + sortInput = !support.sortStable && results.slice( 0 ); + results.sort( sortOrder ); + + if ( hasDuplicate ) { + while ( (elem = results[i++]) ) { + if ( elem === results[ i ] ) { + j = duplicates.push( i ); + } + } + while ( j-- ) { + results.splice( duplicates[ j ], 1 ); + } + } + + // Clear input after sorting to release objects + // See https://github.com/jquery/sizzle/pull/225 + sortInput = null; + + return results; +}; + +/** + * Utility function for retrieving the text value of an array of DOM nodes + * @param {Array|Element} elem + */ +getText = Sizzle.getText = function( elem ) { + var node, + ret = "", + i = 0, + nodeType = elem.nodeType; + + if ( !nodeType ) { + // If no nodeType, this is expected to be an array + while ( (node = elem[i++]) ) { + // Do not traverse comment nodes + ret += getText( node ); + } + } else if ( nodeType === 1 || nodeType === 9 || nodeType === 11 ) { + // Use textContent for elements + // innerText usage removed for consistency of new lines (jQuery #11153) + if ( typeof elem.textContent === "string" ) { + return elem.textContent; + } else { + // Traverse its children + for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) { + ret += getText( elem ); + } + } + } else if ( nodeType === 3 || nodeType === 4 ) { + return elem.nodeValue; + } + // Do not include comment or processing instruction nodes + + return ret; +}; + +Expr = Sizzle.selectors = { + + // Can be adjusted by the user + cacheLength: 50, + + createPseudo: markFunction, + + match: matchExpr, + + attrHandle: {}, + + find: {}, + + relative: { + ">": { dir: "parentNode", first: true }, + " ": { dir: "parentNode" }, + "+": { dir: "previousSibling", first: true }, + "~": { dir: "previousSibling" } + }, + + preFilter: { + "ATTR": function( match ) { + match[1] = match[1].replace( runescape, funescape ); + + // Move the given value to match[3] whether quoted or unquoted + match[3] = ( match[3] || match[4] || match[5] || "" ).replace( runescape, funescape ); + + if ( match[2] === "~=" ) { + match[3] = " " + match[3] + " "; + } + + return match.slice( 0, 4 ); + }, + + "CHILD": function( match ) { + /* matches from matchExpr["CHILD"] + 1 type (only|nth|...) + 2 what (child|of-type) + 3 argument (even|odd|\d*|\d*n([+-]\d+)?|...) + 4 xn-component of xn+y argument ([+-]?\d*n|) + 5 sign of xn-component + 6 x of xn-component + 7 sign of y-component + 8 y of y-component + */ + match[1] = match[1].toLowerCase(); + + if ( match[1].slice( 0, 3 ) === "nth" ) { + // nth-* requires argument + if ( !match[3] ) { + Sizzle.error( match[0] ); + } + + // numeric x and y parameters for Expr.filter.CHILD + // remember that false/true cast respectively to 0/1 + match[4] = +( match[4] ? match[5] + (match[6] || 1) : 2 * ( match[3] === "even" || match[3] === "odd" ) ); + match[5] = +( ( match[7] + match[8] ) || match[3] === "odd" ); + + // other types prohibit arguments + } else if ( match[3] ) { + Sizzle.error( match[0] ); + } + + return match; + }, + + "PSEUDO": function( match ) { + var excess, + unquoted = !match[6] && match[2]; + + if ( matchExpr["CHILD"].test( match[0] ) ) { + return null; + } + + // Accept quoted arguments as-is + if ( match[3] ) { + match[2] = match[4] || match[5] || ""; + + // Strip excess characters from unquoted arguments + } else if ( unquoted && rpseudo.test( unquoted ) && + // Get excess from tokenize (recursively) + (excess = tokenize( unquoted, true )) && + // advance to the next closing parenthesis + (excess = unquoted.indexOf( ")", unquoted.length - excess ) - unquoted.length) ) { + + // excess is a negative index + match[0] = match[0].slice( 0, excess ); + match[2] = unquoted.slice( 0, excess ); + } + + // Return only captures needed by the pseudo filter method (type and argument) + return match.slice( 0, 3 ); + } + }, + + filter: { + + "TAG": function( nodeNameSelector ) { + var nodeName = nodeNameSelector.replace( runescape, funescape ).toLowerCase(); + return nodeNameSelector === "*" ? + function() { return true; } : + function( elem ) { + return elem.nodeName && elem.nodeName.toLowerCase() === nodeName; + }; + }, + + "CLASS": function( className ) { + var pattern = classCache[ className + " " ]; + + return pattern || + (pattern = new RegExp( "(^|" + whitespace + ")" + className + "(" + whitespace + "|$)" )) && + classCache( className, function( elem ) { + return pattern.test( typeof elem.className === "string" && elem.className || typeof elem.getAttribute !== "undefined" && elem.getAttribute("class") || "" ); + }); + }, + + "ATTR": function( name, operator, check ) { + return function( elem ) { + var result = Sizzle.attr( elem, name ); + + if ( result == null ) { + return operator === "!="; + } + if ( !operator ) { + return true; + } + + result += ""; + + return operator === "=" ? result === check : + operator === "!=" ? result !== check : + operator === "^=" ? check && result.indexOf( check ) === 0 : + operator === "*=" ? check && result.indexOf( check ) > -1 : + operator === "$=" ? check && result.slice( -check.length ) === check : + operator === "~=" ? ( " " + result.replace( rwhitespace, " " ) + " " ).indexOf( check ) > -1 : + operator === "|=" ? result === check || result.slice( 0, check.length + 1 ) === check + "-" : + false; + }; + }, + + "CHILD": function( type, what, argument, first, last ) { + var simple = type.slice( 0, 3 ) !== "nth", + forward = type.slice( -4 ) !== "last", + ofType = what === "of-type"; + + return first === 1 && last === 0 ? + + // Shortcut for :nth-*(n) + function( elem ) { + return !!elem.parentNode; + } : + + function( elem, context, xml ) { + var cache, uniqueCache, outerCache, node, nodeIndex, start, + dir = simple !== forward ? "nextSibling" : "previousSibling", + parent = elem.parentNode, + name = ofType && elem.nodeName.toLowerCase(), + useCache = !xml && !ofType, + diff = false; + + if ( parent ) { + + // :(first|last|only)-(child|of-type) + if ( simple ) { + while ( dir ) { + node = elem; + while ( (node = node[ dir ]) ) { + if ( ofType ? + node.nodeName.toLowerCase() === name : + node.nodeType === 1 ) { + + return false; + } + } + // Reverse direction for :only-* (if we haven't yet done so) + start = dir = type === "only" && !start && "nextSibling"; + } + return true; + } + + start = [ forward ? parent.firstChild : parent.lastChild ]; + + // non-xml :nth-child(...) stores cache data on `parent` + if ( forward && useCache ) { + + // Seek `elem` from a previously-cached index + + // ...in a gzip-friendly way + node = parent; + outerCache = node[ expando ] || (node[ expando ] = {}); + + // Support: IE <9 only + // Defend against cloned attroperties (jQuery gh-1709) + uniqueCache = outerCache[ node.uniqueID ] || + (outerCache[ node.uniqueID ] = {}); + + cache = uniqueCache[ type ] || []; + nodeIndex = cache[ 0 ] === dirruns && cache[ 1 ]; + diff = nodeIndex && cache[ 2 ]; + node = nodeIndex && parent.childNodes[ nodeIndex ]; + + while ( (node = ++nodeIndex && node && node[ dir ] || + + // Fallback to seeking `elem` from the start + (diff = nodeIndex = 0) || start.pop()) ) { + + // When found, cache indexes on `parent` and break + if ( node.nodeType === 1 && ++diff && node === elem ) { + uniqueCache[ type ] = [ dirruns, nodeIndex, diff ]; + break; + } + } + + } else { + // Use previously-cached element index if available + if ( useCache ) { + // ...in a gzip-friendly way + node = elem; + outerCache = node[ expando ] || (node[ expando ] = {}); + + // Support: IE <9 only + // Defend against cloned attroperties (jQuery gh-1709) + uniqueCache = outerCache[ node.uniqueID ] || + (outerCache[ node.uniqueID ] = {}); + + cache = uniqueCache[ type ] || []; + nodeIndex = cache[ 0 ] === dirruns && cache[ 1 ]; + diff = nodeIndex; + } + + // xml :nth-child(...) + // or :nth-last-child(...) or :nth(-last)?-of-type(...) + if ( diff === false ) { + // Use the same loop as above to seek `elem` from the start + while ( (node = ++nodeIndex && node && node[ dir ] || + (diff = nodeIndex = 0) || start.pop()) ) { + + if ( ( ofType ? + node.nodeName.toLowerCase() === name : + node.nodeType === 1 ) && + ++diff ) { + + // Cache the index of each encountered element + if ( useCache ) { + outerCache = node[ expando ] || (node[ expando ] = {}); + + // Support: IE <9 only + // Defend against cloned attroperties (jQuery gh-1709) + uniqueCache = outerCache[ node.uniqueID ] || + (outerCache[ node.uniqueID ] = {}); + + uniqueCache[ type ] = [ dirruns, diff ]; + } + + if ( node === elem ) { + break; + } + } + } + } + } + + // Incorporate the offset, then check against cycle size + diff -= last; + return diff === first || ( diff % first === 0 && diff / first >= 0 ); + } + }; + }, + + "PSEUDO": function( pseudo, argument ) { + // pseudo-class names are case-insensitive + // http://www.w3.org/TR/selectors/#pseudo-classes + // Prioritize by case sensitivity in case custom pseudos are added with uppercase letters + // Remember that setFilters inherits from pseudos + var args, + fn = Expr.pseudos[ pseudo ] || Expr.setFilters[ pseudo.toLowerCase() ] || + Sizzle.error( "unsupported pseudo: " + pseudo ); + + // The user may use createPseudo to indicate that + // arguments are needed to create the filter function + // just as Sizzle does + if ( fn[ expando ] ) { + return fn( argument ); + } + + // But maintain support for old signatures + if ( fn.length > 1 ) { + args = [ pseudo, pseudo, "", argument ]; + return Expr.setFilters.hasOwnProperty( pseudo.toLowerCase() ) ? + markFunction(function( seed, matches ) { + var idx, + matched = fn( seed, argument ), + i = matched.length; + while ( i-- ) { + idx = indexOf( seed, matched[i] ); + seed[ idx ] = !( matches[ idx ] = matched[i] ); + } + }) : + function( elem ) { + return fn( elem, 0, args ); + }; + } + + return fn; + } + }, + + pseudos: { + // Potentially complex pseudos + "not": markFunction(function( selector ) { + // Trim the selector passed to compile + // to avoid treating leading and trailing + // spaces as combinators + var input = [], + results = [], + matcher = compile( selector.replace( rtrim, "$1" ) ); + + return matcher[ expando ] ? + markFunction(function( seed, matches, context, xml ) { + var elem, + unmatched = matcher( seed, null, xml, [] ), + i = seed.length; + + // Match elements unmatched by `matcher` + while ( i-- ) { + if ( (elem = unmatched[i]) ) { + seed[i] = !(matches[i] = elem); + } + } + }) : + function( elem, context, xml ) { + input[0] = elem; + matcher( input, null, xml, results ); + // Don't keep the element (issue #299) + input[0] = null; + return !results.pop(); + }; + }), + + "has": markFunction(function( selector ) { + return function( elem ) { + return Sizzle( selector, elem ).length > 0; + }; + }), + + "contains": markFunction(function( text ) { + text = text.replace( runescape, funescape ); + return function( elem ) { + return ( elem.textContent || elem.innerText || getText( elem ) ).indexOf( text ) > -1; + }; + }), + + // "Whether an element is represented by a :lang() selector + // is based solely on the element's language value + // being equal to the identifier C, + // or beginning with the identifier C immediately followed by "-". + // The matching of C against the element's language value is performed case-insensitively. + // The identifier C does not have to be a valid language name." + // http://www.w3.org/TR/selectors/#lang-pseudo + "lang": markFunction( function( lang ) { + // lang value must be a valid identifier + if ( !ridentifier.test(lang || "") ) { + Sizzle.error( "unsupported lang: " + lang ); + } + lang = lang.replace( runescape, funescape ).toLowerCase(); + return function( elem ) { + var elemLang; + do { + if ( (elemLang = documentIsHTML ? + elem.lang : + elem.getAttribute("xml:lang") || elem.getAttribute("lang")) ) { + + elemLang = elemLang.toLowerCase(); + return elemLang === lang || elemLang.indexOf( lang + "-" ) === 0; + } + } while ( (elem = elem.parentNode) && elem.nodeType === 1 ); + return false; + }; + }), + + // Miscellaneous + "target": function( elem ) { + var hash = window.location && window.location.hash; + return hash && hash.slice( 1 ) === elem.id; + }, + + "root": function( elem ) { + return elem === docElem; + }, + + "focus": function( elem ) { + return elem === document.activeElement && (!document.hasFocus || document.hasFocus()) && !!(elem.type || elem.href || ~elem.tabIndex); + }, + + // Boolean properties + "enabled": function( elem ) { + return elem.disabled === false; + }, + + "disabled": function( elem ) { + return elem.disabled === true; + }, + + "checked": function( elem ) { + // In CSS3, :checked should return both checked and selected elements + // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked + var nodeName = elem.nodeName.toLowerCase(); + return (nodeName === "input" && !!elem.checked) || (nodeName === "option" && !!elem.selected); + }, + + "selected": function( elem ) { + // Accessing this property makes selected-by-default + // options in Safari work properly + if ( elem.parentNode ) { + elem.parentNode.selectedIndex; + } + + return elem.selected === true; + }, + + // Contents + "empty": function( elem ) { + // http://www.w3.org/TR/selectors/#empty-pseudo + // :empty is negated by element (1) or content nodes (text: 3; cdata: 4; entity ref: 5), + // but not by others (comment: 8; processing instruction: 7; etc.) + // nodeType < 6 works because attributes (2) do not appear as children + for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) { + if ( elem.nodeType < 6 ) { + return false; + } + } + return true; + }, + + "parent": function( elem ) { + return !Expr.pseudos["empty"]( elem ); + }, + + // Element/input types + "header": function( elem ) { + return rheader.test( elem.nodeName ); + }, + + "input": function( elem ) { + return rinputs.test( elem.nodeName ); + }, + + "button": function( elem ) { + var name = elem.nodeName.toLowerCase(); + return name === "input" && elem.type === "button" || name === "button"; + }, + + "text": function( elem ) { + var attr; + return elem.nodeName.toLowerCase() === "input" && + elem.type === "text" && + + // Support: IE<8 + // New HTML5 attribute values (e.g., "search") appear with elem.type === "text" + ( (attr = elem.getAttribute("type")) == null || attr.toLowerCase() === "text" ); + }, + + // Position-in-collection + "first": createPositionalPseudo(function() { + return [ 0 ]; + }), + + "last": createPositionalPseudo(function( matchIndexes, length ) { + return [ length - 1 ]; + }), + + "eq": createPositionalPseudo(function( matchIndexes, length, argument ) { + return [ argument < 0 ? argument + length : argument ]; + }), + + "even": createPositionalPseudo(function( matchIndexes, length ) { + var i = 0; + for ( ; i < length; i += 2 ) { + matchIndexes.push( i ); + } + return matchIndexes; + }), + + "odd": createPositionalPseudo(function( matchIndexes, length ) { + var i = 1; + for ( ; i < length; i += 2 ) { + matchIndexes.push( i ); + } + return matchIndexes; + }), + + "lt": createPositionalPseudo(function( matchIndexes, length, argument ) { + var i = argument < 0 ? argument + length : argument; + for ( ; --i >= 0; ) { + matchIndexes.push( i ); + } + return matchIndexes; + }), + + "gt": createPositionalPseudo(function( matchIndexes, length, argument ) { + var i = argument < 0 ? argument + length : argument; + for ( ; ++i < length; ) { + matchIndexes.push( i ); + } + return matchIndexes; + }) + } +}; + +Expr.pseudos["nth"] = Expr.pseudos["eq"]; + +// Add button/input type pseudos +for ( i in { radio: true, checkbox: true, file: true, password: true, image: true } ) { + Expr.pseudos[ i ] = createInputPseudo( i ); +} +for ( i in { submit: true, reset: true } ) { + Expr.pseudos[ i ] = createButtonPseudo( i ); +} + +// Easy API for creating new setFilters +function setFilters() {} +setFilters.prototype = Expr.filters = Expr.pseudos; +Expr.setFilters = new setFilters(); + +tokenize = Sizzle.tokenize = function( selector, parseOnly ) { + var matched, match, tokens, type, + soFar, groups, preFilters, + cached = tokenCache[ selector + " " ]; + + if ( cached ) { + return parseOnly ? 0 : cached.slice( 0 ); + } + + soFar = selector; + groups = []; + preFilters = Expr.preFilter; + + while ( soFar ) { + + // Comma and first run + if ( !matched || (match = rcomma.exec( soFar )) ) { + if ( match ) { + // Don't consume trailing commas as valid + soFar = soFar.slice( match[0].length ) || soFar; + } + groups.push( (tokens = []) ); + } + + matched = false; + + // Combinators + if ( (match = rcombinators.exec( soFar )) ) { + matched = match.shift(); + tokens.push({ + value: matched, + // Cast descendant combinators to space + type: match[0].replace( rtrim, " " ) + }); + soFar = soFar.slice( matched.length ); + } + + // Filters + for ( type in Expr.filter ) { + if ( (match = matchExpr[ type ].exec( soFar )) && (!preFilters[ type ] || + (match = preFilters[ type ]( match ))) ) { + matched = match.shift(); + tokens.push({ + value: matched, + type: type, + matches: match + }); + soFar = soFar.slice( matched.length ); + } + } + + if ( !matched ) { + break; + } + } + + // Return the length of the invalid excess + // if we're just parsing + // Otherwise, throw an error or return tokens + return parseOnly ? + soFar.length : + soFar ? + Sizzle.error( selector ) : + // Cache the tokens + tokenCache( selector, groups ).slice( 0 ); +}; + +function toSelector( tokens ) { + var i = 0, + len = tokens.length, + selector = ""; + for ( ; i < len; i++ ) { + selector += tokens[i].value; + } + return selector; +} + +function addCombinator( matcher, combinator, base ) { + var dir = combinator.dir, + checkNonElements = base && dir === "parentNode", + doneName = done++; + + return combinator.first ? + // Check against closest ancestor/preceding element + function( elem, context, xml ) { + while ( (elem = elem[ dir ]) ) { + if ( elem.nodeType === 1 || checkNonElements ) { + return matcher( elem, context, xml ); + } + } + } : + + // Check against all ancestor/preceding elements + function( elem, context, xml ) { + var oldCache, uniqueCache, outerCache, + newCache = [ dirruns, doneName ]; + + // We can't set arbitrary data on XML nodes, so they don't benefit from combinator caching + if ( xml ) { + while ( (elem = elem[ dir ]) ) { + if ( elem.nodeType === 1 || checkNonElements ) { + if ( matcher( elem, context, xml ) ) { + return true; + } + } + } + } else { + while ( (elem = elem[ dir ]) ) { + if ( elem.nodeType === 1 || checkNonElements ) { + outerCache = elem[ expando ] || (elem[ expando ] = {}); + + // Support: IE <9 only + // Defend against cloned attroperties (jQuery gh-1709) + uniqueCache = outerCache[ elem.uniqueID ] || (outerCache[ elem.uniqueID ] = {}); + + if ( (oldCache = uniqueCache[ dir ]) && + oldCache[ 0 ] === dirruns && oldCache[ 1 ] === doneName ) { + + // Assign to newCache so results back-propagate to previous elements + return (newCache[ 2 ] = oldCache[ 2 ]); + } else { + // Reuse newcache so results back-propagate to previous elements + uniqueCache[ dir ] = newCache; + + // A match means we're done; a fail means we have to keep checking + if ( (newCache[ 2 ] = matcher( elem, context, xml )) ) { + return true; + } + } + } + } + } + }; +} + +function elementMatcher( matchers ) { + return matchers.length > 1 ? + function( elem, context, xml ) { + var i = matchers.length; + while ( i-- ) { + if ( !matchers[i]( elem, context, xml ) ) { + return false; + } + } + return true; + } : + matchers[0]; +} + +function multipleContexts( selector, contexts, results ) { + var i = 0, + len = contexts.length; + for ( ; i < len; i++ ) { + Sizzle( selector, contexts[i], results ); + } + return results; +} + +function condense( unmatched, map, filter, context, xml ) { + var elem, + newUnmatched = [], + i = 0, + len = unmatched.length, + mapped = map != null; + + for ( ; i < len; i++ ) { + if ( (elem = unmatched[i]) ) { + if ( !filter || filter( elem, context, xml ) ) { + newUnmatched.push( elem ); + if ( mapped ) { + map.push( i ); + } + } + } + } + + return newUnmatched; +} + +function setMatcher( preFilter, selector, matcher, postFilter, postFinder, postSelector ) { + if ( postFilter && !postFilter[ expando ] ) { + postFilter = setMatcher( postFilter ); + } + if ( postFinder && !postFinder[ expando ] ) { + postFinder = setMatcher( postFinder, postSelector ); + } + return markFunction(function( seed, results, context, xml ) { + var temp, i, elem, + preMap = [], + postMap = [], + preexisting = results.length, + + // Get initial elements from seed or context + elems = seed || multipleContexts( selector || "*", context.nodeType ? [ context ] : context, [] ), + + // Prefilter to get matcher input, preserving a map for seed-results synchronization + matcherIn = preFilter && ( seed || !selector ) ? + condense( elems, preMap, preFilter, context, xml ) : + elems, + + matcherOut = matcher ? + // If we have a postFinder, or filtered seed, or non-seed postFilter or preexisting results, + postFinder || ( seed ? preFilter : preexisting || postFilter ) ? + + // ...intermediate processing is necessary + [] : + + // ...otherwise use results directly + results : + matcherIn; + + // Find primary matches + if ( matcher ) { + matcher( matcherIn, matcherOut, context, xml ); + } + + // Apply postFilter + if ( postFilter ) { + temp = condense( matcherOut, postMap ); + postFilter( temp, [], context, xml ); + + // Un-match failing elements by moving them back to matcherIn + i = temp.length; + while ( i-- ) { + if ( (elem = temp[i]) ) { + matcherOut[ postMap[i] ] = !(matcherIn[ postMap[i] ] = elem); + } + } + } + + if ( seed ) { + if ( postFinder || preFilter ) { + if ( postFinder ) { + // Get the final matcherOut by condensing this intermediate into postFinder contexts + temp = []; + i = matcherOut.length; + while ( i-- ) { + if ( (elem = matcherOut[i]) ) { + // Restore matcherIn since elem is not yet a final match + temp.push( (matcherIn[i] = elem) ); + } + } + postFinder( null, (matcherOut = []), temp, xml ); + } + + // Move matched elements from seed to results to keep them synchronized + i = matcherOut.length; + while ( i-- ) { + if ( (elem = matcherOut[i]) && + (temp = postFinder ? indexOf( seed, elem ) : preMap[i]) > -1 ) { + + seed[temp] = !(results[temp] = elem); + } + } + } + + // Add elements to results, through postFinder if defined + } else { + matcherOut = condense( + matcherOut === results ? + matcherOut.splice( preexisting, matcherOut.length ) : + matcherOut + ); + if ( postFinder ) { + postFinder( null, results, matcherOut, xml ); + } else { + push.apply( results, matcherOut ); + } + } + }); +} + +function matcherFromTokens( tokens ) { + var checkContext, matcher, j, + len = tokens.length, + leadingRelative = Expr.relative[ tokens[0].type ], + implicitRelative = leadingRelative || Expr.relative[" "], + i = leadingRelative ? 1 : 0, + + // The foundational matcher ensures that elements are reachable from top-level context(s) + matchContext = addCombinator( function( elem ) { + return elem === checkContext; + }, implicitRelative, true ), + matchAnyContext = addCombinator( function( elem ) { + return indexOf( checkContext, elem ) > -1; + }, implicitRelative, true ), + matchers = [ function( elem, context, xml ) { + var ret = ( !leadingRelative && ( xml || context !== outermostContext ) ) || ( + (checkContext = context).nodeType ? + matchContext( elem, context, xml ) : + matchAnyContext( elem, context, xml ) ); + // Avoid hanging onto element (issue #299) + checkContext = null; + return ret; + } ]; + + for ( ; i < len; i++ ) { + if ( (matcher = Expr.relative[ tokens[i].type ]) ) { + matchers = [ addCombinator(elementMatcher( matchers ), matcher) ]; + } else { + matcher = Expr.filter[ tokens[i].type ].apply( null, tokens[i].matches ); + + // Return special upon seeing a positional matcher + if ( matcher[ expando ] ) { + // Find the next relative operator (if any) for proper handling + j = ++i; + for ( ; j < len; j++ ) { + if ( Expr.relative[ tokens[j].type ] ) { + break; + } + } + return setMatcher( + i > 1 && elementMatcher( matchers ), + i > 1 && toSelector( + // If the preceding token was a descendant combinator, insert an implicit any-element `*` + tokens.slice( 0, i - 1 ).concat({ value: tokens[ i - 2 ].type === " " ? "*" : "" }) + ).replace( rtrim, "$1" ), + matcher, + i < j && matcherFromTokens( tokens.slice( i, j ) ), + j < len && matcherFromTokens( (tokens = tokens.slice( j )) ), + j < len && toSelector( tokens ) + ); + } + matchers.push( matcher ); + } + } + + return elementMatcher( matchers ); +} + +function matcherFromGroupMatchers( elementMatchers, setMatchers ) { + var bySet = setMatchers.length > 0, + byElement = elementMatchers.length > 0, + superMatcher = function( seed, context, xml, results, outermost ) { + var elem, j, matcher, + matchedCount = 0, + i = "0", + unmatched = seed && [], + setMatched = [], + contextBackup = outermostContext, + // We must always have either seed elements or outermost context + elems = seed || byElement && Expr.find["TAG"]( "*", outermost ), + // Use integer dirruns iff this is the outermost matcher + dirrunsUnique = (dirruns += contextBackup == null ? 1 : Math.random() || 0.1), + len = elems.length; + + if ( outermost ) { + outermostContext = context === document || context || outermost; + } + + // Add elements passing elementMatchers directly to results + // Support: IE<9, Safari + // Tolerate NodeList properties (IE: "length"; Safari: ) matching elements by id + for ( ; i !== len && (elem = elems[i]) != null; i++ ) { + if ( byElement && elem ) { + j = 0; + if ( !context && elem.ownerDocument !== document ) { + setDocument( elem ); + xml = !documentIsHTML; + } + while ( (matcher = elementMatchers[j++]) ) { + if ( matcher( elem, context || document, xml) ) { + results.push( elem ); + break; + } + } + if ( outermost ) { + dirruns = dirrunsUnique; + } + } + + // Track unmatched elements for set filters + if ( bySet ) { + // They will have gone through all possible matchers + if ( (elem = !matcher && elem) ) { + matchedCount--; + } + + // Lengthen the array for every element, matched or not + if ( seed ) { + unmatched.push( elem ); + } + } + } + + // `i` is now the count of elements visited above, and adding it to `matchedCount` + // makes the latter nonnegative. + matchedCount += i; + + // Apply set filters to unmatched elements + // NOTE: This can be skipped if there are no unmatched elements (i.e., `matchedCount` + // equals `i`), unless we didn't visit _any_ elements in the above loop because we have + // no element matchers and no seed. + // Incrementing an initially-string "0" `i` allows `i` to remain a string only in that + // case, which will result in a "00" `matchedCount` that differs from `i` but is also + // numerically zero. + if ( bySet && i !== matchedCount ) { + j = 0; + while ( (matcher = setMatchers[j++]) ) { + matcher( unmatched, setMatched, context, xml ); + } + + if ( seed ) { + // Reintegrate element matches to eliminate the need for sorting + if ( matchedCount > 0 ) { + while ( i-- ) { + if ( !(unmatched[i] || setMatched[i]) ) { + setMatched[i] = pop.call( results ); + } + } + } + + // Discard index placeholder values to get only actual matches + setMatched = condense( setMatched ); + } + + // Add matches to results + push.apply( results, setMatched ); + + // Seedless set matches succeeding multiple successful matchers stipulate sorting + if ( outermost && !seed && setMatched.length > 0 && + ( matchedCount + setMatchers.length ) > 1 ) { + + Sizzle.uniqueSort( results ); + } + } + + // Override manipulation of globals by nested matchers + if ( outermost ) { + dirruns = dirrunsUnique; + outermostContext = contextBackup; + } + + return unmatched; + }; + + return bySet ? + markFunction( superMatcher ) : + superMatcher; +} + +compile = Sizzle.compile = function( selector, match /* Internal Use Only */ ) { + var i, + setMatchers = [], + elementMatchers = [], + cached = compilerCache[ selector + " " ]; + + if ( !cached ) { + // Generate a function of recursive functions that can be used to check each element + if ( !match ) { + match = tokenize( selector ); + } + i = match.length; + while ( i-- ) { + cached = matcherFromTokens( match[i] ); + if ( cached[ expando ] ) { + setMatchers.push( cached ); + } else { + elementMatchers.push( cached ); + } + } + + // Cache the compiled function + cached = compilerCache( selector, matcherFromGroupMatchers( elementMatchers, setMatchers ) ); + + // Save selector and tokenization + cached.selector = selector; + } + return cached; +}; + +/** + * A low-level selection function that works with Sizzle's compiled + * selector functions + * @param {String|Function} selector A selector or a pre-compiled + * selector function built with Sizzle.compile + * @param {Element} context + * @param {Array} [results] + * @param {Array} [seed] A set of elements to match against + */ +select = Sizzle.select = function( selector, context, results, seed ) { + var i, tokens, token, type, find, + compiled = typeof selector === "function" && selector, + match = !seed && tokenize( (selector = compiled.selector || selector) ); + + results = results || []; + + // Try to minimize operations if there is only one selector in the list and no seed + // (the latter of which guarantees us context) + if ( match.length === 1 ) { + + // Reduce context if the leading compound selector is an ID + tokens = match[0] = match[0].slice( 0 ); + if ( tokens.length > 2 && (token = tokens[0]).type === "ID" && + support.getById && context.nodeType === 9 && documentIsHTML && + Expr.relative[ tokens[1].type ] ) { + + context = ( Expr.find["ID"]( token.matches[0].replace(runescape, funescape), context ) || [] )[0]; + if ( !context ) { + return results; + + // Precompiled matchers will still verify ancestry, so step up a level + } else if ( compiled ) { + context = context.parentNode; + } + + selector = selector.slice( tokens.shift().value.length ); + } + + // Fetch a seed set for right-to-left matching + i = matchExpr["needsContext"].test( selector ) ? 0 : tokens.length; + while ( i-- ) { + token = tokens[i]; + + // Abort if we hit a combinator + if ( Expr.relative[ (type = token.type) ] ) { + break; + } + if ( (find = Expr.find[ type ]) ) { + // Search, expanding context for leading sibling combinators + if ( (seed = find( + token.matches[0].replace( runescape, funescape ), + rsibling.test( tokens[0].type ) && testContext( context.parentNode ) || context + )) ) { + + // If seed is empty or no tokens remain, we can return early + tokens.splice( i, 1 ); + selector = seed.length && toSelector( tokens ); + if ( !selector ) { + push.apply( results, seed ); + return results; + } + + break; + } + } + } + } + + // Compile and execute a filtering function if one is not provided + // Provide `match` to avoid retokenization if we modified the selector above + ( compiled || compile( selector, match ) )( + seed, + context, + !documentIsHTML, + results, + !context || rsibling.test( selector ) && testContext( context.parentNode ) || context + ); + return results; +}; + +// One-time assignments + +// Sort stability +support.sortStable = expando.split("").sort( sortOrder ).join("") === expando; + +// Support: Chrome 14-35+ +// Always assume duplicates if they aren't passed to the comparison function +support.detectDuplicates = !!hasDuplicate; + +// Initialize against the default document +setDocument(); + +// Support: Webkit<537.32 - Safari 6.0.3/Chrome 25 (fixed in Chrome 27) +// Detached nodes confoundingly follow *each other* +support.sortDetached = assert(function( div1 ) { + // Should return 1, but returns 4 (following) + return div1.compareDocumentPosition( document.createElement("div") ) & 1; +}); + +// Support: IE<8 +// Prevent attribute/property "interpolation" +// http://msdn.microsoft.com/en-us/library/ms536429%28VS.85%29.aspx +if ( !assert(function( div ) { + div.innerHTML = ""; + return div.firstChild.getAttribute("href") === "#" ; +}) ) { + addHandle( "type|href|height|width", function( elem, name, isXML ) { + if ( !isXML ) { + return elem.getAttribute( name, name.toLowerCase() === "type" ? 1 : 2 ); + } + }); +} + +// Support: IE<9 +// Use defaultValue in place of getAttribute("value") +if ( !support.attributes || !assert(function( div ) { + div.innerHTML = ""; + div.firstChild.setAttribute( "value", "" ); + return div.firstChild.getAttribute( "value" ) === ""; +}) ) { + addHandle( "value", function( elem, name, isXML ) { + if ( !isXML && elem.nodeName.toLowerCase() === "input" ) { + return elem.defaultValue; + } + }); +} + +// Support: IE<9 +// Use getAttributeNode to fetch booleans when getAttribute lies +if ( !assert(function( div ) { + return div.getAttribute("disabled") == null; +}) ) { + addHandle( booleans, function( elem, name, isXML ) { + var val; + if ( !isXML ) { + return elem[ name ] === true ? name.toLowerCase() : + (val = elem.getAttributeNode( name )) && val.specified ? + val.value : + null; + } + }); +} + +return Sizzle; + +})( window ); + + + +jQuery.find = Sizzle; +jQuery.expr = Sizzle.selectors; +jQuery.expr[ ":" ] = jQuery.expr.pseudos; +jQuery.uniqueSort = jQuery.unique = Sizzle.uniqueSort; +jQuery.text = Sizzle.getText; +jQuery.isXMLDoc = Sizzle.isXML; +jQuery.contains = Sizzle.contains; + + + +var dir = function( elem, dir, until ) { + var matched = [], + truncate = until !== undefined; + + while ( ( elem = elem[ dir ] ) && elem.nodeType !== 9 ) { + if ( elem.nodeType === 1 ) { + if ( truncate && jQuery( elem ).is( until ) ) { + break; + } + matched.push( elem ); + } + } + return matched; +}; + + +var siblings = function( n, elem ) { + var matched = []; + + for ( ; n; n = n.nextSibling ) { + if ( n.nodeType === 1 && n !== elem ) { + matched.push( n ); + } + } + + return matched; +}; + + +var rneedsContext = jQuery.expr.match.needsContext; + +var rsingleTag = ( /^<([\w-]+)\s*\/?>(?:<\/\1>|)$/ ); + + + +var risSimple = /^.[^:#\[\.,]*$/; + +// Implement the identical functionality for filter and not +function winnow( elements, qualifier, not ) { + if ( jQuery.isFunction( qualifier ) ) { + return jQuery.grep( elements, function( elem, i ) { + /* jshint -W018 */ + return !!qualifier.call( elem, i, elem ) !== not; + } ); + + } + + if ( qualifier.nodeType ) { + return jQuery.grep( elements, function( elem ) { + return ( elem === qualifier ) !== not; + } ); + + } + + if ( typeof qualifier === "string" ) { + if ( risSimple.test( qualifier ) ) { + return jQuery.filter( qualifier, elements, not ); + } + + qualifier = jQuery.filter( qualifier, elements ); + } + + return jQuery.grep( elements, function( elem ) { + return ( jQuery.inArray( elem, qualifier ) > -1 ) !== not; + } ); +} + +jQuery.filter = function( expr, elems, not ) { + var elem = elems[ 0 ]; + + if ( not ) { + expr = ":not(" + expr + ")"; + } + + return elems.length === 1 && elem.nodeType === 1 ? + jQuery.find.matchesSelector( elem, expr ) ? [ elem ] : [] : + jQuery.find.matches( expr, jQuery.grep( elems, function( elem ) { + return elem.nodeType === 1; + } ) ); +}; + +jQuery.fn.extend( { + find: function( selector ) { + var i, + ret = [], + self = this, + len = self.length; + + if ( typeof selector !== "string" ) { + return this.pushStack( jQuery( selector ).filter( function() { + for ( i = 0; i < len; i++ ) { + if ( jQuery.contains( self[ i ], this ) ) { + return true; + } + } + } ) ); + } + + for ( i = 0; i < len; i++ ) { + jQuery.find( selector, self[ i ], ret ); + } + + // Needed because $( selector, context ) becomes $( context ).find( selector ) + ret = this.pushStack( len > 1 ? jQuery.unique( ret ) : ret ); + ret.selector = this.selector ? this.selector + " " + selector : selector; + return ret; + }, + filter: function( selector ) { + return this.pushStack( winnow( this, selector || [], false ) ); + }, + not: function( selector ) { + return this.pushStack( winnow( this, selector || [], true ) ); + }, + is: function( selector ) { + return !!winnow( + this, + + // If this is a positional/relative selector, check membership in the returned set + // so $("p:first").is("p:last") won't return true for a doc with two "p". + typeof selector === "string" && rneedsContext.test( selector ) ? + jQuery( selector ) : + selector || [], + false + ).length; + } +} ); + + +// Initialize a jQuery object + + +// A central reference to the root jQuery(document) +var rootjQuery, + + // A simple way to check for HTML strings + // Prioritize #id over to avoid XSS via location.hash (#9521) + // Strict HTML recognition (#11290: must start with <) + rquickExpr = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/, + + init = jQuery.fn.init = function( selector, context, root ) { + var match, elem; + + // HANDLE: $(""), $(null), $(undefined), $(false) + if ( !selector ) { + return this; + } + + // init accepts an alternate rootjQuery + // so migrate can support jQuery.sub (gh-2101) + root = root || rootjQuery; + + // Handle HTML strings + if ( typeof selector === "string" ) { + if ( selector.charAt( 0 ) === "<" && + selector.charAt( selector.length - 1 ) === ">" && + selector.length >= 3 ) { + + // Assume that strings that start and end with <> are HTML and skip the regex check + match = [ null, selector, null ]; + + } else { + match = rquickExpr.exec( selector ); + } + + // Match html or make sure no context is specified for #id + if ( match && ( match[ 1 ] || !context ) ) { + + // HANDLE: $(html) -> $(array) + if ( match[ 1 ] ) { + context = context instanceof jQuery ? context[ 0 ] : context; + + // scripts is true for back-compat + // Intentionally let the error be thrown if parseHTML is not present + jQuery.merge( this, jQuery.parseHTML( + match[ 1 ], + context && context.nodeType ? context.ownerDocument || context : document, + true + ) ); + + // HANDLE: $(html, props) + if ( rsingleTag.test( match[ 1 ] ) && jQuery.isPlainObject( context ) ) { + for ( match in context ) { + + // Properties of context are called as methods if possible + if ( jQuery.isFunction( this[ match ] ) ) { + this[ match ]( context[ match ] ); + + // ...and otherwise set as attributes + } else { + this.attr( match, context[ match ] ); + } + } + } + + return this; + + // HANDLE: $(#id) + } else { + elem = document.getElementById( match[ 2 ] ); + + // Check parentNode to catch when Blackberry 4.6 returns + // nodes that are no longer in the document #6963 + if ( elem && elem.parentNode ) { + + // Handle the case where IE and Opera return items + // by name instead of ID + if ( elem.id !== match[ 2 ] ) { + return rootjQuery.find( selector ); + } + + // Otherwise, we inject the element directly into the jQuery object + this.length = 1; + this[ 0 ] = elem; + } + + this.context = document; + this.selector = selector; + return this; + } + + // HANDLE: $(expr, $(...)) + } else if ( !context || context.jquery ) { + return ( context || root ).find( selector ); + + // HANDLE: $(expr, context) + // (which is just equivalent to: $(context).find(expr) + } else { + return this.constructor( context ).find( selector ); + } + + // HANDLE: $(DOMElement) + } else if ( selector.nodeType ) { + this.context = this[ 0 ] = selector; + this.length = 1; + return this; + + // HANDLE: $(function) + // Shortcut for document ready + } else if ( jQuery.isFunction( selector ) ) { + return typeof root.ready !== "undefined" ? + root.ready( selector ) : + + // Execute immediately if ready is not present + selector( jQuery ); + } + + if ( selector.selector !== undefined ) { + this.selector = selector.selector; + this.context = selector.context; + } + + return jQuery.makeArray( selector, this ); + }; + +// Give the init function the jQuery prototype for later instantiation +init.prototype = jQuery.fn; + +// Initialize central reference +rootjQuery = jQuery( document ); + + +var rparentsprev = /^(?:parents|prev(?:Until|All))/, + + // methods guaranteed to produce a unique set when starting from a unique set + guaranteedUnique = { + children: true, + contents: true, + next: true, + prev: true + }; + +jQuery.fn.extend( { + has: function( target ) { + var i, + targets = jQuery( target, this ), + len = targets.length; + + return this.filter( function() { + for ( i = 0; i < len; i++ ) { + if ( jQuery.contains( this, targets[ i ] ) ) { + return true; + } + } + } ); + }, + + closest: function( selectors, context ) { + var cur, + i = 0, + l = this.length, + matched = [], + pos = rneedsContext.test( selectors ) || typeof selectors !== "string" ? + jQuery( selectors, context || this.context ) : + 0; + + for ( ; i < l; i++ ) { + for ( cur = this[ i ]; cur && cur !== context; cur = cur.parentNode ) { + + // Always skip document fragments + if ( cur.nodeType < 11 && ( pos ? + pos.index( cur ) > -1 : + + // Don't pass non-elements to Sizzle + cur.nodeType === 1 && + jQuery.find.matchesSelector( cur, selectors ) ) ) { + + matched.push( cur ); + break; + } + } + } + + return this.pushStack( matched.length > 1 ? jQuery.uniqueSort( matched ) : matched ); + }, + + // Determine the position of an element within + // the matched set of elements + index: function( elem ) { + + // No argument, return index in parent + if ( !elem ) { + return ( this[ 0 ] && this[ 0 ].parentNode ) ? this.first().prevAll().length : -1; + } + + // index in selector + if ( typeof elem === "string" ) { + return jQuery.inArray( this[ 0 ], jQuery( elem ) ); + } + + // Locate the position of the desired element + return jQuery.inArray( + + // If it receives a jQuery object, the first element is used + elem.jquery ? elem[ 0 ] : elem, this ); + }, + + add: function( selector, context ) { + return this.pushStack( + jQuery.uniqueSort( + jQuery.merge( this.get(), jQuery( selector, context ) ) + ) + ); + }, + + addBack: function( selector ) { + return this.add( selector == null ? + this.prevObject : this.prevObject.filter( selector ) + ); + } +} ); + +function sibling( cur, dir ) { + do { + cur = cur[ dir ]; + } while ( cur && cur.nodeType !== 1 ); + + return cur; +} + +jQuery.each( { + parent: function( elem ) { + var parent = elem.parentNode; + return parent && parent.nodeType !== 11 ? parent : null; + }, + parents: function( elem ) { + return dir( elem, "parentNode" ); + }, + parentsUntil: function( elem, i, until ) { + return dir( elem, "parentNode", until ); + }, + next: function( elem ) { + return sibling( elem, "nextSibling" ); + }, + prev: function( elem ) { + return sibling( elem, "previousSibling" ); + }, + nextAll: function( elem ) { + return dir( elem, "nextSibling" ); + }, + prevAll: function( elem ) { + return dir( elem, "previousSibling" ); + }, + nextUntil: function( elem, i, until ) { + return dir( elem, "nextSibling", until ); + }, + prevUntil: function( elem, i, until ) { + return dir( elem, "previousSibling", until ); + }, + siblings: function( elem ) { + return siblings( ( elem.parentNode || {} ).firstChild, elem ); + }, + children: function( elem ) { + return siblings( elem.firstChild ); + }, + contents: function( elem ) { + return jQuery.nodeName( elem, "iframe" ) ? + elem.contentDocument || elem.contentWindow.document : + jQuery.merge( [], elem.childNodes ); + } +}, function( name, fn ) { + jQuery.fn[ name ] = function( until, selector ) { + var ret = jQuery.map( this, fn, until ); + + if ( name.slice( -5 ) !== "Until" ) { + selector = until; + } + + if ( selector && typeof selector === "string" ) { + ret = jQuery.filter( selector, ret ); + } + + if ( this.length > 1 ) { + + // Remove duplicates + if ( !guaranteedUnique[ name ] ) { + ret = jQuery.uniqueSort( ret ); + } + + // Reverse order for parents* and prev-derivatives + if ( rparentsprev.test( name ) ) { + ret = ret.reverse(); + } + } + + return this.pushStack( ret ); + }; +} ); +var rnotwhite = ( /\S+/g ); + + + +// Convert String-formatted options into Object-formatted ones +function createOptions( options ) { + var object = {}; + jQuery.each( options.match( rnotwhite ) || [], function( _, flag ) { + object[ flag ] = true; + } ); + return object; +} + +/* + * Create a callback list using the following parameters: + * + * options: an optional list of space-separated options that will change how + * the callback list behaves or a more traditional option object + * + * By default a callback list will act like an event callback list and can be + * "fired" multiple times. + * + * Possible options: + * + * once: will ensure the callback list can only be fired once (like a Deferred) + * + * memory: will keep track of previous values and will call any callback added + * after the list has been fired right away with the latest "memorized" + * values (like a Deferred) + * + * unique: will ensure a callback can only be added once (no duplicate in the list) + * + * stopOnFalse: interrupt callings when a callback returns false + * + */ +jQuery.Callbacks = function( options ) { + + // Convert options from String-formatted to Object-formatted if needed + // (we check in cache first) + options = typeof options === "string" ? + createOptions( options ) : + jQuery.extend( {}, options ); + + var // Flag to know if list is currently firing + firing, + + // Last fire value for non-forgettable lists + memory, + + // Flag to know if list was already fired + fired, + + // Flag to prevent firing + locked, + + // Actual callback list + list = [], + + // Queue of execution data for repeatable lists + queue = [], + + // Index of currently firing callback (modified by add/remove as needed) + firingIndex = -1, + + // Fire callbacks + fire = function() { + + // Enforce single-firing + locked = options.once; + + // Execute callbacks for all pending executions, + // respecting firingIndex overrides and runtime changes + fired = firing = true; + for ( ; queue.length; firingIndex = -1 ) { + memory = queue.shift(); + while ( ++firingIndex < list.length ) { + + // Run callback and check for early termination + if ( list[ firingIndex ].apply( memory[ 0 ], memory[ 1 ] ) === false && + options.stopOnFalse ) { + + // Jump to end and forget the data so .add doesn't re-fire + firingIndex = list.length; + memory = false; + } + } + } + + // Forget the data if we're done with it + if ( !options.memory ) { + memory = false; + } + + firing = false; + + // Clean up if we're done firing for good + if ( locked ) { + + // Keep an empty list if we have data for future add calls + if ( memory ) { + list = []; + + // Otherwise, this object is spent + } else { + list = ""; + } + } + }, + + // Actual Callbacks object + self = { + + // Add a callback or a collection of callbacks to the list + add: function() { + if ( list ) { + + // If we have memory from a past run, we should fire after adding + if ( memory && !firing ) { + firingIndex = list.length - 1; + queue.push( memory ); + } + + ( function add( args ) { + jQuery.each( args, function( _, arg ) { + if ( jQuery.isFunction( arg ) ) { + if ( !options.unique || !self.has( arg ) ) { + list.push( arg ); + } + } else if ( arg && arg.length && jQuery.type( arg ) !== "string" ) { + + // Inspect recursively + add( arg ); + } + } ); + } )( arguments ); + + if ( memory && !firing ) { + fire(); + } + } + return this; + }, + + // Remove a callback from the list + remove: function() { + jQuery.each( arguments, function( _, arg ) { + var index; + while ( ( index = jQuery.inArray( arg, list, index ) ) > -1 ) { + list.splice( index, 1 ); + + // Handle firing indexes + if ( index <= firingIndex ) { + firingIndex--; + } + } + } ); + return this; + }, + + // Check if a given callback is in the list. + // If no argument is given, return whether or not list has callbacks attached. + has: function( fn ) { + return fn ? + jQuery.inArray( fn, list ) > -1 : + list.length > 0; + }, + + // Remove all callbacks from the list + empty: function() { + if ( list ) { + list = []; + } + return this; + }, + + // Disable .fire and .add + // Abort any current/pending executions + // Clear all callbacks and values + disable: function() { + locked = queue = []; + list = memory = ""; + return this; + }, + disabled: function() { + return !list; + }, + + // Disable .fire + // Also disable .add unless we have memory (since it would have no effect) + // Abort any pending executions + lock: function() { + locked = true; + if ( !memory ) { + self.disable(); + } + return this; + }, + locked: function() { + return !!locked; + }, + + // Call all callbacks with the given context and arguments + fireWith: function( context, args ) { + if ( !locked ) { + args = args || []; + args = [ context, args.slice ? args.slice() : args ]; + queue.push( args ); + if ( !firing ) { + fire(); + } + } + return this; + }, + + // Call all the callbacks with the given arguments + fire: function() { + self.fireWith( this, arguments ); + return this; + }, + + // To know if the callbacks have already been called at least once + fired: function() { + return !!fired; + } + }; + + return self; +}; + + +jQuery.extend( { + + Deferred: function( func ) { + var tuples = [ + + // action, add listener, listener list, final state + [ "resolve", "done", jQuery.Callbacks( "once memory" ), "resolved" ], + [ "reject", "fail", jQuery.Callbacks( "once memory" ), "rejected" ], + [ "notify", "progress", jQuery.Callbacks( "memory" ) ] + ], + state = "pending", + promise = { + state: function() { + return state; + }, + always: function() { + deferred.done( arguments ).fail( arguments ); + return this; + }, + then: function( /* fnDone, fnFail, fnProgress */ ) { + var fns = arguments; + return jQuery.Deferred( function( newDefer ) { + jQuery.each( tuples, function( i, tuple ) { + var fn = jQuery.isFunction( fns[ i ] ) && fns[ i ]; + + // deferred[ done | fail | progress ] for forwarding actions to newDefer + deferred[ tuple[ 1 ] ]( function() { + var returned = fn && fn.apply( this, arguments ); + if ( returned && jQuery.isFunction( returned.promise ) ) { + returned.promise() + .progress( newDefer.notify ) + .done( newDefer.resolve ) + .fail( newDefer.reject ); + } else { + newDefer[ tuple[ 0 ] + "With" ]( + this === promise ? newDefer.promise() : this, + fn ? [ returned ] : arguments + ); + } + } ); + } ); + fns = null; + } ).promise(); + }, + + // Get a promise for this deferred + // If obj is provided, the promise aspect is added to the object + promise: function( obj ) { + return obj != null ? jQuery.extend( obj, promise ) : promise; + } + }, + deferred = {}; + + // Keep pipe for back-compat + promise.pipe = promise.then; + + // Add list-specific methods + jQuery.each( tuples, function( i, tuple ) { + var list = tuple[ 2 ], + stateString = tuple[ 3 ]; + + // promise[ done | fail | progress ] = list.add + promise[ tuple[ 1 ] ] = list.add; + + // Handle state + if ( stateString ) { + list.add( function() { + + // state = [ resolved | rejected ] + state = stateString; + + // [ reject_list | resolve_list ].disable; progress_list.lock + }, tuples[ i ^ 1 ][ 2 ].disable, tuples[ 2 ][ 2 ].lock ); + } + + // deferred[ resolve | reject | notify ] + deferred[ tuple[ 0 ] ] = function() { + deferred[ tuple[ 0 ] + "With" ]( this === deferred ? promise : this, arguments ); + return this; + }; + deferred[ tuple[ 0 ] + "With" ] = list.fireWith; + } ); + + // Make the deferred a promise + promise.promise( deferred ); + + // Call given func if any + if ( func ) { + func.call( deferred, deferred ); + } + + // All done! + return deferred; + }, + + // Deferred helper + when: function( subordinate /* , ..., subordinateN */ ) { + var i = 0, + resolveValues = slice.call( arguments ), + length = resolveValues.length, + + // the count of uncompleted subordinates + remaining = length !== 1 || + ( subordinate && jQuery.isFunction( subordinate.promise ) ) ? length : 0, + + // the master Deferred. + // If resolveValues consist of only a single Deferred, just use that. + deferred = remaining === 1 ? subordinate : jQuery.Deferred(), + + // Update function for both resolve and progress values + updateFunc = function( i, contexts, values ) { + return function( value ) { + contexts[ i ] = this; + values[ i ] = arguments.length > 1 ? slice.call( arguments ) : value; + if ( values === progressValues ) { + deferred.notifyWith( contexts, values ); + + } else if ( !( --remaining ) ) { + deferred.resolveWith( contexts, values ); + } + }; + }, + + progressValues, progressContexts, resolveContexts; + + // add listeners to Deferred subordinates; treat others as resolved + if ( length > 1 ) { + progressValues = new Array( length ); + progressContexts = new Array( length ); + resolveContexts = new Array( length ); + for ( ; i < length; i++ ) { + if ( resolveValues[ i ] && jQuery.isFunction( resolveValues[ i ].promise ) ) { + resolveValues[ i ].promise() + .progress( updateFunc( i, progressContexts, progressValues ) ) + .done( updateFunc( i, resolveContexts, resolveValues ) ) + .fail( deferred.reject ); + } else { + --remaining; + } + } + } + + // if we're not waiting on anything, resolve the master + if ( !remaining ) { + deferred.resolveWith( resolveContexts, resolveValues ); + } + + return deferred.promise(); + } +} ); + + +// The deferred used on DOM ready +var readyList; + +jQuery.fn.ready = function( fn ) { + + // Add the callback + jQuery.ready.promise().done( fn ); + + return this; +}; + +jQuery.extend( { + + // Is the DOM ready to be used? Set to true once it occurs. + isReady: false, + + // A counter to track how many items to wait for before + // the ready event fires. See #6781 + readyWait: 1, + + // Hold (or release) the ready event + holdReady: function( hold ) { + if ( hold ) { + jQuery.readyWait++; + } else { + jQuery.ready( true ); + } + }, + + // Handle when the DOM is ready + ready: function( wait ) { + + // Abort if there are pending holds or we're already ready + if ( wait === true ? --jQuery.readyWait : jQuery.isReady ) { + return; + } + + // Remember that the DOM is ready + jQuery.isReady = true; + + // If a normal DOM Ready event fired, decrement, and wait if need be + if ( wait !== true && --jQuery.readyWait > 0 ) { + return; + } + + // If there are functions bound, to execute + readyList.resolveWith( document, [ jQuery ] ); + + // Trigger any bound ready events + if ( jQuery.fn.triggerHandler ) { + jQuery( document ).triggerHandler( "ready" ); + jQuery( document ).off( "ready" ); + } + } +} ); + +/** + * Clean-up method for dom ready events + */ +function detach() { + if ( document.addEventListener ) { + document.removeEventListener( "DOMContentLoaded", completed ); + window.removeEventListener( "load", completed ); + + } else { + document.detachEvent( "onreadystatechange", completed ); + window.detachEvent( "onload", completed ); + } +} + +/** + * The ready event handler and self cleanup method + */ +function completed() { + + // readyState === "complete" is good enough for us to call the dom ready in oldIE + if ( document.addEventListener || + window.event.type === "load" || + document.readyState === "complete" ) { + + detach(); + jQuery.ready(); + } +} + +jQuery.ready.promise = function( obj ) { + if ( !readyList ) { + + readyList = jQuery.Deferred(); + + // Catch cases where $(document).ready() is called + // after the browser event has already occurred. + // Support: IE6-10 + // Older IE sometimes signals "interactive" too soon + if ( document.readyState === "complete" || + ( document.readyState !== "loading" && !document.documentElement.doScroll ) ) { + + // Handle it asynchronously to allow scripts the opportunity to delay ready + window.setTimeout( jQuery.ready ); + + // Standards-based browsers support DOMContentLoaded + } else if ( document.addEventListener ) { + + // Use the handy event callback + document.addEventListener( "DOMContentLoaded", completed ); + + // A fallback to window.onload, that will always work + window.addEventListener( "load", completed ); + + // If IE event model is used + } else { + + // Ensure firing before onload, maybe late but safe also for iframes + document.attachEvent( "onreadystatechange", completed ); + + // A fallback to window.onload, that will always work + window.attachEvent( "onload", completed ); + + // If IE and not a frame + // continually check to see if the document is ready + var top = false; + + try { + top = window.frameElement == null && document.documentElement; + } catch ( e ) {} + + if ( top && top.doScroll ) { + ( function doScrollCheck() { + if ( !jQuery.isReady ) { + + try { + + // Use the trick by Diego Perini + // http://javascript.nwbox.com/IEContentLoaded/ + top.doScroll( "left" ); + } catch ( e ) { + return window.setTimeout( doScrollCheck, 50 ); + } + + // detach all dom ready events + detach(); + + // and execute any waiting functions + jQuery.ready(); + } + } )(); + } + } + } + return readyList.promise( obj ); +}; + +// Kick off the DOM ready check even if the user does not +jQuery.ready.promise(); + + + + +// Support: IE<9 +// Iteration over object's inherited properties before its own +var i; +for ( i in jQuery( support ) ) { + break; +} +support.ownFirst = i === "0"; + +// Note: most support tests are defined in their respective modules. +// false until the test is run +support.inlineBlockNeedsLayout = false; + +// Execute ASAP in case we need to set body.style.zoom +jQuery( function() { + + // Minified: var a,b,c,d + var val, div, body, container; + + body = document.getElementsByTagName( "body" )[ 0 ]; + if ( !body || !body.style ) { + + // Return for frameset docs that don't have a body + return; + } + + // Setup + div = document.createElement( "div" ); + container = document.createElement( "div" ); + container.style.cssText = "position:absolute;border:0;width:0;height:0;top:0;left:-9999px"; + body.appendChild( container ).appendChild( div ); + + if ( typeof div.style.zoom !== "undefined" ) { + + // Support: IE<8 + // Check if natively block-level elements act like inline-block + // elements when setting their display to 'inline' and giving + // them layout + div.style.cssText = "display:inline;margin:0;border:0;padding:1px;width:1px;zoom:1"; + + support.inlineBlockNeedsLayout = val = div.offsetWidth === 3; + if ( val ) { + + // Prevent IE 6 from affecting layout for positioned elements #11048 + // Prevent IE from shrinking the body in IE 7 mode #12869 + // Support: IE<8 + body.style.zoom = 1; + } + } + + body.removeChild( container ); +} ); + + +( function() { + var div = document.createElement( "div" ); + + // Support: IE<9 + support.deleteExpando = true; + try { + delete div.test; + } catch ( e ) { + support.deleteExpando = false; + } + + // Null elements to avoid leaks in IE. + div = null; +} )(); +var acceptData = function( elem ) { + var noData = jQuery.noData[ ( elem.nodeName + " " ).toLowerCase() ], + nodeType = +elem.nodeType || 1; + + // Do not set data on non-element DOM nodes because it will not be cleared (#8335). + return nodeType !== 1 && nodeType !== 9 ? + false : + + // Nodes accept data unless otherwise specified; rejection can be conditional + !noData || noData !== true && elem.getAttribute( "classid" ) === noData; +}; + + + + +var rbrace = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/, + rmultiDash = /([A-Z])/g; + +function dataAttr( elem, key, data ) { + + // If nothing was found internally, try to fetch any + // data from the HTML5 data-* attribute + if ( data === undefined && elem.nodeType === 1 ) { + + var name = "data-" + key.replace( rmultiDash, "-$1" ).toLowerCase(); + + data = elem.getAttribute( name ); + + if ( typeof data === "string" ) { + try { + data = data === "true" ? true : + data === "false" ? false : + data === "null" ? null : + + // Only convert to a number if it doesn't change the string + +data + "" === data ? +data : + rbrace.test( data ) ? jQuery.parseJSON( data ) : + data; + } catch ( e ) {} + + // Make sure we set the data so it isn't changed later + jQuery.data( elem, key, data ); + + } else { + data = undefined; + } + } + + return data; +} + +// checks a cache object for emptiness +function isEmptyDataObject( obj ) { + var name; + for ( name in obj ) { + + // if the public data object is empty, the private is still empty + if ( name === "data" && jQuery.isEmptyObject( obj[ name ] ) ) { + continue; + } + if ( name !== "toJSON" ) { + return false; + } + } + + return true; +} + +function internalData( elem, name, data, pvt /* Internal Use Only */ ) { + if ( !acceptData( elem ) ) { + return; + } + + var ret, thisCache, + internalKey = jQuery.expando, + + // We have to handle DOM nodes and JS objects differently because IE6-7 + // can't GC object references properly across the DOM-JS boundary + isNode = elem.nodeType, + + // Only DOM nodes need the global jQuery cache; JS object data is + // attached directly to the object so GC can occur automatically + cache = isNode ? jQuery.cache : elem, + + // Only defining an ID for JS objects if its cache already exists allows + // the code to shortcut on the same path as a DOM node with no cache + id = isNode ? elem[ internalKey ] : elem[ internalKey ] && internalKey; + + // Avoid doing any more work than we need to when trying to get data on an + // object that has no data at all + if ( ( !id || !cache[ id ] || ( !pvt && !cache[ id ].data ) ) && + data === undefined && typeof name === "string" ) { + return; + } + + if ( !id ) { + + // Only DOM nodes need a new unique ID for each element since their data + // ends up in the global cache + if ( isNode ) { + id = elem[ internalKey ] = deletedIds.pop() || jQuery.guid++; + } else { + id = internalKey; + } + } + + if ( !cache[ id ] ) { + + // Avoid exposing jQuery metadata on plain JS objects when the object + // is serialized using JSON.stringify + cache[ id ] = isNode ? {} : { toJSON: jQuery.noop }; + } + + // An object can be passed to jQuery.data instead of a key/value pair; this gets + // shallow copied over onto the existing cache + if ( typeof name === "object" || typeof name === "function" ) { + if ( pvt ) { + cache[ id ] = jQuery.extend( cache[ id ], name ); + } else { + cache[ id ].data = jQuery.extend( cache[ id ].data, name ); + } + } + + thisCache = cache[ id ]; + + // jQuery data() is stored in a separate object inside the object's internal data + // cache in order to avoid key collisions between internal data and user-defined + // data. + if ( !pvt ) { + if ( !thisCache.data ) { + thisCache.data = {}; + } + + thisCache = thisCache.data; + } + + if ( data !== undefined ) { + thisCache[ jQuery.camelCase( name ) ] = data; + } + + // Check for both converted-to-camel and non-converted data property names + // If a data property was specified + if ( typeof name === "string" ) { + + // First Try to find as-is property data + ret = thisCache[ name ]; + + // Test for null|undefined property data + if ( ret == null ) { + + // Try to find the camelCased property + ret = thisCache[ jQuery.camelCase( name ) ]; + } + } else { + ret = thisCache; + } + + return ret; +} + +function internalRemoveData( elem, name, pvt ) { + if ( !acceptData( elem ) ) { + return; + } + + var thisCache, i, + isNode = elem.nodeType, + + // See jQuery.data for more information + cache = isNode ? jQuery.cache : elem, + id = isNode ? elem[ jQuery.expando ] : jQuery.expando; + + // If there is already no cache entry for this object, there is no + // purpose in continuing + if ( !cache[ id ] ) { + return; + } + + if ( name ) { + + thisCache = pvt ? cache[ id ] : cache[ id ].data; + + if ( thisCache ) { + + // Support array or space separated string names for data keys + if ( !jQuery.isArray( name ) ) { + + // try the string as a key before any manipulation + if ( name in thisCache ) { + name = [ name ]; + } else { + + // split the camel cased version by spaces unless a key with the spaces exists + name = jQuery.camelCase( name ); + if ( name in thisCache ) { + name = [ name ]; + } else { + name = name.split( " " ); + } + } + } else { + + // If "name" is an array of keys... + // When data is initially created, via ("key", "val") signature, + // keys will be converted to camelCase. + // Since there is no way to tell _how_ a key was added, remove + // both plain key and camelCase key. #12786 + // This will only penalize the array argument path. + name = name.concat( jQuery.map( name, jQuery.camelCase ) ); + } + + i = name.length; + while ( i-- ) { + delete thisCache[ name[ i ] ]; + } + + // If there is no data left in the cache, we want to continue + // and let the cache object itself get destroyed + if ( pvt ? !isEmptyDataObject( thisCache ) : !jQuery.isEmptyObject( thisCache ) ) { + return; + } + } + } + + // See jQuery.data for more information + if ( !pvt ) { + delete cache[ id ].data; + + // Don't destroy the parent cache unless the internal data object + // had been the only thing left in it + if ( !isEmptyDataObject( cache[ id ] ) ) { + return; + } + } + + // Destroy the cache + if ( isNode ) { + jQuery.cleanData( [ elem ], true ); + + // Use delete when supported for expandos or `cache` is not a window per isWindow (#10080) + /* jshint eqeqeq: false */ + } else if ( support.deleteExpando || cache != cache.window ) { + /* jshint eqeqeq: true */ + delete cache[ id ]; + + // When all else fails, undefined + } else { + cache[ id ] = undefined; + } +} + +jQuery.extend( { + cache: {}, + + // The following elements (space-suffixed to avoid Object.prototype collisions) + // throw uncatchable exceptions if you attempt to set expando properties + noData: { + "applet ": true, + "embed ": true, + + // ...but Flash objects (which have this classid) *can* handle expandos + "object ": "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" + }, + + hasData: function( elem ) { + elem = elem.nodeType ? jQuery.cache[ elem[ jQuery.expando ] ] : elem[ jQuery.expando ]; + return !!elem && !isEmptyDataObject( elem ); + }, + + data: function( elem, name, data ) { + return internalData( elem, name, data ); + }, + + removeData: function( elem, name ) { + return internalRemoveData( elem, name ); + }, + + // For internal use only. + _data: function( elem, name, data ) { + return internalData( elem, name, data, true ); + }, + + _removeData: function( elem, name ) { + return internalRemoveData( elem, name, true ); + } +} ); + +jQuery.fn.extend( { + data: function( key, value ) { + var i, name, data, + elem = this[ 0 ], + attrs = elem && elem.attributes; + + // Special expections of .data basically thwart jQuery.access, + // so implement the relevant behavior ourselves + + // Gets all values + if ( key === undefined ) { + if ( this.length ) { + data = jQuery.data( elem ); + + if ( elem.nodeType === 1 && !jQuery._data( elem, "parsedAttrs" ) ) { + i = attrs.length; + while ( i-- ) { + + // Support: IE11+ + // The attrs elements can be null (#14894) + if ( attrs[ i ] ) { + name = attrs[ i ].name; + if ( name.indexOf( "data-" ) === 0 ) { + name = jQuery.camelCase( name.slice( 5 ) ); + dataAttr( elem, name, data[ name ] ); + } + } + } + jQuery._data( elem, "parsedAttrs", true ); + } + } + + return data; + } + + // Sets multiple values + if ( typeof key === "object" ) { + return this.each( function() { + jQuery.data( this, key ); + } ); + } + + return arguments.length > 1 ? + + // Sets one value + this.each( function() { + jQuery.data( this, key, value ); + } ) : + + // Gets one value + // Try to fetch any internally stored data first + elem ? dataAttr( elem, key, jQuery.data( elem, key ) ) : undefined; + }, + + removeData: function( key ) { + return this.each( function() { + jQuery.removeData( this, key ); + } ); + } +} ); + + +jQuery.extend( { + queue: function( elem, type, data ) { + var queue; + + if ( elem ) { + type = ( type || "fx" ) + "queue"; + queue = jQuery._data( elem, type ); + + // Speed up dequeue by getting out quickly if this is just a lookup + if ( data ) { + if ( !queue || jQuery.isArray( data ) ) { + queue = jQuery._data( elem, type, jQuery.makeArray( data ) ); + } else { + queue.push( data ); + } + } + return queue || []; + } + }, + + dequeue: function( elem, type ) { + type = type || "fx"; + + var queue = jQuery.queue( elem, type ), + startLength = queue.length, + fn = queue.shift(), + hooks = jQuery._queueHooks( elem, type ), + next = function() { + jQuery.dequeue( elem, type ); + }; + + // If the fx queue is dequeued, always remove the progress sentinel + if ( fn === "inprogress" ) { + fn = queue.shift(); + startLength--; + } + + if ( fn ) { + + // Add a progress sentinel to prevent the fx queue from being + // automatically dequeued + if ( type === "fx" ) { + queue.unshift( "inprogress" ); + } + + // clear up the last queue stop function + delete hooks.stop; + fn.call( elem, next, hooks ); + } + + if ( !startLength && hooks ) { + hooks.empty.fire(); + } + }, + + // not intended for public consumption - generates a queueHooks object, + // or returns the current one + _queueHooks: function( elem, type ) { + var key = type + "queueHooks"; + return jQuery._data( elem, key ) || jQuery._data( elem, key, { + empty: jQuery.Callbacks( "once memory" ).add( function() { + jQuery._removeData( elem, type + "queue" ); + jQuery._removeData( elem, key ); + } ) + } ); + } +} ); + +jQuery.fn.extend( { + queue: function( type, data ) { + var setter = 2; + + if ( typeof type !== "string" ) { + data = type; + type = "fx"; + setter--; + } + + if ( arguments.length < setter ) { + return jQuery.queue( this[ 0 ], type ); + } + + return data === undefined ? + this : + this.each( function() { + var queue = jQuery.queue( this, type, data ); + + // ensure a hooks for this queue + jQuery._queueHooks( this, type ); + + if ( type === "fx" && queue[ 0 ] !== "inprogress" ) { + jQuery.dequeue( this, type ); + } + } ); + }, + dequeue: function( type ) { + return this.each( function() { + jQuery.dequeue( this, type ); + } ); + }, + clearQueue: function( type ) { + return this.queue( type || "fx", [] ); + }, + + // Get a promise resolved when queues of a certain type + // are emptied (fx is the type by default) + promise: function( type, obj ) { + var tmp, + count = 1, + defer = jQuery.Deferred(), + elements = this, + i = this.length, + resolve = function() { + if ( !( --count ) ) { + defer.resolveWith( elements, [ elements ] ); + } + }; + + if ( typeof type !== "string" ) { + obj = type; + type = undefined; + } + type = type || "fx"; + + while ( i-- ) { + tmp = jQuery._data( elements[ i ], type + "queueHooks" ); + if ( tmp && tmp.empty ) { + count++; + tmp.empty.add( resolve ); + } + } + resolve(); + return defer.promise( obj ); + } +} ); + + +( function() { + var shrinkWrapBlocksVal; + + support.shrinkWrapBlocks = function() { + if ( shrinkWrapBlocksVal != null ) { + return shrinkWrapBlocksVal; + } + + // Will be changed later if needed. + shrinkWrapBlocksVal = false; + + // Minified: var b,c,d + var div, body, container; + + body = document.getElementsByTagName( "body" )[ 0 ]; + if ( !body || !body.style ) { + + // Test fired too early or in an unsupported environment, exit. + return; + } + + // Setup + div = document.createElement( "div" ); + container = document.createElement( "div" ); + container.style.cssText = "position:absolute;border:0;width:0;height:0;top:0;left:-9999px"; + body.appendChild( container ).appendChild( div ); + + // Support: IE6 + // Check if elements with layout shrink-wrap their children + if ( typeof div.style.zoom !== "undefined" ) { + + // Reset CSS: box-sizing; display; margin; border + div.style.cssText = + + // Support: Firefox<29, Android 2.3 + // Vendor-prefix box-sizing + "-webkit-box-sizing:content-box;-moz-box-sizing:content-box;" + + "box-sizing:content-box;display:block;margin:0;border:0;" + + "padding:1px;width:1px;zoom:1"; + div.appendChild( document.createElement( "div" ) ).style.width = "5px"; + shrinkWrapBlocksVal = div.offsetWidth !== 3; + } + + body.removeChild( container ); + + return shrinkWrapBlocksVal; + }; + +} )(); +var pnum = ( /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/ ).source; + +var rcssNum = new RegExp( "^(?:([+-])=|)(" + pnum + ")([a-z%]*)$", "i" ); + + +var cssExpand = [ "Top", "Right", "Bottom", "Left" ]; + +var isHidden = function( elem, el ) { + + // isHidden might be called from jQuery#filter function; + // in that case, element will be second argument + elem = el || elem; + return jQuery.css( elem, "display" ) === "none" || + !jQuery.contains( elem.ownerDocument, elem ); + }; + + + +function adjustCSS( elem, prop, valueParts, tween ) { + var adjusted, + scale = 1, + maxIterations = 20, + currentValue = tween ? + function() { return tween.cur(); } : + function() { return jQuery.css( elem, prop, "" ); }, + initial = currentValue(), + unit = valueParts && valueParts[ 3 ] || ( jQuery.cssNumber[ prop ] ? "" : "px" ), + + // Starting value computation is required for potential unit mismatches + initialInUnit = ( jQuery.cssNumber[ prop ] || unit !== "px" && +initial ) && + rcssNum.exec( jQuery.css( elem, prop ) ); + + if ( initialInUnit && initialInUnit[ 3 ] !== unit ) { + + // Trust units reported by jQuery.css + unit = unit || initialInUnit[ 3 ]; + + // Make sure we update the tween properties later on + valueParts = valueParts || []; + + // Iteratively approximate from a nonzero starting point + initialInUnit = +initial || 1; + + do { + + // If previous iteration zeroed out, double until we get *something*. + // Use string for doubling so we don't accidentally see scale as unchanged below + scale = scale || ".5"; + + // Adjust and apply + initialInUnit = initialInUnit / scale; + jQuery.style( elem, prop, initialInUnit + unit ); + + // Update scale, tolerating zero or NaN from tween.cur() + // Break the loop if scale is unchanged or perfect, or if we've just had enough. + } while ( + scale !== ( scale = currentValue() / initial ) && scale !== 1 && --maxIterations + ); + } + + if ( valueParts ) { + initialInUnit = +initialInUnit || +initial || 0; + + // Apply relative offset (+=/-=) if specified + adjusted = valueParts[ 1 ] ? + initialInUnit + ( valueParts[ 1 ] + 1 ) * valueParts[ 2 ] : + +valueParts[ 2 ]; + if ( tween ) { + tween.unit = unit; + tween.start = initialInUnit; + tween.end = adjusted; + } + } + return adjusted; +} + + +// Multifunctional method to get and set values of a collection +// The value/s can optionally be executed if it's a function +var access = function( elems, fn, key, value, chainable, emptyGet, raw ) { + var i = 0, + length = elems.length, + bulk = key == null; + + // Sets many values + if ( jQuery.type( key ) === "object" ) { + chainable = true; + for ( i in key ) { + access( elems, fn, i, key[ i ], true, emptyGet, raw ); + } + + // Sets one value + } else if ( value !== undefined ) { + chainable = true; + + if ( !jQuery.isFunction( value ) ) { + raw = true; + } + + if ( bulk ) { + + // Bulk operations run against the entire set + if ( raw ) { + fn.call( elems, value ); + fn = null; + + // ...except when executing function values + } else { + bulk = fn; + fn = function( elem, key, value ) { + return bulk.call( jQuery( elem ), value ); + }; + } + } + + if ( fn ) { + for ( ; i < length; i++ ) { + fn( + elems[ i ], + key, + raw ? value : value.call( elems[ i ], i, fn( elems[ i ], key ) ) + ); + } + } + } + + return chainable ? + elems : + + // Gets + bulk ? + fn.call( elems ) : + length ? fn( elems[ 0 ], key ) : emptyGet; +}; +var rcheckableType = ( /^(?:checkbox|radio)$/i ); + +var rtagName = ( /<([\w:-]+)/ ); + +var rscriptType = ( /^$|\/(?:java|ecma)script/i ); + +var rleadingWhitespace = ( /^\s+/ ); + +var nodeNames = "abbr|article|aside|audio|bdi|canvas|data|datalist|" + + "details|dialog|figcaption|figure|footer|header|hgroup|main|" + + "mark|meter|nav|output|picture|progress|section|summary|template|time|video"; + + + +function createSafeFragment( document ) { + var list = nodeNames.split( "|" ), + safeFrag = document.createDocumentFragment(); + + if ( safeFrag.createElement ) { + while ( list.length ) { + safeFrag.createElement( + list.pop() + ); + } + } + return safeFrag; +} + + +( function() { + var div = document.createElement( "div" ), + fragment = document.createDocumentFragment(), + input = document.createElement( "input" ); + + // Setup + div.innerHTML = "
a"; + + // IE strips leading whitespace when .innerHTML is used + support.leadingWhitespace = div.firstChild.nodeType === 3; + + // Make sure that tbody elements aren't automatically inserted + // IE will insert them into empty tables + support.tbody = !div.getElementsByTagName( "tbody" ).length; + + // Make sure that link elements get serialized correctly by innerHTML + // This requires a wrapper element in IE + support.htmlSerialize = !!div.getElementsByTagName( "link" ).length; + + // Makes sure cloning an html5 element does not cause problems + // Where outerHTML is undefined, this still works + support.html5Clone = + document.createElement( "nav" ).cloneNode( true ).outerHTML !== "<:nav>"; + + // Check if a disconnected checkbox will retain its checked + // value of true after appended to the DOM (IE6/7) + input.type = "checkbox"; + input.checked = true; + fragment.appendChild( input ); + support.appendChecked = input.checked; + + // Make sure textarea (and checkbox) defaultValue is properly cloned + // Support: IE6-IE11+ + div.innerHTML = ""; + support.noCloneChecked = !!div.cloneNode( true ).lastChild.defaultValue; + + // #11217 - WebKit loses check when the name is after the checked attribute + fragment.appendChild( div ); + + // Support: Windows Web Apps (WWA) + // `name` and `type` must use .setAttribute for WWA (#14901) + input = document.createElement( "input" ); + input.setAttribute( "type", "radio" ); + input.setAttribute( "checked", "checked" ); + input.setAttribute( "name", "t" ); + + div.appendChild( input ); + + // Support: Safari 5.1, iOS 5.1, Android 4.x, Android 2.3 + // old WebKit doesn't clone checked state correctly in fragments + support.checkClone = div.cloneNode( true ).cloneNode( true ).lastChild.checked; + + // Support: IE<9 + // Cloned elements keep attachEvent handlers, we use addEventListener on IE9+ + support.noCloneEvent = !!div.addEventListener; + + // Support: IE<9 + // Since attributes and properties are the same in IE, + // cleanData must set properties to undefined rather than use removeAttribute + div[ jQuery.expando ] = 1; + support.attributes = !div.getAttribute( jQuery.expando ); +} )(); + + +// We have to close these tags to support XHTML (#13200) +var wrapMap = { + option: [ 1, "" ], + legend: [ 1, "

", "
" ], + area: [ 1, "", "" ], + + // Support: IE8 + param: [ 1, "", "" ], + thead: [ 1, "", "
" ], + tr: [ 2, "", "
" ], + col: [ 2, "", "
" ], + td: [ 3, "", "
" ], + + // IE6-8 can't serialize link, script, style, or any html5 (NoScope) tags, + // unless wrapped in a div with non-breaking characters in front of it. + _default: support.htmlSerialize ? [ 0, "", "" ] : [ 1, "X
", "
" ] +}; + +// Support: IE8-IE9 +wrapMap.optgroup = wrapMap.option; + +wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead; +wrapMap.th = wrapMap.td; + + +function getAll( context, tag ) { + var elems, elem, + i = 0, + found = typeof context.getElementsByTagName !== "undefined" ? + context.getElementsByTagName( tag || "*" ) : + typeof context.querySelectorAll !== "undefined" ? + context.querySelectorAll( tag || "*" ) : + undefined; + + if ( !found ) { + for ( found = [], elems = context.childNodes || context; + ( elem = elems[ i ] ) != null; + i++ + ) { + if ( !tag || jQuery.nodeName( elem, tag ) ) { + found.push( elem ); + } else { + jQuery.merge( found, getAll( elem, tag ) ); + } + } + } + + return tag === undefined || tag && jQuery.nodeName( context, tag ) ? + jQuery.merge( [ context ], found ) : + found; +} + + +// Mark scripts as having already been evaluated +function setGlobalEval( elems, refElements ) { + var elem, + i = 0; + for ( ; ( elem = elems[ i ] ) != null; i++ ) { + jQuery._data( + elem, + "globalEval", + !refElements || jQuery._data( refElements[ i ], "globalEval" ) + ); + } +} + + +var rhtml = /<|&#?\w+;/, + rtbody = / from table fragments + if ( !support.tbody ) { + + // String was a , *may* have spurious + elem = tag === "table" && !rtbody.test( elem ) ? + tmp.firstChild : + + // String was a bare or + wrap[ 1 ] === "
" && !rtbody.test( elem ) ? + tmp : + 0; + + j = elem && elem.childNodes.length; + while ( j-- ) { + if ( jQuery.nodeName( ( tbody = elem.childNodes[ j ] ), "tbody" ) && + !tbody.childNodes.length ) { + + elem.removeChild( tbody ); + } + } + } + + jQuery.merge( nodes, tmp.childNodes ); + + // Fix #12392 for WebKit and IE > 9 + tmp.textContent = ""; + + // Fix #12392 for oldIE + while ( tmp.firstChild ) { + tmp.removeChild( tmp.firstChild ); + } + + // Remember the top-level container for proper cleanup + tmp = safe.lastChild; + } + } + } + + // Fix #11356: Clear elements from fragment + if ( tmp ) { + safe.removeChild( tmp ); + } + + // Reset defaultChecked for any radios and checkboxes + // about to be appended to the DOM in IE 6/7 (#8060) + if ( !support.appendChecked ) { + jQuery.grep( getAll( nodes, "input" ), fixDefaultChecked ); + } + + i = 0; + while ( ( elem = nodes[ i++ ] ) ) { + + // Skip elements already in the context collection (trac-4087) + if ( selection && jQuery.inArray( elem, selection ) > -1 ) { + if ( ignored ) { + ignored.push( elem ); + } + + continue; + } + + contains = jQuery.contains( elem.ownerDocument, elem ); + + // Append to fragment + tmp = getAll( safe.appendChild( elem ), "script" ); + + // Preserve script evaluation history + if ( contains ) { + setGlobalEval( tmp ); + } + + // Capture executables + if ( scripts ) { + j = 0; + while ( ( elem = tmp[ j++ ] ) ) { + if ( rscriptType.test( elem.type || "" ) ) { + scripts.push( elem ); + } + } + } + } + + tmp = null; + + return safe; +} + + +( function() { + var i, eventName, + div = document.createElement( "div" ); + + // Support: IE<9 (lack submit/change bubble), Firefox (lack focus(in | out) events) + for ( i in { submit: true, change: true, focusin: true } ) { + eventName = "on" + i; + + if ( !( support[ i ] = eventName in window ) ) { + + // Beware of CSP restrictions (https://developer.mozilla.org/en/Security/CSP) + div.setAttribute( eventName, "t" ); + support[ i ] = div.attributes[ eventName ].expando === false; + } + } + + // Null elements to avoid leaks in IE. + div = null; +} )(); + + +var rformElems = /^(?:input|select|textarea)$/i, + rkeyEvent = /^key/, + rmouseEvent = /^(?:mouse|pointer|contextmenu|drag|drop)|click/, + rfocusMorph = /^(?:focusinfocus|focusoutblur)$/, + rtypenamespace = /^([^.]*)(?:\.(.+)|)/; + +function returnTrue() { + return true; +} + +function returnFalse() { + return false; +} + +// Support: IE9 +// See #13393 for more info +function safeActiveElement() { + try { + return document.activeElement; + } catch ( err ) { } +} + +function on( elem, types, selector, data, fn, one ) { + var origFn, type; + + // Types can be a map of types/handlers + if ( typeof types === "object" ) { + + // ( types-Object, selector, data ) + if ( typeof selector !== "string" ) { + + // ( types-Object, data ) + data = data || selector; + selector = undefined; + } + for ( type in types ) { + on( elem, type, selector, data, types[ type ], one ); + } + return elem; + } + + if ( data == null && fn == null ) { + + // ( types, fn ) + fn = selector; + data = selector = undefined; + } else if ( fn == null ) { + if ( typeof selector === "string" ) { + + // ( types, selector, fn ) + fn = data; + data = undefined; + } else { + + // ( types, data, fn ) + fn = data; + data = selector; + selector = undefined; + } + } + if ( fn === false ) { + fn = returnFalse; + } else if ( !fn ) { + return elem; + } + + if ( one === 1 ) { + origFn = fn; + fn = function( event ) { + + // Can use an empty set, since event contains the info + jQuery().off( event ); + return origFn.apply( this, arguments ); + }; + + // Use same guid so caller can remove using origFn + fn.guid = origFn.guid || ( origFn.guid = jQuery.guid++ ); + } + return elem.each( function() { + jQuery.event.add( this, types, fn, data, selector ); + } ); +} + +/* + * Helper functions for managing events -- not part of the public interface. + * Props to Dean Edwards' addEvent library for many of the ideas. + */ +jQuery.event = { + + global: {}, + + add: function( elem, types, handler, data, selector ) { + var tmp, events, t, handleObjIn, + special, eventHandle, handleObj, + handlers, type, namespaces, origType, + elemData = jQuery._data( elem ); + + // Don't attach events to noData or text/comment nodes (but allow plain objects) + if ( !elemData ) { + return; + } + + // Caller can pass in an object of custom data in lieu of the handler + if ( handler.handler ) { + handleObjIn = handler; + handler = handleObjIn.handler; + selector = handleObjIn.selector; + } + + // Make sure that the handler has a unique ID, used to find/remove it later + if ( !handler.guid ) { + handler.guid = jQuery.guid++; + } + + // Init the element's event structure and main handler, if this is the first + if ( !( events = elemData.events ) ) { + events = elemData.events = {}; + } + if ( !( eventHandle = elemData.handle ) ) { + eventHandle = elemData.handle = function( e ) { + + // Discard the second event of a jQuery.event.trigger() and + // when an event is called after a page has unloaded + return typeof jQuery !== "undefined" && + ( !e || jQuery.event.triggered !== e.type ) ? + jQuery.event.dispatch.apply( eventHandle.elem, arguments ) : + undefined; + }; + + // Add elem as a property of the handle fn to prevent a memory leak + // with IE non-native events + eventHandle.elem = elem; + } + + // Handle multiple events separated by a space + types = ( types || "" ).match( rnotwhite ) || [ "" ]; + t = types.length; + while ( t-- ) { + tmp = rtypenamespace.exec( types[ t ] ) || []; + type = origType = tmp[ 1 ]; + namespaces = ( tmp[ 2 ] || "" ).split( "." ).sort(); + + // There *must* be a type, no attaching namespace-only handlers + if ( !type ) { + continue; + } + + // If event changes its type, use the special event handlers for the changed type + special = jQuery.event.special[ type ] || {}; + + // If selector defined, determine special event api type, otherwise given type + type = ( selector ? special.delegateType : special.bindType ) || type; + + // Update special based on newly reset type + special = jQuery.event.special[ type ] || {}; + + // handleObj is passed to all event handlers + handleObj = jQuery.extend( { + type: type, + origType: origType, + data: data, + handler: handler, + guid: handler.guid, + selector: selector, + needsContext: selector && jQuery.expr.match.needsContext.test( selector ), + namespace: namespaces.join( "." ) + }, handleObjIn ); + + // Init the event handler queue if we're the first + if ( !( handlers = events[ type ] ) ) { + handlers = events[ type ] = []; + handlers.delegateCount = 0; + + // Only use addEventListener/attachEvent if the special events handler returns false + if ( !special.setup || + special.setup.call( elem, data, namespaces, eventHandle ) === false ) { + + // Bind the global event handler to the element + if ( elem.addEventListener ) { + elem.addEventListener( type, eventHandle, false ); + + } else if ( elem.attachEvent ) { + elem.attachEvent( "on" + type, eventHandle ); + } + } + } + + if ( special.add ) { + special.add.call( elem, handleObj ); + + if ( !handleObj.handler.guid ) { + handleObj.handler.guid = handler.guid; + } + } + + // Add to the element's handler list, delegates in front + if ( selector ) { + handlers.splice( handlers.delegateCount++, 0, handleObj ); + } else { + handlers.push( handleObj ); + } + + // Keep track of which events have ever been used, for event optimization + jQuery.event.global[ type ] = true; + } + + // Nullify elem to prevent memory leaks in IE + elem = null; + }, + + // Detach an event or set of events from an element + remove: function( elem, types, handler, selector, mappedTypes ) { + var j, handleObj, tmp, + origCount, t, events, + special, handlers, type, + namespaces, origType, + elemData = jQuery.hasData( elem ) && jQuery._data( elem ); + + if ( !elemData || !( events = elemData.events ) ) { + return; + } + + // Once for each type.namespace in types; type may be omitted + types = ( types || "" ).match( rnotwhite ) || [ "" ]; + t = types.length; + while ( t-- ) { + tmp = rtypenamespace.exec( types[ t ] ) || []; + type = origType = tmp[ 1 ]; + namespaces = ( tmp[ 2 ] || "" ).split( "." ).sort(); + + // Unbind all events (on this namespace, if provided) for the element + if ( !type ) { + for ( type in events ) { + jQuery.event.remove( elem, type + types[ t ], handler, selector, true ); + } + continue; + } + + special = jQuery.event.special[ type ] || {}; + type = ( selector ? special.delegateType : special.bindType ) || type; + handlers = events[ type ] || []; + tmp = tmp[ 2 ] && + new RegExp( "(^|\\.)" + namespaces.join( "\\.(?:.*\\.|)" ) + "(\\.|$)" ); + + // Remove matching events + origCount = j = handlers.length; + while ( j-- ) { + handleObj = handlers[ j ]; + + if ( ( mappedTypes || origType === handleObj.origType ) && + ( !handler || handler.guid === handleObj.guid ) && + ( !tmp || tmp.test( handleObj.namespace ) ) && + ( !selector || selector === handleObj.selector || + selector === "**" && handleObj.selector ) ) { + handlers.splice( j, 1 ); + + if ( handleObj.selector ) { + handlers.delegateCount--; + } + if ( special.remove ) { + special.remove.call( elem, handleObj ); + } + } + } + + // Remove generic event handler if we removed something and no more handlers exist + // (avoids potential for endless recursion during removal of special event handlers) + if ( origCount && !handlers.length ) { + if ( !special.teardown || + special.teardown.call( elem, namespaces, elemData.handle ) === false ) { + + jQuery.removeEvent( elem, type, elemData.handle ); + } + + delete events[ type ]; + } + } + + // Remove the expando if it's no longer used + if ( jQuery.isEmptyObject( events ) ) { + delete elemData.handle; + + // removeData also checks for emptiness and clears the expando if empty + // so use it instead of delete + jQuery._removeData( elem, "events" ); + } + }, + + trigger: function( event, data, elem, onlyHandlers ) { + var handle, ontype, cur, + bubbleType, special, tmp, i, + eventPath = [ elem || document ], + type = hasOwn.call( event, "type" ) ? event.type : event, + namespaces = hasOwn.call( event, "namespace" ) ? event.namespace.split( "." ) : []; + + cur = tmp = elem = elem || document; + + // Don't do events on text and comment nodes + if ( elem.nodeType === 3 || elem.nodeType === 8 ) { + return; + } + + // focus/blur morphs to focusin/out; ensure we're not firing them right now + if ( rfocusMorph.test( type + jQuery.event.triggered ) ) { + return; + } + + if ( type.indexOf( "." ) > -1 ) { + + // Namespaced trigger; create a regexp to match event type in handle() + namespaces = type.split( "." ); + type = namespaces.shift(); + namespaces.sort(); + } + ontype = type.indexOf( ":" ) < 0 && "on" + type; + + // Caller can pass in a jQuery.Event object, Object, or just an event type string + event = event[ jQuery.expando ] ? + event : + new jQuery.Event( type, typeof event === "object" && event ); + + // Trigger bitmask: & 1 for native handlers; & 2 for jQuery (always true) + event.isTrigger = onlyHandlers ? 2 : 3; + event.namespace = namespaces.join( "." ); + event.rnamespace = event.namespace ? + new RegExp( "(^|\\.)" + namespaces.join( "\\.(?:.*\\.|)" ) + "(\\.|$)" ) : + null; + + // Clean up the event in case it is being reused + event.result = undefined; + if ( !event.target ) { + event.target = elem; + } + + // Clone any incoming data and prepend the event, creating the handler arg list + data = data == null ? + [ event ] : + jQuery.makeArray( data, [ event ] ); + + // Allow special events to draw outside the lines + special = jQuery.event.special[ type ] || {}; + if ( !onlyHandlers && special.trigger && special.trigger.apply( elem, data ) === false ) { + return; + } + + // Determine event propagation path in advance, per W3C events spec (#9951) + // Bubble up to document, then to window; watch for a global ownerDocument var (#9724) + if ( !onlyHandlers && !special.noBubble && !jQuery.isWindow( elem ) ) { + + bubbleType = special.delegateType || type; + if ( !rfocusMorph.test( bubbleType + type ) ) { + cur = cur.parentNode; + } + for ( ; cur; cur = cur.parentNode ) { + eventPath.push( cur ); + tmp = cur; + } + + // Only add window if we got to document (e.g., not plain obj or detached DOM) + if ( tmp === ( elem.ownerDocument || document ) ) { + eventPath.push( tmp.defaultView || tmp.parentWindow || window ); + } + } + + // Fire handlers on the event path + i = 0; + while ( ( cur = eventPath[ i++ ] ) && !event.isPropagationStopped() ) { + + event.type = i > 1 ? + bubbleType : + special.bindType || type; + + // jQuery handler + handle = ( jQuery._data( cur, "events" ) || {} )[ event.type ] && + jQuery._data( cur, "handle" ); + + if ( handle ) { + handle.apply( cur, data ); + } + + // Native handler + handle = ontype && cur[ ontype ]; + if ( handle && handle.apply && acceptData( cur ) ) { + event.result = handle.apply( cur, data ); + if ( event.result === false ) { + event.preventDefault(); + } + } + } + event.type = type; + + // If nobody prevented the default action, do it now + if ( !onlyHandlers && !event.isDefaultPrevented() ) { + + if ( + ( !special._default || + special._default.apply( eventPath.pop(), data ) === false + ) && acceptData( elem ) + ) { + + // Call a native DOM method on the target with the same name name as the event. + // Can't use an .isFunction() check here because IE6/7 fails that test. + // Don't do default actions on window, that's where global variables be (#6170) + if ( ontype && elem[ type ] && !jQuery.isWindow( elem ) ) { + + // Don't re-trigger an onFOO event when we call its FOO() method + tmp = elem[ ontype ]; + + if ( tmp ) { + elem[ ontype ] = null; + } + + // Prevent re-triggering of the same event, since we already bubbled it above + jQuery.event.triggered = type; + try { + elem[ type ](); + } catch ( e ) { + + // IE<9 dies on focus/blur to hidden element (#1486,#12518) + // only reproducible on winXP IE8 native, not IE9 in IE8 mode + } + jQuery.event.triggered = undefined; + + if ( tmp ) { + elem[ ontype ] = tmp; + } + } + } + } + + return event.result; + }, + + dispatch: function( event ) { + + // Make a writable jQuery.Event from the native event object + event = jQuery.event.fix( event ); + + var i, j, ret, matched, handleObj, + handlerQueue = [], + args = slice.call( arguments ), + handlers = ( jQuery._data( this, "events" ) || {} )[ event.type ] || [], + special = jQuery.event.special[ event.type ] || {}; + + // Use the fix-ed jQuery.Event rather than the (read-only) native event + args[ 0 ] = event; + event.delegateTarget = this; + + // Call the preDispatch hook for the mapped type, and let it bail if desired + if ( special.preDispatch && special.preDispatch.call( this, event ) === false ) { + return; + } + + // Determine handlers + handlerQueue = jQuery.event.handlers.call( this, event, handlers ); + + // Run delegates first; they may want to stop propagation beneath us + i = 0; + while ( ( matched = handlerQueue[ i++ ] ) && !event.isPropagationStopped() ) { + event.currentTarget = matched.elem; + + j = 0; + while ( ( handleObj = matched.handlers[ j++ ] ) && + !event.isImmediatePropagationStopped() ) { + + // Triggered event must either 1) have no namespace, or 2) have namespace(s) + // a subset or equal to those in the bound event (both can have no namespace). + if ( !event.rnamespace || event.rnamespace.test( handleObj.namespace ) ) { + + event.handleObj = handleObj; + event.data = handleObj.data; + + ret = ( ( jQuery.event.special[ handleObj.origType ] || {} ).handle || + handleObj.handler ).apply( matched.elem, args ); + + if ( ret !== undefined ) { + if ( ( event.result = ret ) === false ) { + event.preventDefault(); + event.stopPropagation(); + } + } + } + } + } + + // Call the postDispatch hook for the mapped type + if ( special.postDispatch ) { + special.postDispatch.call( this, event ); + } + + return event.result; + }, + + handlers: function( event, handlers ) { + var i, matches, sel, handleObj, + handlerQueue = [], + delegateCount = handlers.delegateCount, + cur = event.target; + + // Support (at least): Chrome, IE9 + // Find delegate handlers + // Black-hole SVG instance trees (#13180) + // + // Support: Firefox<=42+ + // Avoid non-left-click in FF but don't block IE radio events (#3861, gh-2343) + if ( delegateCount && cur.nodeType && + ( event.type !== "click" || isNaN( event.button ) || event.button < 1 ) ) { + + /* jshint eqeqeq: false */ + for ( ; cur != this; cur = cur.parentNode || this ) { + /* jshint eqeqeq: true */ + + // Don't check non-elements (#13208) + // Don't process clicks on disabled elements (#6911, #8165, #11382, #11764) + if ( cur.nodeType === 1 && ( cur.disabled !== true || event.type !== "click" ) ) { + matches = []; + for ( i = 0; i < delegateCount; i++ ) { + handleObj = handlers[ i ]; + + // Don't conflict with Object.prototype properties (#13203) + sel = handleObj.selector + " "; + + if ( matches[ sel ] === undefined ) { + matches[ sel ] = handleObj.needsContext ? + jQuery( sel, this ).index( cur ) > -1 : + jQuery.find( sel, this, null, [ cur ] ).length; + } + if ( matches[ sel ] ) { + matches.push( handleObj ); + } + } + if ( matches.length ) { + handlerQueue.push( { elem: cur, handlers: matches } ); + } + } + } + } + + // Add the remaining (directly-bound) handlers + if ( delegateCount < handlers.length ) { + handlerQueue.push( { elem: this, handlers: handlers.slice( delegateCount ) } ); + } + + return handlerQueue; + }, + + fix: function( event ) { + if ( event[ jQuery.expando ] ) { + return event; + } + + // Create a writable copy of the event object and normalize some properties + var i, prop, copy, + type = event.type, + originalEvent = event, + fixHook = this.fixHooks[ type ]; + + if ( !fixHook ) { + this.fixHooks[ type ] = fixHook = + rmouseEvent.test( type ) ? this.mouseHooks : + rkeyEvent.test( type ) ? this.keyHooks : + {}; + } + copy = fixHook.props ? this.props.concat( fixHook.props ) : this.props; + + event = new jQuery.Event( originalEvent ); + + i = copy.length; + while ( i-- ) { + prop = copy[ i ]; + event[ prop ] = originalEvent[ prop ]; + } + + // Support: IE<9 + // Fix target property (#1925) + if ( !event.target ) { + event.target = originalEvent.srcElement || document; + } + + // Support: Safari 6-8+ + // Target should not be a text node (#504, #13143) + if ( event.target.nodeType === 3 ) { + event.target = event.target.parentNode; + } + + // Support: IE<9 + // For mouse/key events, metaKey==false if it's undefined (#3368, #11328) + event.metaKey = !!event.metaKey; + + return fixHook.filter ? fixHook.filter( event, originalEvent ) : event; + }, + + // Includes some event props shared by KeyEvent and MouseEvent + props: ( "altKey bubbles cancelable ctrlKey currentTarget detail eventPhase " + + "metaKey relatedTarget shiftKey target timeStamp view which" ).split( " " ), + + fixHooks: {}, + + keyHooks: { + props: "char charCode key keyCode".split( " " ), + filter: function( event, original ) { + + // Add which for key events + if ( event.which == null ) { + event.which = original.charCode != null ? original.charCode : original.keyCode; + } + + return event; + } + }, + + mouseHooks: { + props: ( "button buttons clientX clientY fromElement offsetX offsetY " + + "pageX pageY screenX screenY toElement" ).split( " " ), + filter: function( event, original ) { + var body, eventDoc, doc, + button = original.button, + fromElement = original.fromElement; + + // Calculate pageX/Y if missing and clientX/Y available + if ( event.pageX == null && original.clientX != null ) { + eventDoc = event.target.ownerDocument || document; + doc = eventDoc.documentElement; + body = eventDoc.body; + + event.pageX = original.clientX + + ( doc && doc.scrollLeft || body && body.scrollLeft || 0 ) - + ( doc && doc.clientLeft || body && body.clientLeft || 0 ); + event.pageY = original.clientY + + ( doc && doc.scrollTop || body && body.scrollTop || 0 ) - + ( doc && doc.clientTop || body && body.clientTop || 0 ); + } + + // Add relatedTarget, if necessary + if ( !event.relatedTarget && fromElement ) { + event.relatedTarget = fromElement === event.target ? + original.toElement : + fromElement; + } + + // Add which for click: 1 === left; 2 === middle; 3 === right + // Note: button is not normalized, so don't use it + if ( !event.which && button !== undefined ) { + event.which = ( button & 1 ? 1 : ( button & 2 ? 3 : ( button & 4 ? 2 : 0 ) ) ); + } + + return event; + } + }, + + special: { + load: { + + // Prevent triggered image.load events from bubbling to window.load + noBubble: true + }, + focus: { + + // Fire native event if possible so blur/focus sequence is correct + trigger: function() { + if ( this !== safeActiveElement() && this.focus ) { + try { + this.focus(); + return false; + } catch ( e ) { + + // Support: IE<9 + // If we error on focus to hidden element (#1486, #12518), + // let .trigger() run the handlers + } + } + }, + delegateType: "focusin" + }, + blur: { + trigger: function() { + if ( this === safeActiveElement() && this.blur ) { + this.blur(); + return false; + } + }, + delegateType: "focusout" + }, + click: { + + // For checkbox, fire native event so checked state will be right + trigger: function() { + if ( jQuery.nodeName( this, "input" ) && this.type === "checkbox" && this.click ) { + this.click(); + return false; + } + }, + + // For cross-browser consistency, don't fire native .click() on links + _default: function( event ) { + return jQuery.nodeName( event.target, "a" ); + } + }, + + beforeunload: { + postDispatch: function( event ) { + + // Support: Firefox 20+ + // Firefox doesn't alert if the returnValue field is not set. + if ( event.result !== undefined && event.originalEvent ) { + event.originalEvent.returnValue = event.result; + } + } + } + }, + + // Piggyback on a donor event to simulate a different one + simulate: function( type, elem, event ) { + var e = jQuery.extend( + new jQuery.Event(), + event, + { + type: type, + isSimulated: true + + // Previously, `originalEvent: {}` was set here, so stopPropagation call + // would not be triggered on donor event, since in our own + // jQuery.event.stopPropagation function we had a check for existence of + // originalEvent.stopPropagation method, so, consequently it would be a noop. + // + // Guard for simulated events was moved to jQuery.event.stopPropagation function + // since `originalEvent` should point to the original event for the + // constancy with other events and for more focused logic + } + ); + + jQuery.event.trigger( e, null, elem ); + + if ( e.isDefaultPrevented() ) { + event.preventDefault(); + } + } +}; + +jQuery.removeEvent = document.removeEventListener ? + function( elem, type, handle ) { + + // This "if" is needed for plain objects + if ( elem.removeEventListener ) { + elem.removeEventListener( type, handle ); + } + } : + function( elem, type, handle ) { + var name = "on" + type; + + if ( elem.detachEvent ) { + + // #8545, #7054, preventing memory leaks for custom events in IE6-8 + // detachEvent needed property on element, by name of that event, + // to properly expose it to GC + if ( typeof elem[ name ] === "undefined" ) { + elem[ name ] = null; + } + + elem.detachEvent( name, handle ); + } + }; + +jQuery.Event = function( src, props ) { + + // Allow instantiation without the 'new' keyword + if ( !( this instanceof jQuery.Event ) ) { + return new jQuery.Event( src, props ); + } + + // Event object + if ( src && src.type ) { + this.originalEvent = src; + this.type = src.type; + + // Events bubbling up the document may have been marked as prevented + // by a handler lower down the tree; reflect the correct value. + this.isDefaultPrevented = src.defaultPrevented || + src.defaultPrevented === undefined && + + // Support: IE < 9, Android < 4.0 + src.returnValue === false ? + returnTrue : + returnFalse; + + // Event type + } else { + this.type = src; + } + + // Put explicitly provided properties onto the event object + if ( props ) { + jQuery.extend( this, props ); + } + + // Create a timestamp if incoming event doesn't have one + this.timeStamp = src && src.timeStamp || jQuery.now(); + + // Mark it as fixed + this[ jQuery.expando ] = true; +}; + +// jQuery.Event is based on DOM3 Events as specified by the ECMAScript Language Binding +// http://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html +jQuery.Event.prototype = { + constructor: jQuery.Event, + isDefaultPrevented: returnFalse, + isPropagationStopped: returnFalse, + isImmediatePropagationStopped: returnFalse, + + preventDefault: function() { + var e = this.originalEvent; + + this.isDefaultPrevented = returnTrue; + if ( !e ) { + return; + } + + // If preventDefault exists, run it on the original event + if ( e.preventDefault ) { + e.preventDefault(); + + // Support: IE + // Otherwise set the returnValue property of the original event to false + } else { + e.returnValue = false; + } + }, + stopPropagation: function() { + var e = this.originalEvent; + + this.isPropagationStopped = returnTrue; + + if ( !e || this.isSimulated ) { + return; + } + + // If stopPropagation exists, run it on the original event + if ( e.stopPropagation ) { + e.stopPropagation(); + } + + // Support: IE + // Set the cancelBubble property of the original event to true + e.cancelBubble = true; + }, + stopImmediatePropagation: function() { + var e = this.originalEvent; + + this.isImmediatePropagationStopped = returnTrue; + + if ( e && e.stopImmediatePropagation ) { + e.stopImmediatePropagation(); + } + + this.stopPropagation(); + } +}; + +// Create mouseenter/leave events using mouseover/out and event-time checks +// so that event delegation works in jQuery. +// Do the same for pointerenter/pointerleave and pointerover/pointerout +// +// Support: Safari 7 only +// Safari sends mouseenter too often; see: +// https://code.google.com/p/chromium/issues/detail?id=470258 +// for the description of the bug (it existed in older Chrome versions as well). +jQuery.each( { + mouseenter: "mouseover", + mouseleave: "mouseout", + pointerenter: "pointerover", + pointerleave: "pointerout" +}, function( orig, fix ) { + jQuery.event.special[ orig ] = { + delegateType: fix, + bindType: fix, + + handle: function( event ) { + var ret, + target = this, + related = event.relatedTarget, + handleObj = event.handleObj; + + // For mouseenter/leave call the handler if related is outside the target. + // NB: No relatedTarget if the mouse left/entered the browser window + if ( !related || ( related !== target && !jQuery.contains( target, related ) ) ) { + event.type = handleObj.origType; + ret = handleObj.handler.apply( this, arguments ); + event.type = fix; + } + return ret; + } + }; +} ); + +// IE submit delegation +if ( !support.submit ) { + + jQuery.event.special.submit = { + setup: function() { + + // Only need this for delegated form submit events + if ( jQuery.nodeName( this, "form" ) ) { + return false; + } + + // Lazy-add a submit handler when a descendant form may potentially be submitted + jQuery.event.add( this, "click._submit keypress._submit", function( e ) { + + // Node name check avoids a VML-related crash in IE (#9807) + var elem = e.target, + form = jQuery.nodeName( elem, "input" ) || jQuery.nodeName( elem, "button" ) ? + + // Support: IE <=8 + // We use jQuery.prop instead of elem.form + // to allow fixing the IE8 delegated submit issue (gh-2332) + // by 3rd party polyfills/workarounds. + jQuery.prop( elem, "form" ) : + undefined; + + if ( form && !jQuery._data( form, "submit" ) ) { + jQuery.event.add( form, "submit._submit", function( event ) { + event._submitBubble = true; + } ); + jQuery._data( form, "submit", true ); + } + } ); + + // return undefined since we don't need an event listener + }, + + postDispatch: function( event ) { + + // If form was submitted by the user, bubble the event up the tree + if ( event._submitBubble ) { + delete event._submitBubble; + if ( this.parentNode && !event.isTrigger ) { + jQuery.event.simulate( "submit", this.parentNode, event ); + } + } + }, + + teardown: function() { + + // Only need this for delegated form submit events + if ( jQuery.nodeName( this, "form" ) ) { + return false; + } + + // Remove delegated handlers; cleanData eventually reaps submit handlers attached above + jQuery.event.remove( this, "._submit" ); + } + }; +} + +// IE change delegation and checkbox/radio fix +if ( !support.change ) { + + jQuery.event.special.change = { + + setup: function() { + + if ( rformElems.test( this.nodeName ) ) { + + // IE doesn't fire change on a check/radio until blur; trigger it on click + // after a propertychange. Eat the blur-change in special.change.handle. + // This still fires onchange a second time for check/radio after blur. + if ( this.type === "checkbox" || this.type === "radio" ) { + jQuery.event.add( this, "propertychange._change", function( event ) { + if ( event.originalEvent.propertyName === "checked" ) { + this._justChanged = true; + } + } ); + jQuery.event.add( this, "click._change", function( event ) { + if ( this._justChanged && !event.isTrigger ) { + this._justChanged = false; + } + + // Allow triggered, simulated change events (#11500) + jQuery.event.simulate( "change", this, event ); + } ); + } + return false; + } + + // Delegated event; lazy-add a change handler on descendant inputs + jQuery.event.add( this, "beforeactivate._change", function( e ) { + var elem = e.target; + + if ( rformElems.test( elem.nodeName ) && !jQuery._data( elem, "change" ) ) { + jQuery.event.add( elem, "change._change", function( event ) { + if ( this.parentNode && !event.isSimulated && !event.isTrigger ) { + jQuery.event.simulate( "change", this.parentNode, event ); + } + } ); + jQuery._data( elem, "change", true ); + } + } ); + }, + + handle: function( event ) { + var elem = event.target; + + // Swallow native change events from checkbox/radio, we already triggered them above + if ( this !== elem || event.isSimulated || event.isTrigger || + ( elem.type !== "radio" && elem.type !== "checkbox" ) ) { + + return event.handleObj.handler.apply( this, arguments ); + } + }, + + teardown: function() { + jQuery.event.remove( this, "._change" ); + + return !rformElems.test( this.nodeName ); + } + }; +} + +// Support: Firefox +// Firefox doesn't have focus(in | out) events +// Related ticket - https://bugzilla.mozilla.org/show_bug.cgi?id=687787 +// +// Support: Chrome, Safari +// focus(in | out) events fire after focus & blur events, +// which is spec violation - http://www.w3.org/TR/DOM-Level-3-Events/#events-focusevent-event-order +// Related ticket - https://code.google.com/p/chromium/issues/detail?id=449857 +if ( !support.focusin ) { + jQuery.each( { focus: "focusin", blur: "focusout" }, function( orig, fix ) { + + // Attach a single capturing handler on the document while someone wants focusin/focusout + var handler = function( event ) { + jQuery.event.simulate( fix, event.target, jQuery.event.fix( event ) ); + }; + + jQuery.event.special[ fix ] = { + setup: function() { + var doc = this.ownerDocument || this, + attaches = jQuery._data( doc, fix ); + + if ( !attaches ) { + doc.addEventListener( orig, handler, true ); + } + jQuery._data( doc, fix, ( attaches || 0 ) + 1 ); + }, + teardown: function() { + var doc = this.ownerDocument || this, + attaches = jQuery._data( doc, fix ) - 1; + + if ( !attaches ) { + doc.removeEventListener( orig, handler, true ); + jQuery._removeData( doc, fix ); + } else { + jQuery._data( doc, fix, attaches ); + } + } + }; + } ); +} + +jQuery.fn.extend( { + + on: function( types, selector, data, fn ) { + return on( this, types, selector, data, fn ); + }, + one: function( types, selector, data, fn ) { + return on( this, types, selector, data, fn, 1 ); + }, + off: function( types, selector, fn ) { + var handleObj, type; + if ( types && types.preventDefault && types.handleObj ) { + + // ( event ) dispatched jQuery.Event + handleObj = types.handleObj; + jQuery( types.delegateTarget ).off( + handleObj.namespace ? + handleObj.origType + "." + handleObj.namespace : + handleObj.origType, + handleObj.selector, + handleObj.handler + ); + return this; + } + if ( typeof types === "object" ) { + + // ( types-object [, selector] ) + for ( type in types ) { + this.off( type, selector, types[ type ] ); + } + return this; + } + if ( selector === false || typeof selector === "function" ) { + + // ( types [, fn] ) + fn = selector; + selector = undefined; + } + if ( fn === false ) { + fn = returnFalse; + } + return this.each( function() { + jQuery.event.remove( this, types, fn, selector ); + } ); + }, + + trigger: function( type, data ) { + return this.each( function() { + jQuery.event.trigger( type, data, this ); + } ); + }, + triggerHandler: function( type, data ) { + var elem = this[ 0 ]; + if ( elem ) { + return jQuery.event.trigger( type, data, elem, true ); + } + } +} ); + + +var rinlinejQuery = / jQuery\d+="(?:null|\d+)"/g, + rnoshimcache = new RegExp( "<(?:" + nodeNames + ")[\\s/>]", "i" ), + rxhtmlTag = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi, + + // Support: IE 10-11, Edge 10240+ + // In IE/Edge using regex groups here causes severe slowdowns. + // See https://connect.microsoft.com/IE/feedback/details/1736512/ + rnoInnerhtml = /\s*$/g, + safeFragment = createSafeFragment( document ), + fragmentDiv = safeFragment.appendChild( document.createElement( "div" ) ); + +// Support: IE<8 +// Manipulating tables requires a tbody +function manipulationTarget( elem, content ) { + return jQuery.nodeName( elem, "table" ) && + jQuery.nodeName( content.nodeType !== 11 ? content : content.firstChild, "tr" ) ? + + elem.getElementsByTagName( "tbody" )[ 0 ] || + elem.appendChild( elem.ownerDocument.createElement( "tbody" ) ) : + elem; +} + +// Replace/restore the type attribute of script elements for safe DOM manipulation +function disableScript( elem ) { + elem.type = ( jQuery.find.attr( elem, "type" ) !== null ) + "/" + elem.type; + return elem; +} +function restoreScript( elem ) { + var match = rscriptTypeMasked.exec( elem.type ); + if ( match ) { + elem.type = match[ 1 ]; + } else { + elem.removeAttribute( "type" ); + } + return elem; +} + +function cloneCopyEvent( src, dest ) { + if ( dest.nodeType !== 1 || !jQuery.hasData( src ) ) { + return; + } + + var type, i, l, + oldData = jQuery._data( src ), + curData = jQuery._data( dest, oldData ), + events = oldData.events; + + if ( events ) { + delete curData.handle; + curData.events = {}; + + for ( type in events ) { + for ( i = 0, l = events[ type ].length; i < l; i++ ) { + jQuery.event.add( dest, type, events[ type ][ i ] ); + } + } + } + + // make the cloned public data object a copy from the original + if ( curData.data ) { + curData.data = jQuery.extend( {}, curData.data ); + } +} + +function fixCloneNodeIssues( src, dest ) { + var nodeName, e, data; + + // We do not need to do anything for non-Elements + if ( dest.nodeType !== 1 ) { + return; + } + + nodeName = dest.nodeName.toLowerCase(); + + // IE6-8 copies events bound via attachEvent when using cloneNode. + if ( !support.noCloneEvent && dest[ jQuery.expando ] ) { + data = jQuery._data( dest ); + + for ( e in data.events ) { + jQuery.removeEvent( dest, e, data.handle ); + } + + // Event data gets referenced instead of copied if the expando gets copied too + dest.removeAttribute( jQuery.expando ); + } + + // IE blanks contents when cloning scripts, and tries to evaluate newly-set text + if ( nodeName === "script" && dest.text !== src.text ) { + disableScript( dest ).text = src.text; + restoreScript( dest ); + + // IE6-10 improperly clones children of object elements using classid. + // IE10 throws NoModificationAllowedError if parent is null, #12132. + } else if ( nodeName === "object" ) { + if ( dest.parentNode ) { + dest.outerHTML = src.outerHTML; + } + + // This path appears unavoidable for IE9. When cloning an object + // element in IE9, the outerHTML strategy above is not sufficient. + // If the src has innerHTML and the destination does not, + // copy the src.innerHTML into the dest.innerHTML. #10324 + if ( support.html5Clone && ( src.innerHTML && !jQuery.trim( dest.innerHTML ) ) ) { + dest.innerHTML = src.innerHTML; + } + + } else if ( nodeName === "input" && rcheckableType.test( src.type ) ) { + + // IE6-8 fails to persist the checked state of a cloned checkbox + // or radio button. Worse, IE6-7 fail to give the cloned element + // a checked appearance if the defaultChecked value isn't also set + + dest.defaultChecked = dest.checked = src.checked; + + // IE6-7 get confused and end up setting the value of a cloned + // checkbox/radio button to an empty string instead of "on" + if ( dest.value !== src.value ) { + dest.value = src.value; + } + + // IE6-8 fails to return the selected option to the default selected + // state when cloning options + } else if ( nodeName === "option" ) { + dest.defaultSelected = dest.selected = src.defaultSelected; + + // IE6-8 fails to set the defaultValue to the correct value when + // cloning other types of input fields + } else if ( nodeName === "input" || nodeName === "textarea" ) { + dest.defaultValue = src.defaultValue; + } +} + +function domManip( collection, args, callback, ignored ) { + + // Flatten any nested arrays + args = concat.apply( [], args ); + + var first, node, hasScripts, + scripts, doc, fragment, + i = 0, + l = collection.length, + iNoClone = l - 1, + value = args[ 0 ], + isFunction = jQuery.isFunction( value ); + + // We can't cloneNode fragments that contain checked, in WebKit + if ( isFunction || + ( l > 1 && typeof value === "string" && + !support.checkClone && rchecked.test( value ) ) ) { + return collection.each( function( index ) { + var self = collection.eq( index ); + if ( isFunction ) { + args[ 0 ] = value.call( this, index, self.html() ); + } + domManip( self, args, callback, ignored ); + } ); + } + + if ( l ) { + fragment = buildFragment( args, collection[ 0 ].ownerDocument, false, collection, ignored ); + first = fragment.firstChild; + + if ( fragment.childNodes.length === 1 ) { + fragment = first; + } + + // Require either new content or an interest in ignored elements to invoke the callback + if ( first || ignored ) { + scripts = jQuery.map( getAll( fragment, "script" ), disableScript ); + hasScripts = scripts.length; + + // Use the original fragment for the last item + // instead of the first because it can end up + // being emptied incorrectly in certain situations (#8070). + for ( ; i < l; i++ ) { + node = fragment; + + if ( i !== iNoClone ) { + node = jQuery.clone( node, true, true ); + + // Keep references to cloned scripts for later restoration + if ( hasScripts ) { + + // Support: Android<4.1, PhantomJS<2 + // push.apply(_, arraylike) throws on ancient WebKit + jQuery.merge( scripts, getAll( node, "script" ) ); + } + } + + callback.call( collection[ i ], node, i ); + } + + if ( hasScripts ) { + doc = scripts[ scripts.length - 1 ].ownerDocument; + + // Reenable scripts + jQuery.map( scripts, restoreScript ); + + // Evaluate executable scripts on first document insertion + for ( i = 0; i < hasScripts; i++ ) { + node = scripts[ i ]; + if ( rscriptType.test( node.type || "" ) && + !jQuery._data( node, "globalEval" ) && + jQuery.contains( doc, node ) ) { + + if ( node.src ) { + + // Optional AJAX dependency, but won't run scripts if not present + if ( jQuery._evalUrl ) { + jQuery._evalUrl( node.src ); + } + } else { + jQuery.globalEval( + ( node.text || node.textContent || node.innerHTML || "" ) + .replace( rcleanScript, "" ) + ); + } + } + } + } + + // Fix #11809: Avoid leaking memory + fragment = first = null; + } + } + + return collection; +} + +function remove( elem, selector, keepData ) { + var node, + elems = selector ? jQuery.filter( selector, elem ) : elem, + i = 0; + + for ( ; ( node = elems[ i ] ) != null; i++ ) { + + if ( !keepData && node.nodeType === 1 ) { + jQuery.cleanData( getAll( node ) ); + } + + if ( node.parentNode ) { + if ( keepData && jQuery.contains( node.ownerDocument, node ) ) { + setGlobalEval( getAll( node, "script" ) ); + } + node.parentNode.removeChild( node ); + } + } + + return elem; +} + +jQuery.extend( { + htmlPrefilter: function( html ) { + return html.replace( rxhtmlTag, "<$1>" ); + }, + + clone: function( elem, dataAndEvents, deepDataAndEvents ) { + var destElements, node, clone, i, srcElements, + inPage = jQuery.contains( elem.ownerDocument, elem ); + + if ( support.html5Clone || jQuery.isXMLDoc( elem ) || + !rnoshimcache.test( "<" + elem.nodeName + ">" ) ) { + + clone = elem.cloneNode( true ); + + // IE<=8 does not properly clone detached, unknown element nodes + } else { + fragmentDiv.innerHTML = elem.outerHTML; + fragmentDiv.removeChild( clone = fragmentDiv.firstChild ); + } + + if ( ( !support.noCloneEvent || !support.noCloneChecked ) && + ( elem.nodeType === 1 || elem.nodeType === 11 ) && !jQuery.isXMLDoc( elem ) ) { + + // We eschew Sizzle here for performance reasons: http://jsperf.com/getall-vs-sizzle/2 + destElements = getAll( clone ); + srcElements = getAll( elem ); + + // Fix all IE cloning issues + for ( i = 0; ( node = srcElements[ i ] ) != null; ++i ) { + + // Ensure that the destination node is not null; Fixes #9587 + if ( destElements[ i ] ) { + fixCloneNodeIssues( node, destElements[ i ] ); + } + } + } + + // Copy the events from the original to the clone + if ( dataAndEvents ) { + if ( deepDataAndEvents ) { + srcElements = srcElements || getAll( elem ); + destElements = destElements || getAll( clone ); + + for ( i = 0; ( node = srcElements[ i ] ) != null; i++ ) { + cloneCopyEvent( node, destElements[ i ] ); + } + } else { + cloneCopyEvent( elem, clone ); + } + } + + // Preserve script evaluation history + destElements = getAll( clone, "script" ); + if ( destElements.length > 0 ) { + setGlobalEval( destElements, !inPage && getAll( elem, "script" ) ); + } + + destElements = srcElements = node = null; + + // Return the cloned set + return clone; + }, + + cleanData: function( elems, /* internal */ forceAcceptData ) { + var elem, type, id, data, + i = 0, + internalKey = jQuery.expando, + cache = jQuery.cache, + attributes = support.attributes, + special = jQuery.event.special; + + for ( ; ( elem = elems[ i ] ) != null; i++ ) { + if ( forceAcceptData || acceptData( elem ) ) { + + id = elem[ internalKey ]; + data = id && cache[ id ]; + + if ( data ) { + if ( data.events ) { + for ( type in data.events ) { + if ( special[ type ] ) { + jQuery.event.remove( elem, type ); + + // This is a shortcut to avoid jQuery.event.remove's overhead + } else { + jQuery.removeEvent( elem, type, data.handle ); + } + } + } + + // Remove cache only if it was not already removed by jQuery.event.remove + if ( cache[ id ] ) { + + delete cache[ id ]; + + // Support: IE<9 + // IE does not allow us to delete expando properties from nodes + // IE creates expando attributes along with the property + // IE does not have a removeAttribute function on Document nodes + if ( !attributes && typeof elem.removeAttribute !== "undefined" ) { + elem.removeAttribute( internalKey ); + + // Webkit & Blink performance suffers when deleting properties + // from DOM nodes, so set to undefined instead + // https://code.google.com/p/chromium/issues/detail?id=378607 + } else { + elem[ internalKey ] = undefined; + } + + deletedIds.push( id ); + } + } + } + } + } +} ); + +jQuery.fn.extend( { + + // Keep domManip exposed until 3.0 (gh-2225) + domManip: domManip, + + detach: function( selector ) { + return remove( this, selector, true ); + }, + + remove: function( selector ) { + return remove( this, selector ); + }, + + text: function( value ) { + return access( this, function( value ) { + return value === undefined ? + jQuery.text( this ) : + this.empty().append( + ( this[ 0 ] && this[ 0 ].ownerDocument || document ).createTextNode( value ) + ); + }, null, value, arguments.length ); + }, + + append: function() { + return domManip( this, arguments, function( elem ) { + if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { + var target = manipulationTarget( this, elem ); + target.appendChild( elem ); + } + } ); + }, + + prepend: function() { + return domManip( this, arguments, function( elem ) { + if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { + var target = manipulationTarget( this, elem ); + target.insertBefore( elem, target.firstChild ); + } + } ); + }, + + before: function() { + return domManip( this, arguments, function( elem ) { + if ( this.parentNode ) { + this.parentNode.insertBefore( elem, this ); + } + } ); + }, + + after: function() { + return domManip( this, arguments, function( elem ) { + if ( this.parentNode ) { + this.parentNode.insertBefore( elem, this.nextSibling ); + } + } ); + }, + + empty: function() { + var elem, + i = 0; + + for ( ; ( elem = this[ i ] ) != null; i++ ) { + + // Remove element nodes and prevent memory leaks + if ( elem.nodeType === 1 ) { + jQuery.cleanData( getAll( elem, false ) ); + } + + // Remove any remaining nodes + while ( elem.firstChild ) { + elem.removeChild( elem.firstChild ); + } + + // If this is a select, ensure that it displays empty (#12336) + // Support: IE<9 + if ( elem.options && jQuery.nodeName( elem, "select" ) ) { + elem.options.length = 0; + } + } + + return this; + }, + + clone: function( dataAndEvents, deepDataAndEvents ) { + dataAndEvents = dataAndEvents == null ? false : dataAndEvents; + deepDataAndEvents = deepDataAndEvents == null ? dataAndEvents : deepDataAndEvents; + + return this.map( function() { + return jQuery.clone( this, dataAndEvents, deepDataAndEvents ); + } ); + }, + + html: function( value ) { + return access( this, function( value ) { + var elem = this[ 0 ] || {}, + i = 0, + l = this.length; + + if ( value === undefined ) { + return elem.nodeType === 1 ? + elem.innerHTML.replace( rinlinejQuery, "" ) : + undefined; + } + + // See if we can take a shortcut and just use innerHTML + if ( typeof value === "string" && !rnoInnerhtml.test( value ) && + ( support.htmlSerialize || !rnoshimcache.test( value ) ) && + ( support.leadingWhitespace || !rleadingWhitespace.test( value ) ) && + !wrapMap[ ( rtagName.exec( value ) || [ "", "" ] )[ 1 ].toLowerCase() ] ) { + + value = jQuery.htmlPrefilter( value ); + + try { + for ( ; i < l; i++ ) { + + // Remove element nodes and prevent memory leaks + elem = this[ i ] || {}; + if ( elem.nodeType === 1 ) { + jQuery.cleanData( getAll( elem, false ) ); + elem.innerHTML = value; + } + } + + elem = 0; + + // If using innerHTML throws an exception, use the fallback method + } catch ( e ) {} + } + + if ( elem ) { + this.empty().append( value ); + } + }, null, value, arguments.length ); + }, + + replaceWith: function() { + var ignored = []; + + // Make the changes, replacing each non-ignored context element with the new content + return domManip( this, arguments, function( elem ) { + var parent = this.parentNode; + + if ( jQuery.inArray( this, ignored ) < 0 ) { + jQuery.cleanData( getAll( this ) ); + if ( parent ) { + parent.replaceChild( elem, this ); + } + } + + // Force callback invocation + }, ignored ); + } +} ); + +jQuery.each( { + appendTo: "append", + prependTo: "prepend", + insertBefore: "before", + insertAfter: "after", + replaceAll: "replaceWith" +}, function( name, original ) { + jQuery.fn[ name ] = function( selector ) { + var elems, + i = 0, + ret = [], + insert = jQuery( selector ), + last = insert.length - 1; + + for ( ; i <= last; i++ ) { + elems = i === last ? this : this.clone( true ); + jQuery( insert[ i ] )[ original ]( elems ); + + // Modern browsers can apply jQuery collections as arrays, but oldIE needs a .get() + push.apply( ret, elems.get() ); + } + + return this.pushStack( ret ); + }; +} ); + + +var iframe, + elemdisplay = { + + // Support: Firefox + // We have to pre-define these values for FF (#10227) + HTML: "block", + BODY: "block" + }; + +/** + * Retrieve the actual display of a element + * @param {String} name nodeName of the element + * @param {Object} doc Document object + */ + +// Called only from within defaultDisplay +function actualDisplay( name, doc ) { + var elem = jQuery( doc.createElement( name ) ).appendTo( doc.body ), + + display = jQuery.css( elem[ 0 ], "display" ); + + // We don't have any data stored on the element, + // so use "detach" method as fast way to get rid of the element + elem.detach(); + + return display; +} + +/** + * Try to determine the default display value of an element + * @param {String} nodeName + */ +function defaultDisplay( nodeName ) { + var doc = document, + display = elemdisplay[ nodeName ]; + + if ( !display ) { + display = actualDisplay( nodeName, doc ); + + // If the simple way fails, read from inside an iframe + if ( display === "none" || !display ) { + + // Use the already-created iframe if possible + iframe = ( iframe || jQuery( "