oneflow-jekyll 1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/LICENSE.MD +7 -0
- data/README.md +29 -0
- data/_data/navigation.yml +18 -0
- data/_includes/editables/editables.html +15 -0
- data/_includes/figure +9 -0
- data/_includes/footer/custom.html +3 -0
- data/_includes/footer.html +27 -0
- data/_includes/gallery +35 -0
- data/_includes/head/custom.html +12 -0
- data/_includes/head.html +23 -0
- data/_includes/image-text-row +61 -0
- data/_includes/masthead.html +35 -0
- data/_includes/page__hero.html +46 -0
- data/_includes/popup.html +43 -0
- data/_includes/round-images +30 -0
- data/_includes/scripts.html +13 -0
- data/_includes/seo.html +158 -0
- data/_includes/video +24 -0
- data/_layouts/default.html +78 -0
- data/_layouts/page.html +13 -0
- data/_sass/oneflow/_animations.scss +21 -0
- data/_sass/oneflow/_base.scss +356 -0
- data/_sass/oneflow/_boxes.scss +46 -0
- data/_sass/oneflow/_buttons.scss +95 -0
- data/_sass/oneflow/_fonts.scss +18 -0
- data/_sass/oneflow/_footer.scss +121 -0
- data/_sass/oneflow/_masthead.scss +97 -0
- data/_sass/oneflow/_mixins.scss +92 -0
- data/_sass/oneflow/_navigation.scss +412 -0
- data/_sass/oneflow/_notices.scss +109 -0
- data/_sass/oneflow/_page.scss +287 -0
- data/_sass/oneflow/_print.scss +252 -0
- data/_sass/oneflow/_reset.scss +187 -0
- data/_sass/oneflow/_sections.scss +29 -0
- data/_sass/oneflow/_utilities.scss +307 -0
- data/_sass/oneflow/_variables.scss +140 -0
- data/_sass/oneflow/skins/_air.scss +23 -0
- data/_sass/oneflow/skins/_aqua.scss +34 -0
- data/_sass/oneflow/skins/_contrast.scss +52 -0
- data/_sass/oneflow/skins/_dark.scss +30 -0
- data/_sass/oneflow/skins/_default.scss +5 -0
- data/_sass/oneflow/skins/_dirt.scss +33 -0
- data/_sass/oneflow/skins/_mint.scss +24 -0
- data/_sass/oneflow/skins/_neon.scss +63 -0
- data/_sass/oneflow/skins/_plum.scss +70 -0
- data/_sass/oneflow/skins/_sunrise.scss +49 -0
- data/_sass/oneflow/vendor/breakpoint/_breakpoint.scss +114 -0
- data/_sass/oneflow/vendor/breakpoint/_context.scss +95 -0
- data/_sass/oneflow/vendor/breakpoint/_helpers.scss +151 -0
- data/_sass/oneflow/vendor/breakpoint/_legacy-settings.scss +50 -0
- data/_sass/oneflow/vendor/breakpoint/_no-query.scss +15 -0
- data/_sass/oneflow/vendor/breakpoint/_parsers.scss +215 -0
- data/_sass/oneflow/vendor/breakpoint/_respond-to.scss +82 -0
- data/_sass/oneflow/vendor/breakpoint/_settings.scss +71 -0
- data/_sass/oneflow/vendor/breakpoint/parsers/_double.scss +33 -0
- data/_sass/oneflow/vendor/breakpoint/parsers/_query.scss +82 -0
- data/_sass/oneflow/vendor/breakpoint/parsers/_resolution.scss +31 -0
- data/_sass/oneflow/vendor/breakpoint/parsers/_single.scss +26 -0
- data/_sass/oneflow/vendor/breakpoint/parsers/_triple.scss +36 -0
- data/_sass/oneflow/vendor/breakpoint/parsers/double/_default-pair.scss +21 -0
- data/_sass/oneflow/vendor/breakpoint/parsers/double/_default.scss +22 -0
- data/_sass/oneflow/vendor/breakpoint/parsers/double/_double-string.scss +22 -0
- data/_sass/oneflow/vendor/breakpoint/parsers/resolution/_resolution.scss +60 -0
- data/_sass/oneflow/vendor/breakpoint/parsers/single/_default.scss +13 -0
- data/_sass/oneflow/vendor/breakpoint/parsers/triple/_default.scss +18 -0
- data/_sass/oneflow/vendor/magnific-popup/_magnific-popup.scss +649 -0
- data/_sass/oneflow/vendor/magnific-popup/_settings.scss +46 -0
- data/_sass/oneflow/vendor/susy/_su.scss +4 -0
- data/_sass/oneflow/vendor/susy/_susy-prefix.scss +13 -0
- data/_sass/oneflow/vendor/susy/_susy.scss +5 -0
- data/_sass/oneflow/vendor/susy/plugins/_svg-grid.scss +5 -0
- data/_sass/oneflow/vendor/susy/plugins/svg-grid/_prefix.scss +7 -0
- data/_sass/oneflow/vendor/susy/plugins/svg-grid/_svg-api.scss +114 -0
- data/_sass/oneflow/vendor/susy/plugins/svg-grid/_svg-grid-math.scss +67 -0
- data/_sass/oneflow/vendor/susy/plugins/svg-grid/_svg-settings.scss +14 -0
- data/_sass/oneflow/vendor/susy/plugins/svg-grid/_svg-unprefix.scss +18 -0
- data/_sass/oneflow/vendor/susy/plugins/svg-grid/_svg-utilities.scss +133 -0
- data/_sass/oneflow/vendor/susy/susy/_api.scss +318 -0
- data/_sass/oneflow/vendor/susy/susy/_normalize.scss +261 -0
- data/_sass/oneflow/vendor/susy/susy/_parse.scss +163 -0
- data/_sass/oneflow/vendor/susy/susy/_settings.scss +329 -0
- data/_sass/oneflow/vendor/susy/susy/_su-math.scss +441 -0
- data/_sass/oneflow/vendor/susy/susy/_su-validate.scss +213 -0
- data/_sass/oneflow/vendor/susy/susy/_syntax-helpers.scss +191 -0
- data/_sass/oneflow/vendor/susy/susy/_unprefix.scss +56 -0
- data/_sass/oneflow/vendor/susy/susy/_utilities.scss +167 -0
- data/_sass/oneflow.scss +33 -0
- data/assets/css/all.min.css +9 -0
- data/assets/css/custom-styles.css +1 -0
- data/assets/css/main.scss +13 -0
- data/assets/fonts/great-vibes-v18-latin-regular.woff2 +0 -0
- data/assets/images/header.webp +0 -0
- data/assets/images/logo.webp +0 -0
- data/assets/images/sydney-2.webp +0 -0
- data/assets/images/sydney-3.webp +0 -0
- data/assets/images/sydney-4.webp +0 -0
- data/assets/images/sydney-5.webp +0 -0
- data/assets/images/sydney-6.webp +0 -0
- data/assets/js/_main.js +136 -0
- data/assets/js/lunr/lunr-en.js +73 -0
- data/assets/js/lunr/lunr-gr.js +526 -0
- data/assets/js/lunr/lunr-store.js +84 -0
- data/assets/js/lunr/lunr.js +3475 -0
- data/assets/js/lunr/lunr.min.js +6 -0
- data/assets/js/main.min.js +6 -0
- data/assets/js/plugins/gumshoe.js +484 -0
- data/assets/js/plugins/jquery.ba-throttle-debounce.js +252 -0
- data/assets/js/plugins/jquery.fitvids.js +82 -0
- data/assets/js/plugins/jquery.greedy-navigation.js +127 -0
- data/assets/js/plugins/jquery.magnific-popup.js +1860 -0
- data/assets/js/plugins/smooth-scroll.js +650 -0
- data/assets/js/vendor/jquery/jquery-3.6.0.js +10881 -0
- data/assets/webfonts/fa-brands-400.ttf +0 -0
- data/assets/webfonts/fa-brands-400.woff2 +0 -0
- data/assets/webfonts/fa-regular-400.ttf +0 -0
- data/assets/webfonts/fa-regular-400.woff2 +0 -0
- data/assets/webfonts/fa-solid-900.ttf +0 -0
- data/assets/webfonts/fa-solid-900.woff2 +0 -0
- data/assets/webfonts/fa-v4compatibility.ttf +0 -0
- data/assets/webfonts/fa-v4compatibility.woff2 +0 -0
- metadata +253 -0
@@ -0,0 +1,82 @@
|
|
1
|
+
@function breakpoint-parse-query($query) {
|
2
|
+
// Parse features out of an individual query
|
3
|
+
$feature-holder: ();
|
4
|
+
$query-holder: ();
|
5
|
+
$length: length($query);
|
6
|
+
|
7
|
+
@if $length == 2 {
|
8
|
+
// If we've got a string/number, number/string, check to see if it's a valid string/number pair or two singles
|
9
|
+
@if (type-of(nth($query, 1)) == 'string' and type-of(nth($query, 2)) == 'number') or (type-of(nth($query, 1)) == 'number' and type-of(nth($query, 2)) == 'string') {
|
10
|
+
|
11
|
+
$number: '';
|
12
|
+
$value: '';
|
13
|
+
|
14
|
+
@if type-of(nth($query, 1)) == 'string' {
|
15
|
+
$number: nth($query, 2);
|
16
|
+
$value: nth($query, 1);
|
17
|
+
}
|
18
|
+
@else {
|
19
|
+
$number: nth($query, 1);
|
20
|
+
$value: nth($query, 2);
|
21
|
+
}
|
22
|
+
|
23
|
+
// If the string value can be a single value, check to see if the number passed in is a valid input for said single value. Fortunately, all current single-value options only accept unitless numbers, so this check is easy.
|
24
|
+
@if breakpoint-single-string($value) {
|
25
|
+
@if unitless($number) {
|
26
|
+
$feature-holder: append($value, $number, space);
|
27
|
+
$query-holder: append($query-holder, $feature-holder, comma);
|
28
|
+
@return $query-holder;
|
29
|
+
}
|
30
|
+
}
|
31
|
+
// If the string is a media type, split the query
|
32
|
+
@if breakpoint-is-media($value) {
|
33
|
+
$query-holder: append($query-holder, nth($query, 1));
|
34
|
+
$query-holder: append($query-holder, nth($query, 2));
|
35
|
+
@return $query-holder;
|
36
|
+
}
|
37
|
+
// If it's not a single feature, we're just going to assume it's a proper string/value pair, and roll with it.
|
38
|
+
@else {
|
39
|
+
$feature-holder: append($value, $number, space);
|
40
|
+
$query-holder: append($query-holder, $feature-holder, comma);
|
41
|
+
@return $query-holder;
|
42
|
+
}
|
43
|
+
|
44
|
+
}
|
45
|
+
// If they're both numbers, we assume it's a double and roll with that
|
46
|
+
@else if (type-of(nth($query, 1)) == 'number' and type-of(nth($query, 2)) == 'number') {
|
47
|
+
$feature-holder: append(nth($query, 1), nth($query, 2), space);
|
48
|
+
$query-holder: append($query-holder, $feature-holder, comma);
|
49
|
+
@return $query-holder;
|
50
|
+
}
|
51
|
+
// If they're both strings and neither are singles, we roll with that.
|
52
|
+
@else if (type-of(nth($query, 1)) == 'string' and type-of(nth($query, 2)) == 'string') {
|
53
|
+
@if not breakpoint-single-string(nth($query, 1)) and not breakpoint-single-string(nth($query, 2)) {
|
54
|
+
$feature-holder: append(nth($query, 1), nth($query, 2), space);
|
55
|
+
$query-holder: append($query-holder, $feature-holder, comma);
|
56
|
+
@return $query-holder;
|
57
|
+
}
|
58
|
+
}
|
59
|
+
}
|
60
|
+
@else if $length == 3 {
|
61
|
+
// If we've got three items and none is a list, we check to see
|
62
|
+
@if type-of(nth($query, 1)) != 'list' and type-of(nth($query, 2)) != 'list' and type-of(nth($query, 3)) != 'list' {
|
63
|
+
// If none of the items are single string values and none of the values are media values, we're good.
|
64
|
+
@if (not breakpoint-single-string(nth($query, 1)) and not breakpoint-single-string(nth($query, 2)) and not breakpoint-single-string(nth($query, 3))) and ((not breakpoint-is-media(nth($query, 1)) and not breakpoint-is-media(nth($query, 2)) and not breakpoint-is-media(nth($query, 3)))) {
|
65
|
+
$feature-holder: append(nth($query, 1), nth($query, 2), space);
|
66
|
+
$feature-holder: append($feature-holder, nth($query, 3), space);
|
67
|
+
$query-holder: append($query-holder, $feature-holder, comma);
|
68
|
+
@return $query-holder;
|
69
|
+
}
|
70
|
+
// let's check to see if the first item is a media type
|
71
|
+
@else if breakpoint-is-media(nth($query, 1)) {
|
72
|
+
$query-holder: append($query-holder, nth($query, 1));
|
73
|
+
$feature-holder: append(nth($query, 2), nth($query, 3), space);
|
74
|
+
$query-holder: append($query-holder, $feature-holder);
|
75
|
+
@return $query-holder;
|
76
|
+
}
|
77
|
+
}
|
78
|
+
}
|
79
|
+
|
80
|
+
// If it's a single item, or if it's not a special case double or triple, we can simply return the query.
|
81
|
+
@return $query;
|
82
|
+
}
|
@@ -0,0 +1,31 @@
|
|
1
|
+
@import "resolution/resolution";
|
2
|
+
|
3
|
+
@function breakpoint-build-resolution($query-print, $query-resolution, $empty-media, $first) {
|
4
|
+
$leader: '';
|
5
|
+
// If we're forcing
|
6
|
+
@if not ($empty-media) or not ($first) {
|
7
|
+
$leader: 'and ';
|
8
|
+
}
|
9
|
+
|
10
|
+
@if breakpoint-get('transform resolutions') and $query-resolution {
|
11
|
+
$resolutions: breakpoint-make-resolutions($query-resolution);
|
12
|
+
$length: length($resolutions);
|
13
|
+
$query-holder: '';
|
14
|
+
|
15
|
+
@for $i from 1 through $length {
|
16
|
+
$query: '#{$query-print} #{$leader}#{nth($resolutions, $i)}';
|
17
|
+
@if $i == 1 {
|
18
|
+
$query-holder: $query;
|
19
|
+
}
|
20
|
+
@else {
|
21
|
+
$query-holder: '#{$query-holder}, #{$query}';
|
22
|
+
}
|
23
|
+
}
|
24
|
+
|
25
|
+
@return $query-holder;
|
26
|
+
}
|
27
|
+
@else {
|
28
|
+
// Return with attached resolution
|
29
|
+
@return $query-print;
|
30
|
+
}
|
31
|
+
}
|
@@ -0,0 +1,26 @@
|
|
1
|
+
//////////////////////////////
|
2
|
+
// Import Pieces
|
3
|
+
//////////////////////////////
|
4
|
+
@import "single/default";
|
5
|
+
|
6
|
+
@function breakpoint-parse-single($feature, $empty-media, $first) {
|
7
|
+
$parsed: '';
|
8
|
+
$leader: '';
|
9
|
+
// If we're forcing
|
10
|
+
@if not ($empty-media) or not ($first) {
|
11
|
+
$leader: 'and ';
|
12
|
+
}
|
13
|
+
|
14
|
+
// If it's a single feature that can stand alone, we let it
|
15
|
+
@if (breakpoint-single-string($feature)) {
|
16
|
+
$parsed: $feature;
|
17
|
+
// Set Context
|
18
|
+
$context-setter: private-breakpoint-set-context($feature, $feature);
|
19
|
+
}
|
20
|
+
// If it's not a stand alone feature, we pass it off to the default handler.
|
21
|
+
@else {
|
22
|
+
$parsed: breakpoint-parse-default($feature);
|
23
|
+
}
|
24
|
+
|
25
|
+
@return $leader + '(' + $parsed + ')';
|
26
|
+
}
|
@@ -0,0 +1,36 @@
|
|
1
|
+
//////////////////////////////
|
2
|
+
// Import Pieces
|
3
|
+
//////////////////////////////
|
4
|
+
@import "triple/default";
|
5
|
+
|
6
|
+
@function breakpoint-parse-triple($feature, $empty-media, $first) {
|
7
|
+
$parsed: '';
|
8
|
+
$leader: '';
|
9
|
+
|
10
|
+
// If we're forcing
|
11
|
+
@if not ($empty-media) or not ($first) {
|
12
|
+
$leader: 'and ';
|
13
|
+
}
|
14
|
+
|
15
|
+
// separate the string features from the value numbers
|
16
|
+
$string: null;
|
17
|
+
$numbers: null;
|
18
|
+
@each $val in $feature {
|
19
|
+
@if type-of($val) == string {
|
20
|
+
$string: $val;
|
21
|
+
}
|
22
|
+
@else {
|
23
|
+
@if type-of($numbers) == 'null' {
|
24
|
+
$numbers: $val;
|
25
|
+
}
|
26
|
+
@else {
|
27
|
+
$numbers: append($numbers, $val);
|
28
|
+
}
|
29
|
+
}
|
30
|
+
}
|
31
|
+
|
32
|
+
$parsed: breakpoint-parse-triple-default($string, nth($numbers, 1), nth($numbers, 2));
|
33
|
+
|
34
|
+
@return $leader + $parsed;
|
35
|
+
|
36
|
+
}
|
@@ -0,0 +1,21 @@
|
|
1
|
+
@function breakpoint-parse-default-pair($first, $second) {
|
2
|
+
$default: breakpoint-get('default pair');
|
3
|
+
$min: '';
|
4
|
+
$max: '';
|
5
|
+
|
6
|
+
// Sort into min and max
|
7
|
+
$min: min($first, $second);
|
8
|
+
$max: max($first, $second);
|
9
|
+
|
10
|
+
// Set Context
|
11
|
+
$context-setter: private-breakpoint-set-context(min-#{$default}, $min);
|
12
|
+
$context-setter: private-breakpoint-set-context(max-#{$default}, $max);
|
13
|
+
|
14
|
+
// Make them EMs if need be
|
15
|
+
@if (breakpoint-get('to ems') == true) {
|
16
|
+
$min: breakpoint-to-base-em($min);
|
17
|
+
$max: breakpoint-to-base-em($max);
|
18
|
+
}
|
19
|
+
|
20
|
+
@return '(min-#{$default}: #{$min}) and (max-#{$default}: #{$max})';
|
21
|
+
}
|
@@ -0,0 +1,22 @@
|
|
1
|
+
@function breakpoint-parse-double-default($first, $second) {
|
2
|
+
$feature: '';
|
3
|
+
$value: '';
|
4
|
+
|
5
|
+
@if type-of($first) == 'string' {
|
6
|
+
$feature: $first;
|
7
|
+
$value: $second;
|
8
|
+
}
|
9
|
+
@else {
|
10
|
+
$feature: $second;
|
11
|
+
$value: $first;
|
12
|
+
}
|
13
|
+
|
14
|
+
// Set Context
|
15
|
+
$context-setter: private-breakpoint-set-context($feature, $value);
|
16
|
+
|
17
|
+
@if (breakpoint-get('to ems') == true) {
|
18
|
+
$value: breakpoint-to-base-em($value);
|
19
|
+
}
|
20
|
+
|
21
|
+
@return '(#{$feature}: #{$value})'
|
22
|
+
}
|
@@ -0,0 +1,22 @@
|
|
1
|
+
@function breakpoint-parse-double-string($first, $second) {
|
2
|
+
$feature: '';
|
3
|
+
$value: '';
|
4
|
+
|
5
|
+
// Test to see which is the feature and which is the value
|
6
|
+
@if (breakpoint-string-value($first) == true) {
|
7
|
+
$feature: $first;
|
8
|
+
$value: $second;
|
9
|
+
}
|
10
|
+
@else if (breakpoint-string-value($second) == true) {
|
11
|
+
$feature: $second;
|
12
|
+
$value: $first;
|
13
|
+
}
|
14
|
+
@else {
|
15
|
+
@warn "Neither #{$first} nor #{$second} is a valid media query name.";
|
16
|
+
}
|
17
|
+
|
18
|
+
// Set Context
|
19
|
+
$context-setter: private-breakpoint-set-context($feature, $value);
|
20
|
+
|
21
|
+
@return '(#{$feature}: #{$value})';
|
22
|
+
}
|
@@ -0,0 +1,60 @@
|
|
1
|
+
@function breakpoint-make-resolutions($resolution) {
|
2
|
+
$length: length($resolution);
|
3
|
+
|
4
|
+
$output: ();
|
5
|
+
|
6
|
+
@if $length == 2 {
|
7
|
+
$feature: '';
|
8
|
+
$value: '';
|
9
|
+
|
10
|
+
// Find which is number
|
11
|
+
@if type-of(nth($resolution, 1)) == 'number' {
|
12
|
+
$value: nth($resolution, 1);
|
13
|
+
}
|
14
|
+
@else {
|
15
|
+
$value: nth($resolution, 2);
|
16
|
+
}
|
17
|
+
|
18
|
+
// Determine min/max/standard
|
19
|
+
@if index($resolution, 'min-resolution') {
|
20
|
+
$feature: 'min-';
|
21
|
+
}
|
22
|
+
@else if index($resolution, 'max-resolution') {
|
23
|
+
$feature: 'max-';
|
24
|
+
}
|
25
|
+
|
26
|
+
$standard: '(#{$feature}resolution: #{$value})';
|
27
|
+
|
28
|
+
// If we're not dealing with dppx,
|
29
|
+
@if unit($value) != 'dppx' {
|
30
|
+
$base: 96dpi;
|
31
|
+
@if unit($value) == 'dpcm' {
|
32
|
+
$base: 243.84dpcm;
|
33
|
+
}
|
34
|
+
// Write out feature tests
|
35
|
+
$webkit: '';
|
36
|
+
$moz: '';
|
37
|
+
$webkit: '(-webkit-#{$feature}device-pixel-ratio: #{$value / $base})';
|
38
|
+
$moz: '(#{$feature}-moz-device-pixel-ratio: #{$value / $base})';
|
39
|
+
// Append to output
|
40
|
+
$output: append($output, $standard, space);
|
41
|
+
$output: append($output, $webkit, space);
|
42
|
+
$output: append($output, $moz, space);
|
43
|
+
}
|
44
|
+
@else {
|
45
|
+
$webkit: '';
|
46
|
+
$moz: '';
|
47
|
+
$webkit: '(-webkit-#{$feature}device-pixel-ratio: #{$value / 1dppx})';
|
48
|
+
$moz: '(#{$feature}-moz-device-pixel-ratio: #{$value / 1dppx})';
|
49
|
+
$fallback: '(#{$feature}resolution: #{$value / 1dppx * 96dpi})';
|
50
|
+
// Append to output
|
51
|
+
$output: append($output, $standard, space);
|
52
|
+
$output: append($output, $webkit, space);
|
53
|
+
$output: append($output, $moz, space);
|
54
|
+
$output: append($output, $fallback, space);
|
55
|
+
}
|
56
|
+
|
57
|
+
}
|
58
|
+
|
59
|
+
@return $output;
|
60
|
+
}
|
@@ -0,0 +1,13 @@
|
|
1
|
+
@function breakpoint-parse-default($feature) {
|
2
|
+
$default: breakpoint-get('default feature');
|
3
|
+
|
4
|
+
// Set Context
|
5
|
+
$context-setter: private-breakpoint-set-context($default, $feature);
|
6
|
+
|
7
|
+
@if (breakpoint-get('to ems') == true) and (type-of($feature) == 'number') {
|
8
|
+
@return '#{$default}: #{breakpoint-to-base-em($feature)}';
|
9
|
+
}
|
10
|
+
@else {
|
11
|
+
@return '#{$default}: #{$feature}';
|
12
|
+
}
|
13
|
+
}
|
@@ -0,0 +1,18 @@
|
|
1
|
+
@function breakpoint-parse-triple-default($feature, $first, $second) {
|
2
|
+
|
3
|
+
// Sort into min and max
|
4
|
+
$min: min($first, $second);
|
5
|
+
$max: max($first, $second);
|
6
|
+
|
7
|
+
// Set Context
|
8
|
+
$context-setter: private-breakpoint-set-context(min-#{$feature}, $min);
|
9
|
+
$context-setter: private-breakpoint-set-context(max-#{$feature}, $max);
|
10
|
+
|
11
|
+
// Make them EMs if need be
|
12
|
+
@if (breakpoint-get('to ems') == true) {
|
13
|
+
$min: breakpoint-to-base-em($min);
|
14
|
+
$max: breakpoint-to-base-em($max);
|
15
|
+
}
|
16
|
+
|
17
|
+
@return '(min-#{$feature}: #{$min}) and (max-#{$feature}: #{$max})';
|
18
|
+
}
|