From 34dd73eaa26a461897413f60fea6cb065e6c27ae Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Mon, 14 Aug 2023 16:49:22 -0300 Subject: [PATCH 001/108] adding files from original branch try/font-library --- packages/edit-site/lib/inflate.js | 3300 ++++++++++++++ packages/edit-site/lib/lib-font.browser.js | 3829 +++++++++++++++++ packages/edit-site/lib/unbrotli.js | 2006 +++++++++ .../components/global-styles/font-families.js | 79 + .../global-styles/font-family-item.js | 43 + .../font-library-modal/constants.js | 45 + .../font-library-modal/context.js | 348 ++ .../font-library-modal/font-card.js | 76 + .../font-library-modal/font-demo.js | 58 + .../font-library-modal/font-variant.js | 55 + .../font-library-modal/fonts-grid.js | 52 + .../font-library-modal/google-font-details.js | 34 + .../font-library-modal/google-font-variant.js | 23 + .../font-library-modal/google-fonts.js | 274 ++ .../global-styles/font-library-modal/index.js | 47 + .../font-library-modal/installed-fonts.js | 119 + .../font-library-modal/library-font-card.js | 27 + .../library-font-details.js | 109 + .../library-font-variant.js | 38 + .../font-library-modal/local-font-variant.js | 131 + .../font-library-modal/local-fonts.js | 194 + .../font-library-modal/preview-controls.js | 62 + .../font-library-modal/resolvers.js | 55 + .../font-library-modal/style.scss | 105 + .../font-library-modal/tab-layout.js | 50 + .../global-styles/font-library-modal/utils.js | 16 + .../src/components/save-button/index.js | 20 +- .../src/components/save-hub/index.js | 9 +- packages/edit-site/src/style.scss | 1 + 29 files changed, 11189 insertions(+), 16 deletions(-) create mode 100644 packages/edit-site/lib/inflate.js create mode 100644 packages/edit-site/lib/lib-font.browser.js create mode 100644 packages/edit-site/lib/unbrotli.js create mode 100644 packages/edit-site/src/components/global-styles/font-families.js create mode 100644 packages/edit-site/src/components/global-styles/font-family-item.js create mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/constants.js create mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/context.js create mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/font-card.js create mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/font-demo.js create mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/font-variant.js create mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/fonts-grid.js create mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/google-font-details.js create mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/google-font-variant.js create mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/google-fonts.js create mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/index.js create mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js create mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/library-font-card.js create mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/library-font-details.js create mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/library-font-variant.js create mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/local-font-variant.js create mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js create mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/preview-controls.js create mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/resolvers.js create mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/style.scss create mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/tab-layout.js create mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/utils.js diff --git a/packages/edit-site/lib/inflate.js b/packages/edit-site/lib/inflate.js new file mode 100644 index 0000000000000..c03038745cdc8 --- /dev/null +++ b/packages/edit-site/lib/inflate.js @@ -0,0 +1,3300 @@ +/* pako 1.0.10 nodeca/pako */(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.pako = f()}})(function(){var define,module,exports;return (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i= 252 ? 6 : q >= 248 ? 5 : q >= 240 ? 4 : q >= 224 ? 3 : q >= 192 ? 2 : 1); + } + _utf8len[254] = _utf8len[254] = 1; // Invalid sequence start + + + // convert string to array (typed, when possible) + exports.string2buf = function (str) { + var buf, c, c2, m_pos, i, str_len = str.length, buf_len = 0; + + // count binary size + for (m_pos = 0; m_pos < str_len; m_pos++) { + c = str.charCodeAt(m_pos); + if ((c & 0xfc00) === 0xd800 && (m_pos + 1 < str_len)) { + c2 = str.charCodeAt(m_pos + 1); + if ((c2 & 0xfc00) === 0xdc00) { + c = 0x10000 + ((c - 0xd800) << 10) + (c2 - 0xdc00); + m_pos++; + } + } + buf_len += c < 0x80 ? 1 : c < 0x800 ? 2 : c < 0x10000 ? 3 : 4; + } + + // allocate buffer + buf = new utils.Buf8(buf_len); + + // convert + for (i = 0, m_pos = 0; i < buf_len; m_pos++) { + c = str.charCodeAt(m_pos); + if ((c & 0xfc00) === 0xd800 && (m_pos + 1 < str_len)) { + c2 = str.charCodeAt(m_pos + 1); + if ((c2 & 0xfc00) === 0xdc00) { + c = 0x10000 + ((c - 0xd800) << 10) + (c2 - 0xdc00); + m_pos++; + } + } + if (c < 0x80) { + /* one byte */ + buf[i++] = c; + } else if (c < 0x800) { + /* two bytes */ + buf[i++] = 0xC0 | (c >>> 6); + buf[i++] = 0x80 | (c & 0x3f); + } else if (c < 0x10000) { + /* three bytes */ + buf[i++] = 0xE0 | (c >>> 12); + buf[i++] = 0x80 | (c >>> 6 & 0x3f); + buf[i++] = 0x80 | (c & 0x3f); + } else { + /* four bytes */ + buf[i++] = 0xf0 | (c >>> 18); + buf[i++] = 0x80 | (c >>> 12 & 0x3f); + buf[i++] = 0x80 | (c >>> 6 & 0x3f); + buf[i++] = 0x80 | (c & 0x3f); + } + } + + return buf; + }; + + // Helper (used in 2 places) + function buf2binstring(buf, len) { + // On Chrome, the arguments in a function call that are allowed is `65534`. + // If the length of the buffer is smaller than that, we can use this optimization, + // otherwise we will take a slower path. + if (len < 65534) { + if ((buf.subarray && STR_APPLY_UIA_OK) || (!buf.subarray && STR_APPLY_OK)) { + return String.fromCharCode.apply(null, utils.shrinkBuf(buf, len)); + } + } + + var result = ''; + for (var i = 0; i < len; i++) { + result += String.fromCharCode(buf[i]); + } + return result; + } + + + // Convert byte array to binary string + exports.buf2binstring = function (buf) { + return buf2binstring(buf, buf.length); + }; + + + // Convert binary string (typed, when possible) + exports.binstring2buf = function (str) { + var buf = new utils.Buf8(str.length); + for (var i = 0, len = buf.length; i < len; i++) { + buf[i] = str.charCodeAt(i); + } + return buf; + }; + + + // convert array to string + exports.buf2string = function (buf, max) { + var i, out, c, c_len; + var len = max || buf.length; + + // Reserve max possible length (2 words per char) + // NB: by unknown reasons, Array is significantly faster for + // String.fromCharCode.apply than Uint16Array. + var utf16buf = new Array(len * 2); + + for (out = 0, i = 0; i < len;) { + c = buf[i++]; + // quick process ascii + if (c < 0x80) { utf16buf[out++] = c; continue; } + + c_len = _utf8len[c]; + // skip 5 & 6 byte codes + if (c_len > 4) { utf16buf[out++] = 0xfffd; i += c_len - 1; continue; } + + // apply mask on first byte + c &= c_len === 2 ? 0x1f : c_len === 3 ? 0x0f : 0x07; + // join the rest + while (c_len > 1 && i < len) { + c = (c << 6) | (buf[i++] & 0x3f); + c_len--; + } + + // terminated by end of string? + if (c_len > 1) { utf16buf[out++] = 0xfffd; continue; } + + if (c < 0x10000) { + utf16buf[out++] = c; + } else { + c -= 0x10000; + utf16buf[out++] = 0xd800 | ((c >> 10) & 0x3ff); + utf16buf[out++] = 0xdc00 | (c & 0x3ff); + } + } + + return buf2binstring(utf16buf, out); + }; + + + // Calculate max possible position in utf8 buffer, + // that will not break sequence. If that's not possible + // - (very small limits) return max size as is. + // + // buf[] - utf8 bytes array + // max - length limit (mandatory); + exports.utf8border = function (buf, max) { + var pos; + + max = max || buf.length; + if (max > buf.length) { max = buf.length; } + + // go back from last position, until start of sequence found + pos = max - 1; + while (pos >= 0 && (buf[pos] & 0xC0) === 0x80) { pos--; } + + // Very small and broken sequence, + // return max, because we should return something anyway. + if (pos < 0) { return max; } + + // If we came to start of buffer - that means buffer is too small, + // return max too. + if (pos === 0) { return max; } + + return (pos + _utf8len[buf[pos]] > max) ? pos : max; + }; + + },{"./common":1}],3:[function(require,module,exports){ + 'use strict'; + + // Note: adler32 takes 12% for level 0 and 2% for level 6. + // It isn't worth it to make additional optimizations as in original. + // Small size is preferable. + + // (C) 1995-2013 Jean-loup Gailly and Mark Adler + // (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin + // + // This software is provided 'as-is', without any express or implied + // warranty. In no event will the authors be held liable for any damages + // arising from the use of this software. + // + // Permission is granted to anyone to use this software for any purpose, + // including commercial applications, and to alter it and redistribute it + // freely, subject to the following restrictions: + // + // 1. The origin of this software must not be misrepresented; you must not + // claim that you wrote the original software. If you use this software + // in a product, an acknowledgment in the product documentation would be + // appreciated but is not required. + // 2. Altered source versions must be plainly marked as such, and must not be + // misrepresented as being the original software. + // 3. This notice may not be removed or altered from any source distribution. + + function adler32(adler, buf, len, pos) { + var s1 = (adler & 0xffff) |0, + s2 = ((adler >>> 16) & 0xffff) |0, + n = 0; + + while (len !== 0) { + // Set limit ~ twice less than 5552, to keep + // s2 in 31-bits, because we force signed ints. + // in other case %= will fail. + n = len > 2000 ? 2000 : len; + len -= n; + + do { + s1 = (s1 + buf[pos++]) |0; + s2 = (s2 + s1) |0; + } while (--n); + + s1 %= 65521; + s2 %= 65521; + } + + return (s1 | (s2 << 16)) |0; + } + + + module.exports = adler32; + + },{}],4:[function(require,module,exports){ + 'use strict'; + + // (C) 1995-2013 Jean-loup Gailly and Mark Adler + // (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin + // + // This software is provided 'as-is', without any express or implied + // warranty. In no event will the authors be held liable for any damages + // arising from the use of this software. + // + // Permission is granted to anyone to use this software for any purpose, + // including commercial applications, and to alter it and redistribute it + // freely, subject to the following restrictions: + // + // 1. The origin of this software must not be misrepresented; you must not + // claim that you wrote the original software. If you use this software + // in a product, an acknowledgment in the product documentation would be + // appreciated but is not required. + // 2. Altered source versions must be plainly marked as such, and must not be + // misrepresented as being the original software. + // 3. This notice may not be removed or altered from any source distribution. + + module.exports = { + + /* Allowed flush values; see deflate() and inflate() below for details */ + Z_NO_FLUSH: 0, + Z_PARTIAL_FLUSH: 1, + Z_SYNC_FLUSH: 2, + Z_FULL_FLUSH: 3, + Z_FINISH: 4, + Z_BLOCK: 5, + Z_TREES: 6, + + /* Return codes for the compression/decompression functions. Negative values + * are errors, positive values are used for special but normal events. + */ + Z_OK: 0, + Z_STREAM_END: 1, + Z_NEED_DICT: 2, + Z_ERRNO: -1, + Z_STREAM_ERROR: -2, + Z_DATA_ERROR: -3, + //Z_MEM_ERROR: -4, + Z_BUF_ERROR: -5, + //Z_VERSION_ERROR: -6, + + /* compression levels */ + Z_NO_COMPRESSION: 0, + Z_BEST_SPEED: 1, + Z_BEST_COMPRESSION: 9, + Z_DEFAULT_COMPRESSION: -1, + + + Z_FILTERED: 1, + Z_HUFFMAN_ONLY: 2, + Z_RLE: 3, + Z_FIXED: 4, + Z_DEFAULT_STRATEGY: 0, + + /* Possible values of the data_type field (though see inflate()) */ + Z_BINARY: 0, + Z_TEXT: 1, + //Z_ASCII: 1, // = Z_TEXT (deprecated) + Z_UNKNOWN: 2, + + /* The deflate compression method */ + Z_DEFLATED: 8 + //Z_NULL: null // Use -1 or null inline, depending on var type + }; + + },{}],5:[function(require,module,exports){ + 'use strict'; + + // Note: we can't get significant speed boost here. + // So write code to minimize size - no pregenerated tables + // and array tools dependencies. + + // (C) 1995-2013 Jean-loup Gailly and Mark Adler + // (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin + // + // This software is provided 'as-is', without any express or implied + // warranty. In no event will the authors be held liable for any damages + // arising from the use of this software. + // + // Permission is granted to anyone to use this software for any purpose, + // including commercial applications, and to alter it and redistribute it + // freely, subject to the following restrictions: + // + // 1. The origin of this software must not be misrepresented; you must not + // claim that you wrote the original software. If you use this software + // in a product, an acknowledgment in the product documentation would be + // appreciated but is not required. + // 2. Altered source versions must be plainly marked as such, and must not be + // misrepresented as being the original software. + // 3. This notice may not be removed or altered from any source distribution. + + // Use ordinary array, since untyped makes no boost here + function makeTable() { + var c, table = []; + + for (var n = 0; n < 256; n++) { + c = n; + for (var k = 0; k < 8; k++) { + c = ((c & 1) ? (0xEDB88320 ^ (c >>> 1)) : (c >>> 1)); + } + table[n] = c; + } + + return table; + } + + // Create table on load. Just 255 signed longs. Not a problem. + var crcTable = makeTable(); + + + function crc32(crc, buf, len, pos) { + var t = crcTable, + end = pos + len; + + crc ^= -1; + + for (var i = pos; i < end; i++) { + crc = (crc >>> 8) ^ t[(crc ^ buf[i]) & 0xFF]; + } + + return (crc ^ (-1)); // >>> 0; + } + + + module.exports = crc32; + + },{}],6:[function(require,module,exports){ + 'use strict'; + + // (C) 1995-2013 Jean-loup Gailly and Mark Adler + // (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin + // + // This software is provided 'as-is', without any express or implied + // warranty. In no event will the authors be held liable for any damages + // arising from the use of this software. + // + // Permission is granted to anyone to use this software for any purpose, + // including commercial applications, and to alter it and redistribute it + // freely, subject to the following restrictions: + // + // 1. The origin of this software must not be misrepresented; you must not + // claim that you wrote the original software. If you use this software + // in a product, an acknowledgment in the product documentation would be + // appreciated but is not required. + // 2. Altered source versions must be plainly marked as such, and must not be + // misrepresented as being the original software. + // 3. This notice may not be removed or altered from any source distribution. + + function GZheader() { + /* true if compressed data believed to be text */ + this.text = 0; + /* modification time */ + this.time = 0; + /* extra flags (not used when writing a gzip file) */ + this.xflags = 0; + /* operating system */ + this.os = 0; + /* pointer to extra field or Z_NULL if none */ + this.extra = null; + /* extra field length (valid if extra != Z_NULL) */ + this.extra_len = 0; // Actually, we don't need it in JS, + // but leave for few code modifications + + // + // Setup limits is not necessary because in js we should not preallocate memory + // for inflate use constant limit in 65536 bytes + // + + /* space at extra (only when reading header) */ + // this.extra_max = 0; + /* pointer to zero-terminated file name or Z_NULL */ + this.name = ''; + /* space at name (only when reading header) */ + // this.name_max = 0; + /* pointer to zero-terminated comment or Z_NULL */ + this.comment = ''; + /* space at comment (only when reading header) */ + // this.comm_max = 0; + /* true if there was or will be a header crc */ + this.hcrc = 0; + /* true when done reading gzip header (not used when writing a gzip file) */ + this.done = false; + } + + module.exports = GZheader; + + },{}],7:[function(require,module,exports){ + 'use strict'; + + // (C) 1995-2013 Jean-loup Gailly and Mark Adler + // (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin + // + // This software is provided 'as-is', without any express or implied + // warranty. In no event will the authors be held liable for any damages + // arising from the use of this software. + // + // Permission is granted to anyone to use this software for any purpose, + // including commercial applications, and to alter it and redistribute it + // freely, subject to the following restrictions: + // + // 1. The origin of this software must not be misrepresented; you must not + // claim that you wrote the original software. If you use this software + // in a product, an acknowledgment in the product documentation would be + // appreciated but is not required. + // 2. Altered source versions must be plainly marked as such, and must not be + // misrepresented as being the original software. + // 3. This notice may not be removed or altered from any source distribution. + + // See state defs from inflate.js + var BAD = 30; /* got a data error -- remain here until reset */ + var TYPE = 12; /* i: waiting for type bits, including last-flag bit */ + + /* + Decode literal, length, and distance codes and write out the resulting + literal and match bytes until either not enough input or output is + available, an end-of-block is encountered, or a data error is encountered. + When large enough input and output buffers are supplied to inflate(), for + example, a 16K input buffer and a 64K output buffer, more than 95% of the + inflate execution time is spent in this routine. + + Entry assumptions: + + state.mode === LEN + strm.avail_in >= 6 + strm.avail_out >= 258 + start >= strm.avail_out + state.bits < 8 + + On return, state.mode is one of: + + LEN -- ran out of enough output space or enough available input + TYPE -- reached end of block code, inflate() to interpret next block + BAD -- error in block data + + Notes: + + - The maximum input bits used by a length/distance pair is 15 bits for the + length code, 5 bits for the length extra, 15 bits for the distance code, + and 13 bits for the distance extra. This totals 48 bits, or six bytes. + Therefore if strm.avail_in >= 6, then there is enough input to avoid + checking for available input while decoding. + + - The maximum bytes that a single length/distance pair can output is 258 + bytes, which is the maximum length that can be coded. inflate_fast() + requires strm.avail_out >= 258 for each loop to avoid checking for + output space. + */ + module.exports = function inflate_fast(strm, start) { + var state; + var _in; /* local strm.input */ + var last; /* have enough input while in < last */ + var _out; /* local strm.output */ + var beg; /* inflate()'s initial strm.output */ + var end; /* while out < end, enough space available */ + //#ifdef INFLATE_STRICT + var dmax; /* maximum distance from zlib header */ + //#endif + var wsize; /* window size or zero if not using window */ + var whave; /* valid bytes in the window */ + var wnext; /* window write index */ + // Use `s_window` instead `window`, avoid conflict with instrumentation tools + var s_window; /* allocated sliding window, if wsize != 0 */ + var hold; /* local strm.hold */ + var bits; /* local strm.bits */ + var lcode; /* local strm.lencode */ + var dcode; /* local strm.distcode */ + var lmask; /* mask for first level of length codes */ + var dmask; /* mask for first level of distance codes */ + var here; /* retrieved table entry */ + var op; /* code bits, operation, extra bits, or */ + /* window position, window bytes to copy */ + var len; /* match length, unused bytes */ + var dist; /* match distance */ + var from; /* where to copy match from */ + var from_source; + + + var input, output; // JS specific, because we have no pointers + + /* copy state to local variables */ + state = strm.state; + //here = state.here; + _in = strm.next_in; + input = strm.input; + last = _in + (strm.avail_in - 5); + _out = strm.next_out; + output = strm.output; + beg = _out - (start - strm.avail_out); + end = _out + (strm.avail_out - 257); + //#ifdef INFLATE_STRICT + dmax = state.dmax; + //#endif + wsize = state.wsize; + whave = state.whave; + wnext = state.wnext; + s_window = state.window; + hold = state.hold; + bits = state.bits; + lcode = state.lencode; + dcode = state.distcode; + lmask = (1 << state.lenbits) - 1; + dmask = (1 << state.distbits) - 1; + + + /* decode literals and length/distances until end-of-block or not enough + input data or output space */ + + top: + do { + if (bits < 15) { + hold += input[_in++] << bits; + bits += 8; + hold += input[_in++] << bits; + bits += 8; + } + + here = lcode[hold & lmask]; + + dolen: + for (;;) { // Goto emulation + op = here >>> 24/*here.bits*/; + hold >>>= op; + bits -= op; + op = (here >>> 16) & 0xff/*here.op*/; + if (op === 0) { /* literal */ + //Tracevv((stderr, here.val >= 0x20 && here.val < 0x7f ? + // "inflate: literal '%c'\n" : + // "inflate: literal 0x%02x\n", here.val)); + output[_out++] = here & 0xffff/*here.val*/; + } + else if (op & 16) { /* length base */ + len = here & 0xffff/*here.val*/; + op &= 15; /* number of extra bits */ + if (op) { + if (bits < op) { + hold += input[_in++] << bits; + bits += 8; + } + len += hold & ((1 << op) - 1); + hold >>>= op; + bits -= op; + } + //Tracevv((stderr, "inflate: length %u\n", len)); + if (bits < 15) { + hold += input[_in++] << bits; + bits += 8; + hold += input[_in++] << bits; + bits += 8; + } + here = dcode[hold & dmask]; + + dodist: + for (;;) { // goto emulation + op = here >>> 24/*here.bits*/; + hold >>>= op; + bits -= op; + op = (here >>> 16) & 0xff/*here.op*/; + + if (op & 16) { /* distance base */ + dist = here & 0xffff/*here.val*/; + op &= 15; /* number of extra bits */ + if (bits < op) { + hold += input[_in++] << bits; + bits += 8; + if (bits < op) { + hold += input[_in++] << bits; + bits += 8; + } + } + dist += hold & ((1 << op) - 1); + //#ifdef INFLATE_STRICT + if (dist > dmax) { + strm.msg = 'invalid distance too far back'; + state.mode = BAD; + break top; + } + //#endif + hold >>>= op; + bits -= op; + //Tracevv((stderr, "inflate: distance %u\n", dist)); + op = _out - beg; /* max distance in output */ + if (dist > op) { /* see if copy from window */ + op = dist - op; /* distance back in window */ + if (op > whave) { + if (state.sane) { + strm.msg = 'invalid distance too far back'; + state.mode = BAD; + break top; + } + + // (!) This block is disabled in zlib defaults, + // don't enable it for binary compatibility + //#ifdef INFLATE_ALLOW_INVALID_DISTANCE_TOOFAR_ARRR + // if (len <= op - whave) { + // do { + // output[_out++] = 0; + // } while (--len); + // continue top; + // } + // len -= op - whave; + // do { + // output[_out++] = 0; + // } while (--op > whave); + // if (op === 0) { + // from = _out - dist; + // do { + // output[_out++] = output[from++]; + // } while (--len); + // continue top; + // } + //#endif + } + from = 0; // window index + from_source = s_window; + if (wnext === 0) { /* very common case */ + from += wsize - op; + if (op < len) { /* some from window */ + len -= op; + do { + output[_out++] = s_window[from++]; + } while (--op); + from = _out - dist; /* rest from output */ + from_source = output; + } + } + else if (wnext < op) { /* wrap around window */ + from += wsize + wnext - op; + op -= wnext; + if (op < len) { /* some from end of window */ + len -= op; + do { + output[_out++] = s_window[from++]; + } while (--op); + from = 0; + if (wnext < len) { /* some from start of window */ + op = wnext; + len -= op; + do { + output[_out++] = s_window[from++]; + } while (--op); + from = _out - dist; /* rest from output */ + from_source = output; + } + } + } + else { /* contiguous in window */ + from += wnext - op; + if (op < len) { /* some from window */ + len -= op; + do { + output[_out++] = s_window[from++]; + } while (--op); + from = _out - dist; /* rest from output */ + from_source = output; + } + } + while (len > 2) { + output[_out++] = from_source[from++]; + output[_out++] = from_source[from++]; + output[_out++] = from_source[from++]; + len -= 3; + } + if (len) { + output[_out++] = from_source[from++]; + if (len > 1) { + output[_out++] = from_source[from++]; + } + } + } + else { + from = _out - dist; /* copy direct from output */ + do { /* minimum length is three */ + output[_out++] = output[from++]; + output[_out++] = output[from++]; + output[_out++] = output[from++]; + len -= 3; + } while (len > 2); + if (len) { + output[_out++] = output[from++]; + if (len > 1) { + output[_out++] = output[from++]; + } + } + } + } + else if ((op & 64) === 0) { /* 2nd level distance code */ + here = dcode[(here & 0xffff)/*here.val*/ + (hold & ((1 << op) - 1))]; + continue dodist; + } + else { + strm.msg = 'invalid distance code'; + state.mode = BAD; + break top; + } + + break; // need to emulate goto via "continue" + } + } + else if ((op & 64) === 0) { /* 2nd level length code */ + here = lcode[(here & 0xffff)/*here.val*/ + (hold & ((1 << op) - 1))]; + continue dolen; + } + else if (op & 32) { /* end-of-block */ + //Tracevv((stderr, "inflate: end of block\n")); + state.mode = TYPE; + break top; + } + else { + strm.msg = 'invalid literal/length code'; + state.mode = BAD; + break top; + } + + break; // need to emulate goto via "continue" + } + } while (_in < last && _out < end); + + /* return unused bytes (on entry, bits < 8, so in won't go too far back) */ + len = bits >> 3; + _in -= len; + bits -= len << 3; + hold &= (1 << bits) - 1; + + /* update state and return */ + strm.next_in = _in; + strm.next_out = _out; + strm.avail_in = (_in < last ? 5 + (last - _in) : 5 - (_in - last)); + strm.avail_out = (_out < end ? 257 + (end - _out) : 257 - (_out - end)); + state.hold = hold; + state.bits = bits; + return; + }; + + },{}],8:[function(require,module,exports){ + 'use strict'; + + // (C) 1995-2013 Jean-loup Gailly and Mark Adler + // (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin + // + // This software is provided 'as-is', without any express or implied + // warranty. In no event will the authors be held liable for any damages + // arising from the use of this software. + // + // Permission is granted to anyone to use this software for any purpose, + // including commercial applications, and to alter it and redistribute it + // freely, subject to the following restrictions: + // + // 1. The origin of this software must not be misrepresented; you must not + // claim that you wrote the original software. If you use this software + // in a product, an acknowledgment in the product documentation would be + // appreciated but is not required. + // 2. Altered source versions must be plainly marked as such, and must not be + // misrepresented as being the original software. + // 3. This notice may not be removed or altered from any source distribution. + + var utils = require('../utils/common'); + var adler32 = require('./adler32'); + var crc32 = require('./crc32'); + var inflate_fast = require('./inffast'); + var inflate_table = require('./inftrees'); + + var CODES = 0; + var LENS = 1; + var DISTS = 2; + + /* Public constants ==========================================================*/ + /* ===========================================================================*/ + + + /* Allowed flush values; see deflate() and inflate() below for details */ + //var Z_NO_FLUSH = 0; + //var Z_PARTIAL_FLUSH = 1; + //var Z_SYNC_FLUSH = 2; + //var Z_FULL_FLUSH = 3; + var Z_FINISH = 4; + var Z_BLOCK = 5; + var Z_TREES = 6; + + + /* Return codes for the compression/decompression functions. Negative values + * are errors, positive values are used for special but normal events. + */ + var Z_OK = 0; + var Z_STREAM_END = 1; + var Z_NEED_DICT = 2; + //var Z_ERRNO = -1; + var Z_STREAM_ERROR = -2; + var Z_DATA_ERROR = -3; + var Z_MEM_ERROR = -4; + var Z_BUF_ERROR = -5; + //var Z_VERSION_ERROR = -6; + + /* The deflate compression method */ + var Z_DEFLATED = 8; + + + /* STATES ====================================================================*/ + /* ===========================================================================*/ + + + var HEAD = 1; /* i: waiting for magic header */ + var FLAGS = 2; /* i: waiting for method and flags (gzip) */ + var TIME = 3; /* i: waiting for modification time (gzip) */ + var OS = 4; /* i: waiting for extra flags and operating system (gzip) */ + var EXLEN = 5; /* i: waiting for extra length (gzip) */ + var EXTRA = 6; /* i: waiting for extra bytes (gzip) */ + var NAME = 7; /* i: waiting for end of file name (gzip) */ + var COMMENT = 8; /* i: waiting for end of comment (gzip) */ + var HCRC = 9; /* i: waiting for header crc (gzip) */ + var DICTID = 10; /* i: waiting for dictionary check value */ + var DICT = 11; /* waiting for inflateSetDictionary() call */ + var TYPE = 12; /* i: waiting for type bits, including last-flag bit */ + var TYPEDO = 13; /* i: same, but skip check to exit inflate on new block */ + var STORED = 14; /* i: waiting for stored size (length and complement) */ + var COPY_ = 15; /* i/o: same as COPY below, but only first time in */ + var COPY = 16; /* i/o: waiting for input or output to copy stored block */ + var TABLE = 17; /* i: waiting for dynamic block table lengths */ + var LENLENS = 18; /* i: waiting for code length code lengths */ + var CODELENS = 19; /* i: waiting for length/lit and distance code lengths */ + var LEN_ = 20; /* i: same as LEN below, but only first time in */ + var LEN = 21; /* i: waiting for length/lit/eob code */ + var LENEXT = 22; /* i: waiting for length extra bits */ + var DIST = 23; /* i: waiting for distance code */ + var DISTEXT = 24; /* i: waiting for distance extra bits */ + var MATCH = 25; /* o: waiting for output space to copy string */ + var LIT = 26; /* o: waiting for output space to write literal */ + var CHECK = 27; /* i: waiting for 32-bit check value */ + var LENGTH = 28; /* i: waiting for 32-bit length (gzip) */ + var DONE = 29; /* finished check, done -- remain here until reset */ + var BAD = 30; /* got a data error -- remain here until reset */ + var MEM = 31; /* got an inflate() memory error -- remain here until reset */ + var SYNC = 32; /* looking for synchronization bytes to restart inflate() */ + + /* ===========================================================================*/ + + + + var ENOUGH_LENS = 852; + var ENOUGH_DISTS = 592; + //var ENOUGH = (ENOUGH_LENS+ENOUGH_DISTS); + + var MAX_WBITS = 15; + /* 32K LZ77 window */ + var DEF_WBITS = MAX_WBITS; + + + function zswap32(q) { + return (((q >>> 24) & 0xff) + + ((q >>> 8) & 0xff00) + + ((q & 0xff00) << 8) + + ((q & 0xff) << 24)); + } + + + function InflateState() { + this.mode = 0; /* current inflate mode */ + this.last = false; /* true if processing last block */ + this.wrap = 0; /* bit 0 true for zlib, bit 1 true for gzip */ + this.havedict = false; /* true if dictionary provided */ + this.flags = 0; /* gzip header method and flags (0 if zlib) */ + this.dmax = 0; /* zlib header max distance (INFLATE_STRICT) */ + this.check = 0; /* protected copy of check value */ + this.total = 0; /* protected copy of output count */ + // TODO: may be {} + this.head = null; /* where to save gzip header information */ + + /* sliding window */ + this.wbits = 0; /* log base 2 of requested window size */ + this.wsize = 0; /* window size or zero if not using window */ + this.whave = 0; /* valid bytes in the window */ + this.wnext = 0; /* window write index */ + this.window = null; /* allocated sliding window, if needed */ + + /* bit accumulator */ + this.hold = 0; /* input bit accumulator */ + this.bits = 0; /* number of bits in "in" */ + + /* for string and stored block copying */ + this.length = 0; /* literal or length of data to copy */ + this.offset = 0; /* distance back to copy string from */ + + /* for table and code decoding */ + this.extra = 0; /* extra bits needed */ + + /* fixed and dynamic code tables */ + this.lencode = null; /* starting table for length/literal codes */ + this.distcode = null; /* starting table for distance codes */ + this.lenbits = 0; /* index bits for lencode */ + this.distbits = 0; /* index bits for distcode */ + + /* dynamic table building */ + this.ncode = 0; /* number of code length code lengths */ + this.nlen = 0; /* number of length code lengths */ + this.ndist = 0; /* number of distance code lengths */ + this.have = 0; /* number of code lengths in lens[] */ + this.next = null; /* next available space in codes[] */ + + this.lens = new utils.Buf16(320); /* temporary storage for code lengths */ + this.work = new utils.Buf16(288); /* work area for code table building */ + + /* + because we don't have pointers in js, we use lencode and distcode directly + as buffers so we don't need codes + */ + //this.codes = new utils.Buf32(ENOUGH); /* space for code tables */ + this.lendyn = null; /* dynamic table for length/literal codes (JS specific) */ + this.distdyn = null; /* dynamic table for distance codes (JS specific) */ + this.sane = 0; /* if false, allow invalid distance too far */ + this.back = 0; /* bits back of last unprocessed length/lit */ + this.was = 0; /* initial length of match */ + } + + function inflateResetKeep(strm) { + var state; + + if (!strm || !strm.state) { return Z_STREAM_ERROR; } + state = strm.state; + strm.total_in = strm.total_out = state.total = 0; + strm.msg = ''; /*Z_NULL*/ + if (state.wrap) { /* to support ill-conceived Java test suite */ + strm.adler = state.wrap & 1; + } + state.mode = HEAD; + state.last = 0; + state.havedict = 0; + state.dmax = 32768; + state.head = null/*Z_NULL*/; + state.hold = 0; + state.bits = 0; + //state.lencode = state.distcode = state.next = state.codes; + state.lencode = state.lendyn = new utils.Buf32(ENOUGH_LENS); + state.distcode = state.distdyn = new utils.Buf32(ENOUGH_DISTS); + + state.sane = 1; + state.back = -1; + //Tracev((stderr, "inflate: reset\n")); + return Z_OK; + } + + function inflateReset(strm) { + var state; + + if (!strm || !strm.state) { return Z_STREAM_ERROR; } + state = strm.state; + state.wsize = 0; + state.whave = 0; + state.wnext = 0; + return inflateResetKeep(strm); + + } + + function inflateReset2(strm, windowBits) { + var wrap; + var state; + + /* get the state */ + if (!strm || !strm.state) { return Z_STREAM_ERROR; } + state = strm.state; + + /* extract wrap request from windowBits parameter */ + if (windowBits < 0) { + wrap = 0; + windowBits = -windowBits; + } + else { + wrap = (windowBits >> 4) + 1; + if (windowBits < 48) { + windowBits &= 15; + } + } + + /* set number of window bits, free window if different */ + if (windowBits && (windowBits < 8 || windowBits > 15)) { + return Z_STREAM_ERROR; + } + if (state.window !== null && state.wbits !== windowBits) { + state.window = null; + } + + /* update state and reset the rest of it */ + state.wrap = wrap; + state.wbits = windowBits; + return inflateReset(strm); + } + + function inflateInit2(strm, windowBits) { + var ret; + var state; + + if (!strm) { return Z_STREAM_ERROR; } + //strm.msg = Z_NULL; /* in case we return an error */ + + state = new InflateState(); + + //if (state === Z_NULL) return Z_MEM_ERROR; + //Tracev((stderr, "inflate: allocated\n")); + strm.state = state; + state.window = null/*Z_NULL*/; + ret = inflateReset2(strm, windowBits); + if (ret !== Z_OK) { + strm.state = null/*Z_NULL*/; + } + return ret; + } + + function inflateInit(strm) { + return inflateInit2(strm, DEF_WBITS); + } + + + /* + Return state with length and distance decoding tables and index sizes set to + fixed code decoding. Normally this returns fixed tables from inffixed.h. + If BUILDFIXED is defined, then instead this routine builds the tables the + first time it's called, and returns those tables the first time and + thereafter. This reduces the size of the code by about 2K bytes, in + exchange for a little execution time. However, BUILDFIXED should not be + used for threaded applications, since the rewriting of the tables and virgin + may not be thread-safe. + */ + var virgin = true; + + var lenfix, distfix; // We have no pointers in JS, so keep tables separate + + function fixedtables(state) { + /* build fixed huffman tables if first call (may not be thread safe) */ + if (virgin) { + var sym; + + lenfix = new utils.Buf32(512); + distfix = new utils.Buf32(32); + + /* literal/length table */ + sym = 0; + while (sym < 144) { state.lens[sym++] = 8; } + while (sym < 256) { state.lens[sym++] = 9; } + while (sym < 280) { state.lens[sym++] = 7; } + while (sym < 288) { state.lens[sym++] = 8; } + + inflate_table(LENS, state.lens, 0, 288, lenfix, 0, state.work, { bits: 9 }); + + /* distance table */ + sym = 0; + while (sym < 32) { state.lens[sym++] = 5; } + + inflate_table(DISTS, state.lens, 0, 32, distfix, 0, state.work, { bits: 5 }); + + /* do this just once */ + virgin = false; + } + + state.lencode = lenfix; + state.lenbits = 9; + state.distcode = distfix; + state.distbits = 5; + } + + + /* + Update the window with the last wsize (normally 32K) bytes written before + returning. If window does not exist yet, create it. This is only called + when a window is already in use, or when output has been written during this + inflate call, but the end of the deflate stream has not been reached yet. + It is also called to create a window for dictionary data when a dictionary + is loaded. + + Providing output buffers larger than 32K to inflate() should provide a speed + advantage, since only the last 32K of output is copied to the sliding window + upon return from inflate(), and since all distances after the first 32K of + output will fall in the output data, making match copies simpler and faster. + The advantage may be dependent on the size of the processor's data caches. + */ + function updatewindow(strm, src, end, copy) { + var dist; + var state = strm.state; + + /* if it hasn't been done already, allocate space for the window */ + if (state.window === null) { + state.wsize = 1 << state.wbits; + state.wnext = 0; + state.whave = 0; + + state.window = new utils.Buf8(state.wsize); + } + + /* copy state->wsize or less output bytes into the circular window */ + if (copy >= state.wsize) { + utils.arraySet(state.window, src, end - state.wsize, state.wsize, 0); + state.wnext = 0; + state.whave = state.wsize; + } + else { + dist = state.wsize - state.wnext; + if (dist > copy) { + dist = copy; + } + //zmemcpy(state->window + state->wnext, end - copy, dist); + utils.arraySet(state.window, src, end - copy, dist, state.wnext); + copy -= dist; + if (copy) { + //zmemcpy(state->window, end - copy, copy); + utils.arraySet(state.window, src, end - copy, copy, 0); + state.wnext = copy; + state.whave = state.wsize; + } + else { + state.wnext += dist; + if (state.wnext === state.wsize) { state.wnext = 0; } + if (state.whave < state.wsize) { state.whave += dist; } + } + } + return 0; + } + + function inflate(strm, flush) { + var state; + var input, output; // input/output buffers + var next; /* next input INDEX */ + var put; /* next output INDEX */ + var have, left; /* available input and output */ + var hold; /* bit buffer */ + var bits; /* bits in bit buffer */ + var _in, _out; /* save starting available input and output */ + var copy; /* number of stored or match bytes to copy */ + var from; /* where to copy match bytes from */ + var from_source; + var here = 0; /* current decoding table entry */ + var here_bits, here_op, here_val; // paked "here" denormalized (JS specific) + //var last; /* parent table entry */ + var last_bits, last_op, last_val; // paked "last" denormalized (JS specific) + var len; /* length to copy for repeats, bits to drop */ + var ret; /* return code */ + var hbuf = new utils.Buf8(4); /* buffer for gzip header crc calculation */ + var opts; + + var n; // temporary var for NEED_BITS + + var order = /* permutation of code lengths */ + [ 16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15 ]; + + + if (!strm || !strm.state || !strm.output || + (!strm.input && strm.avail_in !== 0)) { + return Z_STREAM_ERROR; + } + + state = strm.state; + if (state.mode === TYPE) { state.mode = TYPEDO; } /* skip check */ + + + //--- LOAD() --- + put = strm.next_out; + output = strm.output; + left = strm.avail_out; + next = strm.next_in; + input = strm.input; + have = strm.avail_in; + hold = state.hold; + bits = state.bits; + //--- + + _in = have; + _out = left; + ret = Z_OK; + + inf_leave: // goto emulation + for (;;) { + switch (state.mode) { + case HEAD: + if (state.wrap === 0) { + state.mode = TYPEDO; + break; + } + //=== NEEDBITS(16); + while (bits < 16) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + if ((state.wrap & 2) && hold === 0x8b1f) { /* gzip header */ + state.check = 0/*crc32(0L, Z_NULL, 0)*/; + //=== CRC2(state.check, hold); + hbuf[0] = hold & 0xff; + hbuf[1] = (hold >>> 8) & 0xff; + state.check = crc32(state.check, hbuf, 2, 0); + //===// + + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + state.mode = FLAGS; + break; + } + state.flags = 0; /* expect zlib header */ + if (state.head) { + state.head.done = false; + } + if (!(state.wrap & 1) || /* check if zlib header allowed */ + (((hold & 0xff)/*BITS(8)*/ << 8) + (hold >> 8)) % 31) { + strm.msg = 'incorrect header check'; + state.mode = BAD; + break; + } + if ((hold & 0x0f)/*BITS(4)*/ !== Z_DEFLATED) { + strm.msg = 'unknown compression method'; + state.mode = BAD; + break; + } + //--- DROPBITS(4) ---// + hold >>>= 4; + bits -= 4; + //---// + len = (hold & 0x0f)/*BITS(4)*/ + 8; + if (state.wbits === 0) { + state.wbits = len; + } + else if (len > state.wbits) { + strm.msg = 'invalid window size'; + state.mode = BAD; + break; + } + state.dmax = 1 << len; + //Tracev((stderr, "inflate: zlib header ok\n")); + strm.adler = state.check = 1/*adler32(0L, Z_NULL, 0)*/; + state.mode = hold & 0x200 ? DICTID : TYPE; + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + break; + case FLAGS: + //=== NEEDBITS(16); */ + while (bits < 16) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + state.flags = hold; + if ((state.flags & 0xff) !== Z_DEFLATED) { + strm.msg = 'unknown compression method'; + state.mode = BAD; + break; + } + if (state.flags & 0xe000) { + strm.msg = 'unknown header flags set'; + state.mode = BAD; + break; + } + if (state.head) { + state.head.text = ((hold >> 8) & 1); + } + if (state.flags & 0x0200) { + //=== CRC2(state.check, hold); + hbuf[0] = hold & 0xff; + hbuf[1] = (hold >>> 8) & 0xff; + state.check = crc32(state.check, hbuf, 2, 0); + //===// + } + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + state.mode = TIME; + /* falls through */ + case TIME: + //=== NEEDBITS(32); */ + while (bits < 32) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + if (state.head) { + state.head.time = hold; + } + if (state.flags & 0x0200) { + //=== CRC4(state.check, hold) + hbuf[0] = hold & 0xff; + hbuf[1] = (hold >>> 8) & 0xff; + hbuf[2] = (hold >>> 16) & 0xff; + hbuf[3] = (hold >>> 24) & 0xff; + state.check = crc32(state.check, hbuf, 4, 0); + //=== + } + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + state.mode = OS; + /* falls through */ + case OS: + //=== NEEDBITS(16); */ + while (bits < 16) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + if (state.head) { + state.head.xflags = (hold & 0xff); + state.head.os = (hold >> 8); + } + if (state.flags & 0x0200) { + //=== CRC2(state.check, hold); + hbuf[0] = hold & 0xff; + hbuf[1] = (hold >>> 8) & 0xff; + state.check = crc32(state.check, hbuf, 2, 0); + //===// + } + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + state.mode = EXLEN; + /* falls through */ + case EXLEN: + if (state.flags & 0x0400) { + //=== NEEDBITS(16); */ + while (bits < 16) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + state.length = hold; + if (state.head) { + state.head.extra_len = hold; + } + if (state.flags & 0x0200) { + //=== CRC2(state.check, hold); + hbuf[0] = hold & 0xff; + hbuf[1] = (hold >>> 8) & 0xff; + state.check = crc32(state.check, hbuf, 2, 0); + //===// + } + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + } + else if (state.head) { + state.head.extra = null/*Z_NULL*/; + } + state.mode = EXTRA; + /* falls through */ + case EXTRA: + if (state.flags & 0x0400) { + copy = state.length; + if (copy > have) { copy = have; } + if (copy) { + if (state.head) { + len = state.head.extra_len - state.length; + if (!state.head.extra) { + // Use untyped array for more convenient processing later + state.head.extra = new Array(state.head.extra_len); + } + utils.arraySet( + state.head.extra, + input, + next, + // extra field is limited to 65536 bytes + // - no need for additional size check + copy, + /*len + copy > state.head.extra_max - len ? state.head.extra_max : copy,*/ + len + ); + //zmemcpy(state.head.extra + len, next, + // len + copy > state.head.extra_max ? + // state.head.extra_max - len : copy); + } + if (state.flags & 0x0200) { + state.check = crc32(state.check, input, copy, next); + } + have -= copy; + next += copy; + state.length -= copy; + } + if (state.length) { break inf_leave; } + } + state.length = 0; + state.mode = NAME; + /* falls through */ + case NAME: + if (state.flags & 0x0800) { + if (have === 0) { break inf_leave; } + copy = 0; + do { + // TODO: 2 or 1 bytes? + len = input[next + copy++]; + /* use constant limit because in js we should not preallocate memory */ + if (state.head && len && + (state.length < 65536 /*state.head.name_max*/)) { + state.head.name += String.fromCharCode(len); + } + } while (len && copy < have); + + if (state.flags & 0x0200) { + state.check = crc32(state.check, input, copy, next); + } + have -= copy; + next += copy; + if (len) { break inf_leave; } + } + else if (state.head) { + state.head.name = null; + } + state.length = 0; + state.mode = COMMENT; + /* falls through */ + case COMMENT: + if (state.flags & 0x1000) { + if (have === 0) { break inf_leave; } + copy = 0; + do { + len = input[next + copy++]; + /* use constant limit because in js we should not preallocate memory */ + if (state.head && len && + (state.length < 65536 /*state.head.comm_max*/)) { + state.head.comment += String.fromCharCode(len); + } + } while (len && copy < have); + if (state.flags & 0x0200) { + state.check = crc32(state.check, input, copy, next); + } + have -= copy; + next += copy; + if (len) { break inf_leave; } + } + else if (state.head) { + state.head.comment = null; + } + state.mode = HCRC; + /* falls through */ + case HCRC: + if (state.flags & 0x0200) { + //=== NEEDBITS(16); */ + while (bits < 16) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + if (hold !== (state.check & 0xffff)) { + strm.msg = 'header crc mismatch'; + state.mode = BAD; + break; + } + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + } + if (state.head) { + state.head.hcrc = ((state.flags >> 9) & 1); + state.head.done = true; + } + strm.adler = state.check = 0; + state.mode = TYPE; + break; + case DICTID: + //=== NEEDBITS(32); */ + while (bits < 32) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + strm.adler = state.check = zswap32(hold); + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + state.mode = DICT; + /* falls through */ + case DICT: + if (state.havedict === 0) { + //--- RESTORE() --- + strm.next_out = put; + strm.avail_out = left; + strm.next_in = next; + strm.avail_in = have; + state.hold = hold; + state.bits = bits; + //--- + return Z_NEED_DICT; + } + strm.adler = state.check = 1/*adler32(0L, Z_NULL, 0)*/; + state.mode = TYPE; + /* falls through */ + case TYPE: + if (flush === Z_BLOCK || flush === Z_TREES) { break inf_leave; } + /* falls through */ + case TYPEDO: + if (state.last) { + //--- BYTEBITS() ---// + hold >>>= bits & 7; + bits -= bits & 7; + //---// + state.mode = CHECK; + break; + } + //=== NEEDBITS(3); */ + while (bits < 3) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + state.last = (hold & 0x01)/*BITS(1)*/; + //--- DROPBITS(1) ---// + hold >>>= 1; + bits -= 1; + //---// + + switch ((hold & 0x03)/*BITS(2)*/) { + case 0: /* stored block */ + //Tracev((stderr, "inflate: stored block%s\n", + // state.last ? " (last)" : "")); + state.mode = STORED; + break; + case 1: /* fixed block */ + fixedtables(state); + //Tracev((stderr, "inflate: fixed codes block%s\n", + // state.last ? " (last)" : "")); + state.mode = LEN_; /* decode codes */ + if (flush === Z_TREES) { + //--- DROPBITS(2) ---// + hold >>>= 2; + bits -= 2; + //---// + break inf_leave; + } + break; + case 2: /* dynamic block */ + //Tracev((stderr, "inflate: dynamic codes block%s\n", + // state.last ? " (last)" : "")); + state.mode = TABLE; + break; + case 3: + strm.msg = 'invalid block type'; + state.mode = BAD; + } + //--- DROPBITS(2) ---// + hold >>>= 2; + bits -= 2; + //---// + break; + case STORED: + //--- BYTEBITS() ---// /* go to byte boundary */ + hold >>>= bits & 7; + bits -= bits & 7; + //---// + //=== NEEDBITS(32); */ + while (bits < 32) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + if ((hold & 0xffff) !== ((hold >>> 16) ^ 0xffff)) { + strm.msg = 'invalid stored block lengths'; + state.mode = BAD; + break; + } + state.length = hold & 0xffff; + //Tracev((stderr, "inflate: stored length %u\n", + // state.length)); + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + state.mode = COPY_; + if (flush === Z_TREES) { break inf_leave; } + /* falls through */ + case COPY_: + state.mode = COPY; + /* falls through */ + case COPY: + copy = state.length; + if (copy) { + if (copy > have) { copy = have; } + if (copy > left) { copy = left; } + if (copy === 0) { break inf_leave; } + //--- zmemcpy(put, next, copy); --- + utils.arraySet(output, input, next, copy, put); + //---// + have -= copy; + next += copy; + left -= copy; + put += copy; + state.length -= copy; + break; + } + //Tracev((stderr, "inflate: stored end\n")); + state.mode = TYPE; + break; + case TABLE: + //=== NEEDBITS(14); */ + while (bits < 14) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + state.nlen = (hold & 0x1f)/*BITS(5)*/ + 257; + //--- DROPBITS(5) ---// + hold >>>= 5; + bits -= 5; + //---// + state.ndist = (hold & 0x1f)/*BITS(5)*/ + 1; + //--- DROPBITS(5) ---// + hold >>>= 5; + bits -= 5; + //---// + state.ncode = (hold & 0x0f)/*BITS(4)*/ + 4; + //--- DROPBITS(4) ---// + hold >>>= 4; + bits -= 4; + //---// + //#ifndef PKZIP_BUG_WORKAROUND + if (state.nlen > 286 || state.ndist > 30) { + strm.msg = 'too many length or distance symbols'; + state.mode = BAD; + break; + } + //#endif + //Tracev((stderr, "inflate: table sizes ok\n")); + state.have = 0; + state.mode = LENLENS; + /* falls through */ + case LENLENS: + while (state.have < state.ncode) { + //=== NEEDBITS(3); + while (bits < 3) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + state.lens[order[state.have++]] = (hold & 0x07);//BITS(3); + //--- DROPBITS(3) ---// + hold >>>= 3; + bits -= 3; + //---// + } + while (state.have < 19) { + state.lens[order[state.have++]] = 0; + } + // We have separate tables & no pointers. 2 commented lines below not needed. + //state.next = state.codes; + //state.lencode = state.next; + // Switch to use dynamic table + state.lencode = state.lendyn; + state.lenbits = 7; + + opts = { bits: state.lenbits }; + ret = inflate_table(CODES, state.lens, 0, 19, state.lencode, 0, state.work, opts); + state.lenbits = opts.bits; + + if (ret) { + strm.msg = 'invalid code lengths set'; + state.mode = BAD; + break; + } + //Tracev((stderr, "inflate: code lengths ok\n")); + state.have = 0; + state.mode = CODELENS; + /* falls through */ + case CODELENS: + while (state.have < state.nlen + state.ndist) { + for (;;) { + here = state.lencode[hold & ((1 << state.lenbits) - 1)];/*BITS(state.lenbits)*/ + here_bits = here >>> 24; + here_op = (here >>> 16) & 0xff; + here_val = here & 0xffff; + + if ((here_bits) <= bits) { break; } + //--- PULLBYTE() ---// + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + //---// + } + if (here_val < 16) { + //--- DROPBITS(here.bits) ---// + hold >>>= here_bits; + bits -= here_bits; + //---// + state.lens[state.have++] = here_val; + } + else { + if (here_val === 16) { + //=== NEEDBITS(here.bits + 2); + n = here_bits + 2; + while (bits < n) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + //--- DROPBITS(here.bits) ---// + hold >>>= here_bits; + bits -= here_bits; + //---// + if (state.have === 0) { + strm.msg = 'invalid bit length repeat'; + state.mode = BAD; + break; + } + len = state.lens[state.have - 1]; + copy = 3 + (hold & 0x03);//BITS(2); + //--- DROPBITS(2) ---// + hold >>>= 2; + bits -= 2; + //---// + } + else if (here_val === 17) { + //=== NEEDBITS(here.bits + 3); + n = here_bits + 3; + while (bits < n) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + //--- DROPBITS(here.bits) ---// + hold >>>= here_bits; + bits -= here_bits; + //---// + len = 0; + copy = 3 + (hold & 0x07);//BITS(3); + //--- DROPBITS(3) ---// + hold >>>= 3; + bits -= 3; + //---// + } + else { + //=== NEEDBITS(here.bits + 7); + n = here_bits + 7; + while (bits < n) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + //--- DROPBITS(here.bits) ---// + hold >>>= here_bits; + bits -= here_bits; + //---// + len = 0; + copy = 11 + (hold & 0x7f);//BITS(7); + //--- DROPBITS(7) ---// + hold >>>= 7; + bits -= 7; + //---// + } + if (state.have + copy > state.nlen + state.ndist) { + strm.msg = 'invalid bit length repeat'; + state.mode = BAD; + break; + } + while (copy--) { + state.lens[state.have++] = len; + } + } + } + + /* handle error breaks in while */ + if (state.mode === BAD) { break; } + + /* check for end-of-block code (better have one) */ + if (state.lens[256] === 0) { + strm.msg = 'invalid code -- missing end-of-block'; + state.mode = BAD; + break; + } + + /* build code tables -- note: do not change the lenbits or distbits + values here (9 and 6) without reading the comments in inftrees.h + concerning the ENOUGH constants, which depend on those values */ + state.lenbits = 9; + + opts = { bits: state.lenbits }; + ret = inflate_table(LENS, state.lens, 0, state.nlen, state.lencode, 0, state.work, opts); + // We have separate tables & no pointers. 2 commented lines below not needed. + // state.next_index = opts.table_index; + state.lenbits = opts.bits; + // state.lencode = state.next; + + if (ret) { + strm.msg = 'invalid literal/lengths set'; + state.mode = BAD; + break; + } + + state.distbits = 6; + //state.distcode.copy(state.codes); + // Switch to use dynamic table + state.distcode = state.distdyn; + opts = { bits: state.distbits }; + ret = inflate_table(DISTS, state.lens, state.nlen, state.ndist, state.distcode, 0, state.work, opts); + // We have separate tables & no pointers. 2 commented lines below not needed. + // state.next_index = opts.table_index; + state.distbits = opts.bits; + // state.distcode = state.next; + + if (ret) { + strm.msg = 'invalid distances set'; + state.mode = BAD; + break; + } + //Tracev((stderr, 'inflate: codes ok\n')); + state.mode = LEN_; + if (flush === Z_TREES) { break inf_leave; } + /* falls through */ + case LEN_: + state.mode = LEN; + /* falls through */ + case LEN: + if (have >= 6 && left >= 258) { + //--- RESTORE() --- + strm.next_out = put; + strm.avail_out = left; + strm.next_in = next; + strm.avail_in = have; + state.hold = hold; + state.bits = bits; + //--- + inflate_fast(strm, _out); + //--- LOAD() --- + put = strm.next_out; + output = strm.output; + left = strm.avail_out; + next = strm.next_in; + input = strm.input; + have = strm.avail_in; + hold = state.hold; + bits = state.bits; + //--- + + if (state.mode === TYPE) { + state.back = -1; + } + break; + } + state.back = 0; + for (;;) { + here = state.lencode[hold & ((1 << state.lenbits) - 1)]; /*BITS(state.lenbits)*/ + here_bits = here >>> 24; + here_op = (here >>> 16) & 0xff; + here_val = here & 0xffff; + + if (here_bits <= bits) { break; } + //--- PULLBYTE() ---// + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + //---// + } + if (here_op && (here_op & 0xf0) === 0) { + last_bits = here_bits; + last_op = here_op; + last_val = here_val; + for (;;) { + here = state.lencode[last_val + + ((hold & ((1 << (last_bits + last_op)) - 1))/*BITS(last.bits + last.op)*/ >> last_bits)]; + here_bits = here >>> 24; + here_op = (here >>> 16) & 0xff; + here_val = here & 0xffff; + + if ((last_bits + here_bits) <= bits) { break; } + //--- PULLBYTE() ---// + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + //---// + } + //--- DROPBITS(last.bits) ---// + hold >>>= last_bits; + bits -= last_bits; + //---// + state.back += last_bits; + } + //--- DROPBITS(here.bits) ---// + hold >>>= here_bits; + bits -= here_bits; + //---// + state.back += here_bits; + state.length = here_val; + if (here_op === 0) { + //Tracevv((stderr, here.val >= 0x20 && here.val < 0x7f ? + // "inflate: literal '%c'\n" : + // "inflate: literal 0x%02x\n", here.val)); + state.mode = LIT; + break; + } + if (here_op & 32) { + //Tracevv((stderr, "inflate: end of block\n")); + state.back = -1; + state.mode = TYPE; + break; + } + if (here_op & 64) { + strm.msg = 'invalid literal/length code'; + state.mode = BAD; + break; + } + state.extra = here_op & 15; + state.mode = LENEXT; + /* falls through */ + case LENEXT: + if (state.extra) { + //=== NEEDBITS(state.extra); + n = state.extra; + while (bits < n) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + state.length += hold & ((1 << state.extra) - 1)/*BITS(state.extra)*/; + //--- DROPBITS(state.extra) ---// + hold >>>= state.extra; + bits -= state.extra; + //---// + state.back += state.extra; + } + //Tracevv((stderr, "inflate: length %u\n", state.length)); + state.was = state.length; + state.mode = DIST; + /* falls through */ + case DIST: + for (;;) { + here = state.distcode[hold & ((1 << state.distbits) - 1)];/*BITS(state.distbits)*/ + here_bits = here >>> 24; + here_op = (here >>> 16) & 0xff; + here_val = here & 0xffff; + + if ((here_bits) <= bits) { break; } + //--- PULLBYTE() ---// + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + //---// + } + if ((here_op & 0xf0) === 0) { + last_bits = here_bits; + last_op = here_op; + last_val = here_val; + for (;;) { + here = state.distcode[last_val + + ((hold & ((1 << (last_bits + last_op)) - 1))/*BITS(last.bits + last.op)*/ >> last_bits)]; + here_bits = here >>> 24; + here_op = (here >>> 16) & 0xff; + here_val = here & 0xffff; + + if ((last_bits + here_bits) <= bits) { break; } + //--- PULLBYTE() ---// + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + //---// + } + //--- DROPBITS(last.bits) ---// + hold >>>= last_bits; + bits -= last_bits; + //---// + state.back += last_bits; + } + //--- DROPBITS(here.bits) ---// + hold >>>= here_bits; + bits -= here_bits; + //---// + state.back += here_bits; + if (here_op & 64) { + strm.msg = 'invalid distance code'; + state.mode = BAD; + break; + } + state.offset = here_val; + state.extra = (here_op) & 15; + state.mode = DISTEXT; + /* falls through */ + case DISTEXT: + if (state.extra) { + //=== NEEDBITS(state.extra); + n = state.extra; + while (bits < n) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + state.offset += hold & ((1 << state.extra) - 1)/*BITS(state.extra)*/; + //--- DROPBITS(state.extra) ---// + hold >>>= state.extra; + bits -= state.extra; + //---// + state.back += state.extra; + } + //#ifdef INFLATE_STRICT + if (state.offset > state.dmax) { + strm.msg = 'invalid distance too far back'; + state.mode = BAD; + break; + } + //#endif + //Tracevv((stderr, "inflate: distance %u\n", state.offset)); + state.mode = MATCH; + /* falls through */ + case MATCH: + if (left === 0) { break inf_leave; } + copy = _out - left; + if (state.offset > copy) { /* copy from window */ + copy = state.offset - copy; + if (copy > state.whave) { + if (state.sane) { + strm.msg = 'invalid distance too far back'; + state.mode = BAD; + break; + } + // (!) This block is disabled in zlib defaults, + // don't enable it for binary compatibility + //#ifdef INFLATE_ALLOW_INVALID_DISTANCE_TOOFAR_ARRR + // Trace((stderr, "inflate.c too far\n")); + // copy -= state.whave; + // if (copy > state.length) { copy = state.length; } + // if (copy > left) { copy = left; } + // left -= copy; + // state.length -= copy; + // do { + // output[put++] = 0; + // } while (--copy); + // if (state.length === 0) { state.mode = LEN; } + // break; + //#endif + } + if (copy > state.wnext) { + copy -= state.wnext; + from = state.wsize - copy; + } + else { + from = state.wnext - copy; + } + if (copy > state.length) { copy = state.length; } + from_source = state.window; + } + else { /* copy from output */ + from_source = output; + from = put - state.offset; + copy = state.length; + } + if (copy > left) { copy = left; } + left -= copy; + state.length -= copy; + do { + output[put++] = from_source[from++]; + } while (--copy); + if (state.length === 0) { state.mode = LEN; } + break; + case LIT: + if (left === 0) { break inf_leave; } + output[put++] = state.length; + left--; + state.mode = LEN; + break; + case CHECK: + if (state.wrap) { + //=== NEEDBITS(32); + while (bits < 32) { + if (have === 0) { break inf_leave; } + have--; + // Use '|' instead of '+' to make sure that result is signed + hold |= input[next++] << bits; + bits += 8; + } + //===// + _out -= left; + strm.total_out += _out; + state.total += _out; + if (_out) { + strm.adler = state.check = + /*UPDATE(state.check, put - _out, _out);*/ + (state.flags ? crc32(state.check, output, _out, put - _out) : adler32(state.check, output, _out, put - _out)); + + } + _out = left; + // NB: crc32 stored as signed 32-bit int, zswap32 returns signed too + if ((state.flags ? hold : zswap32(hold)) !== state.check) { + strm.msg = 'incorrect data check'; + state.mode = BAD; + break; + } + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + //Tracev((stderr, "inflate: check matches trailer\n")); + } + state.mode = LENGTH; + /* falls through */ + case LENGTH: + if (state.wrap && state.flags) { + //=== NEEDBITS(32); + while (bits < 32) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + if (hold !== (state.total & 0xffffffff)) { + strm.msg = 'incorrect length check'; + state.mode = BAD; + break; + } + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + //Tracev((stderr, "inflate: length matches trailer\n")); + } + state.mode = DONE; + /* falls through */ + case DONE: + ret = Z_STREAM_END; + break inf_leave; + case BAD: + ret = Z_DATA_ERROR; + break inf_leave; + case MEM: + return Z_MEM_ERROR; + case SYNC: + /* falls through */ + default: + return Z_STREAM_ERROR; + } + } + + // inf_leave <- here is real place for "goto inf_leave", emulated via "break inf_leave" + + /* + Return from inflate(), updating the total counts and the check value. + If there was no progress during the inflate() call, return a buffer + error. Call updatewindow() to create and/or update the window state. + Note: a memory error from inflate() is non-recoverable. + */ + + //--- RESTORE() --- + strm.next_out = put; + strm.avail_out = left; + strm.next_in = next; + strm.avail_in = have; + state.hold = hold; + state.bits = bits; + //--- + + if (state.wsize || (_out !== strm.avail_out && state.mode < BAD && + (state.mode < CHECK || flush !== Z_FINISH))) { + if (updatewindow(strm, strm.output, strm.next_out, _out - strm.avail_out)) { + state.mode = MEM; + return Z_MEM_ERROR; + } + } + _in -= strm.avail_in; + _out -= strm.avail_out; + strm.total_in += _in; + strm.total_out += _out; + state.total += _out; + if (state.wrap && _out) { + strm.adler = state.check = /*UPDATE(state.check, strm.next_out - _out, _out);*/ + (state.flags ? crc32(state.check, output, _out, strm.next_out - _out) : adler32(state.check, output, _out, strm.next_out - _out)); + } + strm.data_type = state.bits + (state.last ? 64 : 0) + + (state.mode === TYPE ? 128 : 0) + + (state.mode === LEN_ || state.mode === COPY_ ? 256 : 0); + if (((_in === 0 && _out === 0) || flush === Z_FINISH) && ret === Z_OK) { + ret = Z_BUF_ERROR; + } + return ret; + } + + function inflateEnd(strm) { + + if (!strm || !strm.state /*|| strm->zfree == (free_func)0*/) { + return Z_STREAM_ERROR; + } + + var state = strm.state; + if (state.window) { + state.window = null; + } + strm.state = null; + return Z_OK; + } + + function inflateGetHeader(strm, head) { + var state; + + /* check state */ + if (!strm || !strm.state) { return Z_STREAM_ERROR; } + state = strm.state; + if ((state.wrap & 2) === 0) { return Z_STREAM_ERROR; } + + /* save header structure */ + state.head = head; + head.done = false; + return Z_OK; + } + + function inflateSetDictionary(strm, dictionary) { + var dictLength = dictionary.length; + + var state; + var dictid; + var ret; + + /* check state */ + if (!strm /* == Z_NULL */ || !strm.state /* == Z_NULL */) { return Z_STREAM_ERROR; } + state = strm.state; + + if (state.wrap !== 0 && state.mode !== DICT) { + return Z_STREAM_ERROR; + } + + /* check for correct dictionary identifier */ + if (state.mode === DICT) { + dictid = 1; /* adler32(0, null, 0)*/ + /* dictid = adler32(dictid, dictionary, dictLength); */ + dictid = adler32(dictid, dictionary, dictLength, 0); + if (dictid !== state.check) { + return Z_DATA_ERROR; + } + } + /* copy dictionary to window using updatewindow(), which will amend the + existing dictionary if appropriate */ + ret = updatewindow(strm, dictionary, dictLength, dictLength); + if (ret) { + state.mode = MEM; + return Z_MEM_ERROR; + } + state.havedict = 1; + // Tracev((stderr, "inflate: dictionary set\n")); + return Z_OK; + } + + exports.inflateReset = inflateReset; + exports.inflateReset2 = inflateReset2; + exports.inflateResetKeep = inflateResetKeep; + exports.inflateInit = inflateInit; + exports.inflateInit2 = inflateInit2; + exports.inflate = inflate; + exports.inflateEnd = inflateEnd; + exports.inflateGetHeader = inflateGetHeader; + exports.inflateSetDictionary = inflateSetDictionary; + exports.inflateInfo = 'pako inflate (from Nodeca project)'; + + /* Not implemented + exports.inflateCopy = inflateCopy; + exports.inflateGetDictionary = inflateGetDictionary; + exports.inflateMark = inflateMark; + exports.inflatePrime = inflatePrime; + exports.inflateSync = inflateSync; + exports.inflateSyncPoint = inflateSyncPoint; + exports.inflateUndermine = inflateUndermine; + */ + + },{"../utils/common":1,"./adler32":3,"./crc32":5,"./inffast":7,"./inftrees":9}],9:[function(require,module,exports){ + 'use strict'; + + // (C) 1995-2013 Jean-loup Gailly and Mark Adler + // (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin + // + // This software is provided 'as-is', without any express or implied + // warranty. In no event will the authors be held liable for any damages + // arising from the use of this software. + // + // Permission is granted to anyone to use this software for any purpose, + // including commercial applications, and to alter it and redistribute it + // freely, subject to the following restrictions: + // + // 1. The origin of this software must not be misrepresented; you must not + // claim that you wrote the original software. If you use this software + // in a product, an acknowledgment in the product documentation would be + // appreciated but is not required. + // 2. Altered source versions must be plainly marked as such, and must not be + // misrepresented as being the original software. + // 3. This notice may not be removed or altered from any source distribution. + + var utils = require('../utils/common'); + + var MAXBITS = 15; + var ENOUGH_LENS = 852; + var ENOUGH_DISTS = 592; + //var ENOUGH = (ENOUGH_LENS+ENOUGH_DISTS); + + var CODES = 0; + var LENS = 1; + var DISTS = 2; + + var lbase = [ /* Length codes 257..285 base */ + 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31, + 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0 + ]; + + var lext = [ /* Length codes 257..285 extra */ + 16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, + 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 72, 78 + ]; + + var dbase = [ /* Distance codes 0..29 base */ + 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, + 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, + 8193, 12289, 16385, 24577, 0, 0 + ]; + + var dext = [ /* Distance codes 0..29 extra */ + 16, 16, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, + 23, 23, 24, 24, 25, 25, 26, 26, 27, 27, + 28, 28, 29, 29, 64, 64 + ]; + + module.exports = function inflate_table(type, lens, lens_index, codes, table, table_index, work, opts) + { + var bits = opts.bits; + //here = opts.here; /* table entry for duplication */ + + var len = 0; /* a code's length in bits */ + var sym = 0; /* index of code symbols */ + var min = 0, max = 0; /* minimum and maximum code lengths */ + var root = 0; /* number of index bits for root table */ + var curr = 0; /* number of index bits for current table */ + var drop = 0; /* code bits to drop for sub-table */ + var left = 0; /* number of prefix codes available */ + var used = 0; /* code entries in table used */ + var huff = 0; /* Huffman code */ + var incr; /* for incrementing code, index */ + var fill; /* index for replicating entries */ + var low; /* low bits for current root entry */ + var mask; /* mask for low root bits */ + var next; /* next available space in table */ + var base = null; /* base value table to use */ + var base_index = 0; + // var shoextra; /* extra bits table to use */ + var end; /* use base and extra for symbol > end */ + var count = new utils.Buf16(MAXBITS + 1); //[MAXBITS+1]; /* number of codes of each length */ + var offs = new utils.Buf16(MAXBITS + 1); //[MAXBITS+1]; /* offsets in table for each length */ + var extra = null; + var extra_index = 0; + + var here_bits, here_op, here_val; + + /* + Process a set of code lengths to create a canonical Huffman code. The + code lengths are lens[0..codes-1]. Each length corresponds to the + symbols 0..codes-1. The Huffman code is generated by first sorting the + symbols by length from short to long, and retaining the symbol order + for codes with equal lengths. Then the code starts with all zero bits + for the first code of the shortest length, and the codes are integer + increments for the same length, and zeros are appended as the length + increases. For the deflate format, these bits are stored backwards + from their more natural integer increment ordering, and so when the + decoding tables are built in the large loop below, the integer codes + are incremented backwards. + + This routine assumes, but does not check, that all of the entries in + lens[] are in the range 0..MAXBITS. The caller must assure this. + 1..MAXBITS is interpreted as that code length. zero means that that + symbol does not occur in this code. + + The codes are sorted by computing a count of codes for each length, + creating from that a table of starting indices for each length in the + sorted table, and then entering the symbols in order in the sorted + table. The sorted table is work[], with that space being provided by + the caller. + + The length counts are used for other purposes as well, i.e. finding + the minimum and maximum length codes, determining if there are any + codes at all, checking for a valid set of lengths, and looking ahead + at length counts to determine sub-table sizes when building the + decoding tables. + */ + + /* accumulate lengths for codes (assumes lens[] all in 0..MAXBITS) */ + for (len = 0; len <= MAXBITS; len++) { + count[len] = 0; + } + for (sym = 0; sym < codes; sym++) { + count[lens[lens_index + sym]]++; + } + + /* bound code lengths, force root to be within code lengths */ + root = bits; + for (max = MAXBITS; max >= 1; max--) { + if (count[max] !== 0) { break; } + } + if (root > max) { + root = max; + } + if (max === 0) { /* no symbols to code at all */ + //table.op[opts.table_index] = 64; //here.op = (var char)64; /* invalid code marker */ + //table.bits[opts.table_index] = 1; //here.bits = (var char)1; + //table.val[opts.table_index++] = 0; //here.val = (var short)0; + table[table_index++] = (1 << 24) | (64 << 16) | 0; + + + //table.op[opts.table_index] = 64; + //table.bits[opts.table_index] = 1; + //table.val[opts.table_index++] = 0; + table[table_index++] = (1 << 24) | (64 << 16) | 0; + + opts.bits = 1; + return 0; /* no symbols, but wait for decoding to report error */ + } + for (min = 1; min < max; min++) { + if (count[min] !== 0) { break; } + } + if (root < min) { + root = min; + } + + /* check for an over-subscribed or incomplete set of lengths */ + left = 1; + for (len = 1; len <= MAXBITS; len++) { + left <<= 1; + left -= count[len]; + if (left < 0) { + return -1; + } /* over-subscribed */ + } + if (left > 0 && (type === CODES || max !== 1)) { + return -1; /* incomplete set */ + } + + /* generate offsets into symbol table for each length for sorting */ + offs[1] = 0; + for (len = 1; len < MAXBITS; len++) { + offs[len + 1] = offs[len] + count[len]; + } + + /* sort symbols by length, by symbol order within each length */ + for (sym = 0; sym < codes; sym++) { + if (lens[lens_index + sym] !== 0) { + work[offs[lens[lens_index + sym]]++] = sym; + } + } + + /* + Create and fill in decoding tables. In this loop, the table being + filled is at next and has curr index bits. The code being used is huff + with length len. That code is converted to an index by dropping drop + bits off of the bottom. For codes where len is less than drop + curr, + those top drop + curr - len bits are incremented through all values to + fill the table with replicated entries. + + root is the number of index bits for the root table. When len exceeds + root, sub-tables are created pointed to by the root entry with an index + of the low root bits of huff. This is saved in low to check for when a + new sub-table should be started. drop is zero when the root table is + being filled, and drop is root when sub-tables are being filled. + + When a new sub-table is needed, it is necessary to look ahead in the + code lengths to determine what size sub-table is needed. The length + counts are used for this, and so count[] is decremented as codes are + entered in the tables. + + used keeps track of how many table entries have been allocated from the + provided *table space. It is checked for LENS and DIST tables against + the constants ENOUGH_LENS and ENOUGH_DISTS to guard against changes in + the initial root table size constants. See the comments in inftrees.h + for more information. + + sym increments through all symbols, and the loop terminates when + all codes of length max, i.e. all codes, have been processed. This + routine permits incomplete codes, so another loop after this one fills + in the rest of the decoding tables with invalid code markers. + */ + + /* set up for code type */ + // poor man optimization - use if-else instead of switch, + // to avoid deopts in old v8 + if (type === CODES) { + base = extra = work; /* dummy value--not used */ + end = 19; + + } else if (type === LENS) { + base = lbase; + base_index -= 257; + extra = lext; + extra_index -= 257; + end = 256; + + } else { /* DISTS */ + base = dbase; + extra = dext; + end = -1; + } + + /* initialize opts for loop */ + huff = 0; /* starting code */ + sym = 0; /* starting code symbol */ + len = min; /* starting code length */ + next = table_index; /* current table to fill in */ + curr = root; /* current table index bits */ + drop = 0; /* current bits to drop from code for index */ + low = -1; /* trigger new sub-table when len > root */ + used = 1 << root; /* use root table entries */ + mask = used - 1; /* mask for comparing low */ + + /* check available table space */ + if ((type === LENS && used > ENOUGH_LENS) || + (type === DISTS && used > ENOUGH_DISTS)) { + return 1; + } + + /* process all codes and make table entries */ + for (;;) { + /* create table entry */ + here_bits = len - drop; + if (work[sym] < end) { + here_op = 0; + here_val = work[sym]; + } + else if (work[sym] > end) { + here_op = extra[extra_index + work[sym]]; + here_val = base[base_index + work[sym]]; + } + else { + here_op = 32 + 64; /* end of block */ + here_val = 0; + } + + /* replicate for those indices with low len bits equal to huff */ + incr = 1 << (len - drop); + fill = 1 << curr; + min = fill; /* save offset to next table */ + do { + fill -= incr; + table[next + (huff >> drop) + fill] = (here_bits << 24) | (here_op << 16) | here_val |0; + } while (fill !== 0); + + /* backwards increment the len-bit code huff */ + incr = 1 << (len - 1); + while (huff & incr) { + incr >>= 1; + } + if (incr !== 0) { + huff &= incr - 1; + huff += incr; + } else { + huff = 0; + } + + /* go to next symbol, update count, len */ + sym++; + if (--count[len] === 0) { + if (len === max) { break; } + len = lens[lens_index + work[sym]]; + } + + /* create new sub-table if needed */ + if (len > root && (huff & mask) !== low) { + /* if first time, transition to sub-tables */ + if (drop === 0) { + drop = root; + } + + /* increment past last table */ + next += min; /* here min is 1 << curr */ + + /* determine length of next table */ + curr = len - drop; + left = 1 << curr; + while (curr + drop < max) { + left -= count[curr + drop]; + if (left <= 0) { break; } + curr++; + left <<= 1; + } + + /* check for enough space */ + used += 1 << curr; + if ((type === LENS && used > ENOUGH_LENS) || + (type === DISTS && used > ENOUGH_DISTS)) { + return 1; + } + + /* point entry in root table to sub-table */ + low = huff & mask; + /*table.op[low] = curr; + table.bits[low] = root; + table.val[low] = next - opts.table_index;*/ + table[low] = (root << 24) | (curr << 16) | (next - table_index) |0; + } + } + + /* fill in remaining table entry if code is incomplete (guaranteed to have + at most one remaining entry, since if the code is incomplete, the + maximum code length that was allowed to get this far is one bit) */ + if (huff !== 0) { + //table.op[next + huff] = 64; /* invalid code marker */ + //table.bits[next + huff] = len - drop; + //table.val[next + huff] = 0; + table[next + huff] = ((len - drop) << 24) | (64 << 16) |0; + } + + /* set return parameters */ + //opts.table_index += used; + opts.bits = root; + return 0; + }; + + },{"../utils/common":1}],10:[function(require,module,exports){ + 'use strict'; + + // (C) 1995-2013 Jean-loup Gailly and Mark Adler + // (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin + // + // This software is provided 'as-is', without any express or implied + // warranty. In no event will the authors be held liable for any damages + // arising from the use of this software. + // + // Permission is granted to anyone to use this software for any purpose, + // including commercial applications, and to alter it and redistribute it + // freely, subject to the following restrictions: + // + // 1. The origin of this software must not be misrepresented; you must not + // claim that you wrote the original software. If you use this software + // in a product, an acknowledgment in the product documentation would be + // appreciated but is not required. + // 2. Altered source versions must be plainly marked as such, and must not be + // misrepresented as being the original software. + // 3. This notice may not be removed or altered from any source distribution. + + module.exports = { + 2: 'need dictionary', /* Z_NEED_DICT 2 */ + 1: 'stream end', /* Z_STREAM_END 1 */ + 0: '', /* Z_OK 0 */ + '-1': 'file error', /* Z_ERRNO (-1) */ + '-2': 'stream error', /* Z_STREAM_ERROR (-2) */ + '-3': 'data error', /* Z_DATA_ERROR (-3) */ + '-4': 'insufficient memory', /* Z_MEM_ERROR (-4) */ + '-5': 'buffer error', /* Z_BUF_ERROR (-5) */ + '-6': 'incompatible version' /* Z_VERSION_ERROR (-6) */ + }; + + },{}],11:[function(require,module,exports){ + 'use strict'; + + // (C) 1995-2013 Jean-loup Gailly and Mark Adler + // (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin + // + // This software is provided 'as-is', without any express or implied + // warranty. In no event will the authors be held liable for any damages + // arising from the use of this software. + // + // Permission is granted to anyone to use this software for any purpose, + // including commercial applications, and to alter it and redistribute it + // freely, subject to the following restrictions: + // + // 1. The origin of this software must not be misrepresented; you must not + // claim that you wrote the original software. If you use this software + // in a product, an acknowledgment in the product documentation would be + // appreciated but is not required. + // 2. Altered source versions must be plainly marked as such, and must not be + // misrepresented as being the original software. + // 3. This notice may not be removed or altered from any source distribution. + + function ZStream() { + /* next input byte */ + this.input = null; // JS specific, because we have no pointers + this.next_in = 0; + /* number of bytes available at input */ + this.avail_in = 0; + /* total number of input bytes read so far */ + this.total_in = 0; + /* next output byte should be put there */ + this.output = null; // JS specific, because we have no pointers + this.next_out = 0; + /* remaining free space at output */ + this.avail_out = 0; + /* total number of bytes output so far */ + this.total_out = 0; + /* last error message, NULL if no error */ + this.msg = ''/*Z_NULL*/; + /* not visible by applications */ + this.state = null; + /* best guess about the data type: binary or text */ + this.data_type = 2/*Z_UNKNOWN*/; + /* adler32 value of the uncompressed data */ + this.adler = 0; + } + + module.exports = ZStream; + + },{}],"/lib/inflate.js":[function(require,module,exports){ + 'use strict'; + + + var zlib_inflate = require('./zlib/inflate'); + var utils = require('./utils/common'); + var strings = require('./utils/strings'); + var c = require('./zlib/constants'); + var msg = require('./zlib/messages'); + var ZStream = require('./zlib/zstream'); + var GZheader = require('./zlib/gzheader'); + + var toString = Object.prototype.toString; + + /** + * class Inflate + * + * Generic JS-style wrapper for zlib calls. If you don't need + * streaming behaviour - use more simple functions: [[inflate]] + * and [[inflateRaw]]. + **/ + + /* internal + * inflate.chunks -> Array + * + * Chunks of output data, if [[Inflate#onData]] not overridden. + **/ + + /** + * Inflate.result -> Uint8Array|Array|String + * + * Uncompressed result, generated by default [[Inflate#onData]] + * and [[Inflate#onEnd]] handlers. Filled after you push last chunk + * (call [[Inflate#push]] with `Z_FINISH` / `true` param) or if you + * push a chunk with explicit flush (call [[Inflate#push]] with + * `Z_SYNC_FLUSH` param). + **/ + + /** + * Inflate.err -> Number + * + * Error code after inflate finished. 0 (Z_OK) on success. + * Should be checked if broken data possible. + **/ + + /** + * Inflate.msg -> String + * + * Error message, if [[Inflate.err]] != 0 + **/ + + + /** + * new Inflate(options) + * - options (Object): zlib inflate options. + * + * Creates new inflator instance with specified params. Throws exception + * on bad params. Supported options: + * + * - `windowBits` + * - `dictionary` + * + * [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced) + * for more information on these. + * + * Additional options, for internal needs: + * + * - `chunkSize` - size of generated data chunks (16K by default) + * - `raw` (Boolean) - do raw inflate + * - `to` (String) - if equal to 'string', then result will be converted + * from utf8 to utf16 (javascript) string. When string output requested, + * chunk length can differ from `chunkSize`, depending on content. + * + * By default, when no options set, autodetect deflate/gzip data format via + * wrapper header. + * + * ##### Example: + * + * ```javascript + * var pako = require('pako') + * , chunk1 = Uint8Array([1,2,3,4,5,6,7,8,9]) + * , chunk2 = Uint8Array([10,11,12,13,14,15,16,17,18,19]); + * + * var inflate = new pako.Inflate({ level: 3}); + * + * inflate.push(chunk1, false); + * inflate.push(chunk2, true); // true -> last chunk + * + * if (inflate.err) { throw new Error(inflate.err); } + * + * console.log(inflate.result); + * ``` + **/ + function Inflate(options) { + if (!(this instanceof Inflate)) return new Inflate(options); + + this.options = utils.assign({ + chunkSize: 16384, + windowBits: 0, + to: '' + }, options || {}); + + var opt = this.options; + + // Force window size for `raw` data, if not set directly, + // because we have no header for autodetect. + if (opt.raw && (opt.windowBits >= 0) && (opt.windowBits < 16)) { + opt.windowBits = -opt.windowBits; + if (opt.windowBits === 0) { opt.windowBits = -15; } + } + + // If `windowBits` not defined (and mode not raw) - set autodetect flag for gzip/deflate + if ((opt.windowBits >= 0) && (opt.windowBits < 16) && + !(options && options.windowBits)) { + opt.windowBits += 32; + } + + // Gzip header has no info about windows size, we can do autodetect only + // for deflate. So, if window size not set, force it to max when gzip possible + if ((opt.windowBits > 15) && (opt.windowBits < 48)) { + // bit 3 (16) -> gzipped data + // bit 4 (32) -> autodetect gzip/deflate + if ((opt.windowBits & 15) === 0) { + opt.windowBits |= 15; + } + } + + this.err = 0; // error code, if happens (0 = Z_OK) + this.msg = ''; // error message + this.ended = false; // used to avoid multiple onEnd() calls + this.chunks = []; // chunks of compressed data + + this.strm = new ZStream(); + this.strm.avail_out = 0; + + var status = zlib_inflate.inflateInit2( + this.strm, + opt.windowBits + ); + + if (status !== c.Z_OK) { + throw new Error(msg[status]); + } + + this.header = new GZheader(); + + zlib_inflate.inflateGetHeader(this.strm, this.header); + + // Setup dictionary + if (opt.dictionary) { + // Convert data if needed + if (typeof opt.dictionary === 'string') { + opt.dictionary = strings.string2buf(opt.dictionary); + } else if (toString.call(opt.dictionary) === '[object ArrayBuffer]') { + opt.dictionary = new Uint8Array(opt.dictionary); + } + if (opt.raw) { //In raw mode we need to set the dictionary early + status = zlib_inflate.inflateSetDictionary(this.strm, opt.dictionary); + if (status !== c.Z_OK) { + throw new Error(msg[status]); + } + } + } + } + + /** + * Inflate#push(data[, mode]) -> Boolean + * - data (Uint8Array|Array|ArrayBuffer|String): input data + * - mode (Number|Boolean): 0..6 for corresponding Z_NO_FLUSH..Z_TREE modes. + * See constants. Skipped or `false` means Z_NO_FLUSH, `true` means Z_FINISH. + * + * Sends input data to inflate pipe, generating [[Inflate#onData]] calls with + * new output chunks. Returns `true` on success. The last data block must have + * mode Z_FINISH (or `true`). That will flush internal pending buffers and call + * [[Inflate#onEnd]]. For interim explicit flushes (without ending the stream) you + * can use mode Z_SYNC_FLUSH, keeping the decompression context. + * + * On fail call [[Inflate#onEnd]] with error code and return false. + * + * We strongly recommend to use `Uint8Array` on input for best speed (output + * format is detected automatically). Also, don't skip last param and always + * use the same type in your code (boolean or number). That will improve JS speed. + * + * For regular `Array`-s make sure all elements are [0..255]. + * + * ##### Example + * + * ```javascript + * push(chunk, false); // push one of data chunks + * ... + * push(chunk, true); // push last chunk + * ``` + **/ + Inflate.prototype.push = function (data, mode) { + var strm = this.strm; + var chunkSize = this.options.chunkSize; + var dictionary = this.options.dictionary; + var status, _mode; + var next_out_utf8, tail, utf8str; + + // Flag to properly process Z_BUF_ERROR on testing inflate call + // when we check that all output data was flushed. + var allowBufError = false; + + if (this.ended) { return false; } + _mode = (mode === ~~mode) ? mode : ((mode === true) ? c.Z_FINISH : c.Z_NO_FLUSH); + + // Convert data if needed + if (typeof data === 'string') { + // Only binary strings can be decompressed on practice + strm.input = strings.binstring2buf(data); + } else if (toString.call(data) === '[object ArrayBuffer]') { + strm.input = new Uint8Array(data); + } else { + strm.input = data; + } + + strm.next_in = 0; + strm.avail_in = strm.input.length; + + do { + if (strm.avail_out === 0) { + strm.output = new utils.Buf8(chunkSize); + strm.next_out = 0; + strm.avail_out = chunkSize; + } + + status = zlib_inflate.inflate(strm, c.Z_NO_FLUSH); /* no bad return value */ + + if (status === c.Z_NEED_DICT && dictionary) { + status = zlib_inflate.inflateSetDictionary(this.strm, dictionary); + } + + if (status === c.Z_BUF_ERROR && allowBufError === true) { + status = c.Z_OK; + allowBufError = false; + } + + if (status !== c.Z_STREAM_END && status !== c.Z_OK) { + this.onEnd(status); + this.ended = true; + return false; + } + + if (strm.next_out) { + if (strm.avail_out === 0 || status === c.Z_STREAM_END || (strm.avail_in === 0 && (_mode === c.Z_FINISH || _mode === c.Z_SYNC_FLUSH))) { + + if (this.options.to === 'string') { + + next_out_utf8 = strings.utf8border(strm.output, strm.next_out); + + tail = strm.next_out - next_out_utf8; + utf8str = strings.buf2string(strm.output, next_out_utf8); + + // move tail + strm.next_out = tail; + strm.avail_out = chunkSize - tail; + if (tail) { utils.arraySet(strm.output, strm.output, next_out_utf8, tail, 0); } + + this.onData(utf8str); + + } else { + this.onData(utils.shrinkBuf(strm.output, strm.next_out)); + } + } + } + + // When no more input data, we should check that internal inflate buffers + // are flushed. The only way to do it when avail_out = 0 - run one more + // inflate pass. But if output data not exists, inflate return Z_BUF_ERROR. + // Here we set flag to process this error properly. + // + // NOTE. Deflate does not return error in this case and does not needs such + // logic. + if (strm.avail_in === 0 && strm.avail_out === 0) { + allowBufError = true; + } + + } while ((strm.avail_in > 0 || strm.avail_out === 0) && status !== c.Z_STREAM_END); + + if (status === c.Z_STREAM_END) { + _mode = c.Z_FINISH; + } + + // Finalize on the last chunk. + if (_mode === c.Z_FINISH) { + status = zlib_inflate.inflateEnd(this.strm); + this.onEnd(status); + this.ended = true; + return status === c.Z_OK; + } + + // callback interim results if Z_SYNC_FLUSH. + if (_mode === c.Z_SYNC_FLUSH) { + this.onEnd(c.Z_OK); + strm.avail_out = 0; + return true; + } + + return true; + }; + + + /** + * Inflate#onData(chunk) -> Void + * - chunk (Uint8Array|Array|String): output data. Type of array depends + * on js engine support. When string output requested, each chunk + * will be string. + * + * By default, stores data blocks in `chunks[]` property and glue + * those in `onEnd`. Override this handler, if you need another behaviour. + **/ + Inflate.prototype.onData = function (chunk) { + this.chunks.push(chunk); + }; + + + /** + * Inflate#onEnd(status) -> Void + * - status (Number): inflate status. 0 (Z_OK) on success, + * other if not. + * + * Called either after you tell inflate that the input stream is + * complete (Z_FINISH) or should be flushed (Z_SYNC_FLUSH) + * or if an error happened. By default - join collected chunks, + * free memory and fill `results` / `err` properties. + **/ + Inflate.prototype.onEnd = function (status) { + // On success - join + if (status === c.Z_OK) { + if (this.options.to === 'string') { + // Glue & convert here, until we teach pako to send + // utf8 aligned strings to onData + this.result = this.chunks.join(''); + } else { + this.result = utils.flattenChunks(this.chunks); + } + } + this.chunks = []; + this.err = status; + this.msg = this.strm.msg; + }; + + + /** + * inflate(data[, options]) -> Uint8Array|Array|String + * - data (Uint8Array|Array|String): input data to decompress. + * - options (Object): zlib inflate options. + * + * Decompress `data` with inflate/ungzip and `options`. Autodetect + * format via wrapper header by default. That's why we don't provide + * separate `ungzip` method. + * + * Supported options are: + * + * - windowBits + * + * [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced) + * for more information. + * + * Sugar (options): + * + * - `raw` (Boolean) - say that we work with raw stream, if you don't wish to specify + * negative windowBits implicitly. + * - `to` (String) - if equal to 'string', then result will be converted + * from utf8 to utf16 (javascript) string. When string output requested, + * chunk length can differ from `chunkSize`, depending on content. + * + * + * ##### Example: + * + * ```javascript + * var pako = require('pako') + * , input = pako.deflate([1,2,3,4,5,6,7,8,9]) + * , output; + * + * try { + * output = pako.inflate(input); + * } catch (err) + * console.log(err); + * } + * ``` + **/ + function inflate(input, options) { + var inflator = new Inflate(options); + + inflator.push(input, true); + + // That will never happens, if you don't cheat with options :) + if (inflator.err) { throw inflator.msg || msg[inflator.err]; } + + return inflator.result; + } + + + /** + * inflateRaw(data[, options]) -> Uint8Array|Array|String + * - data (Uint8Array|Array|String): input data to decompress. + * - options (Object): zlib inflate options. + * + * The same as [[inflate]], but creates raw data, without wrapper + * (header and adler32 crc). + **/ + function inflateRaw(input, options) { + options = options || {}; + options.raw = true; + return inflate(input, options); + } + + + /** + * ungzip(data[, options]) -> Uint8Array|Array|String + * - data (Uint8Array|Array|String): input data to decompress. + * - options (Object): zlib inflate options. + * + * Just shortcut to [[inflate]], because it autodetects format + * by header.content. Done for convenience. + **/ + + + exports.Inflate = Inflate; + exports.inflate = inflate; + exports.inflateRaw = inflateRaw; + exports.ungzip = inflate; + + },{"./utils/common":1,"./utils/strings":2,"./zlib/constants":4,"./zlib/gzheader":6,"./zlib/inflate":8,"./zlib/messages":10,"./zlib/zstream":11}]},{},[])("/lib/inflate.js") + }); diff --git a/packages/edit-site/lib/lib-font.browser.js b/packages/edit-site/lib/lib-font.browser.js new file mode 100644 index 0000000000000..36b8a081091f4 --- /dev/null +++ b/packages/edit-site/lib/lib-font.browser.js @@ -0,0 +1,3829 @@ +// import pako from 'pako'; +import unbrotli from "./unbrotli"; +import GzipDecode from "./inflate"; + +let fetchFunction = globalThis.fetch; +// if ( ! fetchFunction ) { +// let backlog = []; +// fetchFunction = globalThis.fetch = ( ...args ) => +// new Promise( ( resolve, reject ) => { +// backlog.push( { args: args, resolve: resolve, reject: reject } ); +// } ); +// import( 'fs' ) +// .then( ( fs ) => { +// fetchFunction = globalThis.fetch = async function ( path ) { +// return new Promise( ( resolve, reject ) => { +// fs.readFile( path, ( err, data ) => { +// if ( err ) return reject( err ); +// resolve( { ok: true, arrayBuffer: () => data.buffer } ); +// } ); +// } ); +// }; +// while ( backlog.length ) { +// let instruction = backlog.shift(); +// fetchFunction( ...instruction.args ) +// .then( ( data ) => instruction.resolve( data ) ) +// .catch( ( err ) => instruction.reject( err ) ); +// } +// } ) +// .catch( ( err ) => { +// console.error( err ); +// throw new Error( +// `lib-font cannot run unless either the Fetch API or Node's filesystem module is available.` +// ); +// } ); +// } +class Event { + constructor( type, detail = {}, msg ) { + this.type = type; + this.detail = detail; + this.msg = msg; + Object.defineProperty( this, `__mayPropagate`, { + enumerable: false, + writable: true, + } ); + this.__mayPropagate = true; + } + preventDefault() {} + stopPropagation() { + this.__mayPropagate = false; + } + valueOf() { + return this; + } + toString() { + return this.msg + ? `[${ this.type } event]: ${ this.msg }` + : `[${ this.type } event]`; + } +} +class EventManager { + constructor() { + this.listeners = {}; + } + addEventListener( type, listener, useCapture ) { + let bin = this.listeners[ type ] || []; + if ( useCapture ) bin.unshift( listener ); + else bin.push( listener ); + this.listeners[ type ] = bin; + } + removeEventListener( type, listener ) { + let bin = this.listeners[ type ] || []; + let pos = bin.findIndex( ( e ) => e === listener ); + if ( pos > -1 ) { + bin.splice( pos, 1 ); + this.listeners[ type ] = bin; + } + } + dispatch( event ) { + let bin = this.listeners[ event.type ]; + if ( bin ) { + for ( let l = 0, e = bin.length; l < e; l++ ) { + if ( ! event.__mayPropagate ) break; + bin[ l ]( event ); + } + } + } +} +const startDate = new Date( `1904-01-01T00:00:00+0000` ).getTime(); +function asText( data ) { + return Array.from( data ) + .map( ( v ) => String.fromCharCode( v ) ) + .join( `` ); +} +class Parser { + constructor( dict, dataview, name ) { + this.name = ( name || dict.tag || `` ).trim(); + this.length = dict.length; + this.start = dict.offset; + this.offset = 0; + this.data = dataview; + [ + `getInt8`, + `getUint8`, + `getInt16`, + `getUint16`, + `getInt32`, + `getUint32`, + `getBigInt64`, + `getBigUint64`, + ].forEach( ( name ) => { + let fn = name.replace( /get(Big)?/, '' ).toLowerCase(); + let increment = parseInt( name.replace( /[^\d]/g, '' ) ) / 8; + Object.defineProperty( this, fn, { + get: () => this.getValue( name, increment ), + } ); + } ); + } + get currentPosition() { + return this.start + this.offset; + } + set currentPosition( position ) { + this.start = position; + this.offset = 0; + } + skip( n = 0, bits = 8 ) { + this.offset += ( n * bits ) / 8; + } + getValue( type, increment ) { + let pos = this.start + this.offset; + this.offset += increment; + try { + return this.data[ type ]( pos ); + } catch ( e ) { + console.error( `parser`, type, increment, this ); + console.error( `parser`, this.start, this.offset ); + throw e; + } + } + flags( n ) { + if ( n === 8 || n === 16 || n === 32 || n === 64 ) { + return this[ `uint${ n }` ] + .toString( 2 ) + .padStart( n, 0 ) + .split( `` ) + .map( ( v ) => v === '1' ); + } + console.error( + `Error parsing flags: flag types can only be 1, 2, 4, or 8 bytes long` + ); + console.trace(); + } + get tag() { + const t = this.uint32; + return asText( [ + ( t >> 24 ) & 255, + ( t >> 16 ) & 255, + ( t >> 8 ) & 255, + t & 255, + ] ); + } + get fixed() { + let major = this.int16; + let minor = Math.round( ( 1e3 * this.uint16 ) / 65356 ); + return major + minor / 1e3; + } + get legacyFixed() { + let major = this.uint16; + let minor = this.uint16.toString( 16 ).padStart( 4, 0 ); + return parseFloat( `${ major }.${ minor }` ); + } + get uint24() { + return ( this.uint8 << 16 ) + ( this.uint8 << 8 ) + this.uint8; + } + get uint128() { + let value = 0; + for ( let i = 0; i < 5; i++ ) { + let byte = this.uint8; + value = value * 128 + ( byte & 127 ); + if ( byte < 128 ) break; + } + return value; + } + get longdatetime() { + return new Date( startDate + 1e3 * parseInt( this.int64.toString() ) ); + } + get fword() { + return this.int16; + } + get ufword() { + return this.uint16; + } + get Offset16() { + return this.uint16; + } + get Offset32() { + return this.uint32; + } + get F2DOT14() { + const bits = p.uint16; + const integer = [ 0, 1, -2, -1 ][ bits >> 14 ]; + const fraction = bits & 16383; + return integer + fraction / 16384; + } + verifyLength() { + if ( this.offset != this.length ) { + console.error( + `unexpected parsed table size (${ this.offset }) for "${ this.name }" (expected ${ this.length })` + ); + } + } + readBytes( n = 0, position = 0, bits = 8, signed = false ) { + n = n || this.length; + if ( n === 0 ) return []; + if ( position ) this.currentPosition = position; + const fn = `${ signed ? `` : `u` }int${ bits }`, + slice = []; + while ( n-- ) slice.push( this[ fn ] ); + return slice; + } +} +class ParsedData { + constructor( parser ) { + const pGetter = { enumerable: false, get: () => parser }; + Object.defineProperty( this, `parser`, pGetter ); + const start = parser.currentPosition; + const startGetter = { enumerable: false, get: () => start }; + Object.defineProperty( this, `start`, startGetter ); + } + load( struct ) { + Object.keys( struct ).forEach( ( p ) => { + let props = Object.getOwnPropertyDescriptor( struct, p ); + if ( props.get ) { + this[ p ] = props.get.bind( this ); + } else if ( props.value !== undefined ) { + this[ p ] = props.value; + } + } ); + if ( this.parser.length ) { + this.parser.verifyLength(); + } + } +} +class SimpleTable extends ParsedData { + constructor( dict, dataview, name ) { + const { parser: parser, start: start } = super( + new Parser( dict, dataview, name ) + ); + const pGetter = { enumerable: false, get: () => parser }; + Object.defineProperty( this, `p`, pGetter ); + const startGetter = { enumerable: false, get: () => start }; + Object.defineProperty( this, `tableStart`, startGetter ); + } +} +function lazy$1( object, property, getter ) { + let val; + Object.defineProperty( object, property, { + get: () => { + if ( val ) return val; + val = getter(); + return val; + }, + enumerable: true, + } ); +} +class SFNT extends SimpleTable { + constructor( font, dataview, createTable ) { + const { p: p } = super( { offset: 0, length: 12 }, dataview, `sfnt` ); + this.version = p.uint32; + this.numTables = p.uint16; + this.searchRange = p.uint16; + this.entrySelector = p.uint16; + this.rangeShift = p.uint16; + p.verifyLength(); + this.directory = [ ...new Array( this.numTables ) ].map( + ( _ ) => new TableRecord( p ) + ); + this.tables = {}; + this.directory.forEach( ( entry ) => { + const getter = () => + createTable( + this.tables, + { + tag: entry.tag, + offset: entry.offset, + length: entry.length, + }, + dataview + ); + lazy$1( this.tables, entry.tag.trim(), getter ); + } ); + } +} +class TableRecord { + constructor( p ) { + this.tag = p.tag; + this.checksum = p.uint32; + this.offset = p.uint32; + this.length = p.uint32; + } +} +const gzipDecode = GzipDecode.inflate || undefined; +console.log( "gzipDecode", gzipDecode ); +let nativeGzipDecode = undefined; +// if ( ! gzipDecode ) { +// import( 'zlib' ).then( ( zlib ) => { +// nativeGzipDecode = ( buffer ) => zlib.unzipSync( buffer ); +// } ); +// } +class WOFF$1 extends SimpleTable { + constructor( font, dataview, createTable ) { + const { p: p } = super( { offset: 0, length: 44 }, dataview, `woff` ); + this.signature = p.tag; + this.flavor = p.uint32; + this.length = p.uint32; + this.numTables = p.uint16; + p.uint16; + this.totalSfntSize = p.uint32; + this.majorVersion = p.uint16; + this.minorVersion = p.uint16; + this.metaOffset = p.uint32; + this.metaLength = p.uint32; + this.metaOrigLength = p.uint32; + this.privOffset = p.uint32; + this.privLength = p.uint32; + p.verifyLength(); + this.directory = [ ...new Array( this.numTables ) ].map( + ( _ ) => new WoffTableDirectoryEntry( p ) + ); + buildWoffLazyLookups( this, dataview, createTable ); + } +} +class WoffTableDirectoryEntry { + constructor( p ) { + this.tag = p.tag; + this.offset = p.uint32; + this.compLength = p.uint32; + this.origLength = p.uint32; + this.origChecksum = p.uint32; + } +} +function buildWoffLazyLookups( woff, dataview, createTable ) { + woff.tables = {}; + woff.directory.forEach( ( entry ) => { + lazy$1( woff.tables, entry.tag.trim(), () => { + let offset = 0; + let view = dataview; + if ( entry.compLength !== entry.origLength ) { + const data = dataview.buffer.slice( + entry.offset, + entry.offset + entry.compLength + ); + let unpacked; + if ( gzipDecode ) { + unpacked = gzipDecode( new Uint8Array( data ) ); + } else if ( nativeGzipDecode ) { + unpacked = nativeGzipDecode( new Uint8Array( data ) ); + } else { + const msg = `no brotli decoder available to decode WOFF2 font`; + if ( font.onerror ) font.onerror( msg ); + throw new Error( msg ); + } + view = new DataView( unpacked.buffer ); + } else { + offset = entry.offset; + } + return createTable( + woff.tables, + { tag: entry.tag, offset: offset, length: entry.origLength }, + view + ); + } ); + } ); +} +const brotliDecode = unbrotli; +let nativeBrotliDecode = undefined; +// if ( ! brotliDecode ) { +// import( 'zlib' ).then( ( zlib ) => { +// nativeBrotliDecode = ( buffer ) => zlib.brotliDecompressSync( buffer ); +// } ); +// } +class WOFF2$1 extends SimpleTable { + constructor( font, dataview, createTable ) { + const { p: p } = super( { offset: 0, length: 48 }, dataview, `woff2` ); + this.signature = p.tag; + this.flavor = p.uint32; + this.length = p.uint32; + this.numTables = p.uint16; + p.uint16; + this.totalSfntSize = p.uint32; + this.totalCompressedSize = p.uint32; + this.majorVersion = p.uint16; + this.minorVersion = p.uint16; + this.metaOffset = p.uint32; + this.metaLength = p.uint32; + this.metaOrigLength = p.uint32; + this.privOffset = p.uint32; + this.privLength = p.uint32; + p.verifyLength(); + this.directory = [ ...new Array( this.numTables ) ].map( + ( _ ) => new Woff2TableDirectoryEntry( p ) + ); + let dictOffset = p.currentPosition; + this.directory[ 0 ].offset = 0; + this.directory.forEach( ( e, i ) => { + let next = this.directory[ i + 1 ]; + if ( next ) { + next.offset = + e.offset + + ( e.transformLength !== undefined + ? e.transformLength + : e.origLength ); + } + } ); + let decoded; + let buffer = dataview.buffer.slice( dictOffset ); + if ( brotliDecode ) { + decoded = brotliDecode( new Uint8Array( buffer ) ); + } else if ( nativeBrotliDecode ) { + decoded = new Uint8Array( nativeBrotliDecode( buffer ) ); + } else { + const msg = `no brotli decoder available to decode WOFF2 font`; + if ( font.onerror ) font.onerror( msg ); + throw new Error( msg ); + } + buildWoff2LazyLookups( this, decoded, createTable ); + } +} +class Woff2TableDirectoryEntry { + constructor( p ) { + this.flags = p.uint8; + const tagNumber = ( this.tagNumber = this.flags & 63 ); + if ( tagNumber === 63 ) { + this.tag = p.tag; + } else { + this.tag = getWOFF2Tag( tagNumber ); + } + const transformVersion = ( this.transformVersion = + ( this.flags & 192 ) >> 6 ); + let hasTransforms = transformVersion !== 0; + if ( this.tag === `glyf` || this.tag === `loca` ) { + hasTransforms = this.transformVersion !== 3; + } + this.origLength = p.uint128; + if ( hasTransforms ) { + this.transformLength = p.uint128; + } + } +} +function buildWoff2LazyLookups( woff2, decoded, createTable ) { + woff2.tables = {}; + woff2.directory.forEach( ( entry ) => { + lazy$1( woff2.tables, entry.tag.trim(), () => { + const start = entry.offset; + const end = + start + + ( entry.transformLength + ? entry.transformLength + : entry.origLength ); + const data = new DataView( decoded.slice( start, end ).buffer ); + try { + return createTable( + woff2.tables, + { tag: entry.tag, offset: 0, length: entry.origLength }, + data + ); + } catch ( e ) { + console.error( e ); + } + } ); + } ); +} +function getWOFF2Tag( flag ) { + return [ + `cmap`, + `head`, + `hhea`, + `hmtx`, + `maxp`, + `name`, + `OS/2`, + `post`, + `cvt `, + `fpgm`, + `glyf`, + `loca`, + `prep`, + `CFF `, + `VORG`, + `EBDT`, + `EBLC`, + `gasp`, + `hdmx`, + `kern`, + `LTSH`, + `PCLT`, + `VDMX`, + `vhea`, + `vmtx`, + `BASE`, + `GDEF`, + `GPOS`, + `GSUB`, + `EBSC`, + `JSTF`, + `MATH`, + `CBDT`, + `CBLC`, + `COLR`, + `CPAL`, + `SVG `, + `sbix`, + `acnt`, + `avar`, + `bdat`, + `bloc`, + `bsln`, + `cvar`, + `fdsc`, + `feat`, + `fmtx`, + `fvar`, + `gvar`, + `hsty`, + `just`, + `lcar`, + `mort`, + `morx`, + `opbd`, + `prop`, + `trak`, + `Zapf`, + `Silf`, + `Glat`, + `Gloc`, + `Feat`, + `Sill`, + ][ flag & 63 ]; +} +const tableClasses = {}; +let tableClassesLoaded = false; +Promise.all( [ + Promise.resolve().then( function () { + return cmap$1; + } ), + Promise.resolve().then( function () { + return head$1; + } ), + Promise.resolve().then( function () { + return hhea$1; + } ), + Promise.resolve().then( function () { + return hmtx$1; + } ), + Promise.resolve().then( function () { + return maxp$1; + } ), + Promise.resolve().then( function () { + return name$1; + } ), + Promise.resolve().then( function () { + return OS2$1; + } ), + Promise.resolve().then( function () { + return post$1; + } ), + Promise.resolve().then( function () { + return BASE$1; + } ), + Promise.resolve().then( function () { + return GDEF$1; + } ), + Promise.resolve().then( function () { + return GSUB$1; + } ), + Promise.resolve().then( function () { + return GPOS$1; + } ), + Promise.resolve().then( function () { + return SVG$1; + } ), + Promise.resolve().then( function () { + return fvar$1; + } ), + Promise.resolve().then( function () { + return cvt$1; + } ), + Promise.resolve().then( function () { + return fpgm$1; + } ), + Promise.resolve().then( function () { + return gasp$1; + } ), + Promise.resolve().then( function () { + return glyf$1; + } ), + Promise.resolve().then( function () { + return loca$1; + } ), + Promise.resolve().then( function () { + return prep$1; + } ), + Promise.resolve().then( function () { + return CFF$1; + } ), + Promise.resolve().then( function () { + return CFF2$1; + } ), + Promise.resolve().then( function () { + return VORG$1; + } ), + Promise.resolve().then( function () { + return EBLC$1; + } ), + Promise.resolve().then( function () { + return EBDT$1; + } ), + Promise.resolve().then( function () { + return EBSC$1; + } ), + Promise.resolve().then( function () { + return CBLC$1; + } ), + Promise.resolve().then( function () { + return CBDT$1; + } ), + Promise.resolve().then( function () { + return sbix$1; + } ), + Promise.resolve().then( function () { + return COLR$1; + } ), + Promise.resolve().then( function () { + return CPAL$1; + } ), + Promise.resolve().then( function () { + return DSIG$1; + } ), + Promise.resolve().then( function () { + return hdmx$1; + } ), + Promise.resolve().then( function () { + return kern$1; + } ), + Promise.resolve().then( function () { + return LTSH$1; + } ), + Promise.resolve().then( function () { + return MERG$1; + } ), + Promise.resolve().then( function () { + return meta$1; + } ), + Promise.resolve().then( function () { + return PCLT$1; + } ), + Promise.resolve().then( function () { + return VDMX$1; + } ), + Promise.resolve().then( function () { + return vhea$1; + } ), + Promise.resolve().then( function () { + return vmtx$1; + } ), +] ).then( ( data ) => { + data.forEach( ( e ) => { + let name = Object.keys( e )[ 0 ]; + tableClasses[ name ] = e[ name ]; + } ); + tableClassesLoaded = true; +} ); +function createTable( tables, dict, dataview ) { + let name = dict.tag.replace( /[^\w\d]/g, `` ); + let Type = tableClasses[ name ]; + if ( Type ) return new Type( dict, dataview, tables ); + console.warn( + `lib-font has no definition for ${ name }. The table was skipped.` + ); + return {}; +} +function loadTableClasses() { + let count = 0; + function checkLoaded( resolve, reject ) { + if ( ! tableClassesLoaded ) { + if ( count > 10 ) { + return reject( new Error( `loading took too long` ) ); + } + count++; + return setTimeout( () => checkLoaded( resolve ), 250 ); + } + resolve( createTable ); + } + return new Promise( ( resolve, reject ) => checkLoaded( resolve ) ); +} +function getFontCSSFormat( path, errorOnStyle ) { + let pos = path.lastIndexOf( `.` ); + let ext = ( path.substring( pos + 1 ) || `` ).toLowerCase(); + let format = { + ttf: `truetype`, + otf: `opentype`, + woff: `woff`, + woff2: `woff2`, + }[ ext ]; + if ( format ) return format; + let msg = { + eot: `The .eot format is not supported: it died in January 12, 2016, when Microsoft retired all versions of IE that didn't already support WOFF.`, + svg: `The .svg format is not supported: SVG fonts (not to be confused with OpenType with embedded SVG) were so bad we took the entire fonts chapter out of the SVG specification again.`, + fon: `The .fon format is not supported: this is an ancient Windows bitmap font format.`, + ttc: `Based on the current CSS specification, font collections are not (yet?) supported.`, + }[ ext ]; + if ( ! msg ) msg = `${ path } is not a known webfont format.`; + if ( errorOnStyle ) { + throw new Error( msg ); + } else { + console.warn( `Could not load font: ${ msg }` ); + } +} +async function setupFontFace( name, url, options = {} ) { + if ( ! globalThis.document ) return; + let format = getFontCSSFormat( url, options.errorOnStyle ); + if ( ! format ) return; + let style = document.createElement( `style` ); + style.className = `injected-by-Font-js`; + let rules = []; + if ( options.styleRules ) { + rules = Object.entries( options.styleRules ).map( + ( [ key, value ] ) => `${ key }: ${ value };` + ); + } + style.textContent = `\n@font-face {\n font-family: "${ name }";\n ${ rules.join( + `\n\t` + ) }\n src: url("${ url }") format("${ format }");\n}`; + globalThis.document.head.appendChild( style ); + return style; +} +const TTF = [ 0, 1, 0, 0 ]; +const OTF = [ 79, 84, 84, 79 ]; +const WOFF = [ 119, 79, 70, 70 ]; +const WOFF2 = [ 119, 79, 70, 50 ]; +function match( ar1, ar2 ) { + if ( ar1.length !== ar2.length ) return; + for ( let i = 0; i < ar1.length; i++ ) { + if ( ar1[ i ] !== ar2[ i ] ) return; + } + return true; +} +function validFontFormat( dataview ) { + const LEAD_BYTES = [ + dataview.getUint8( 0 ), + dataview.getUint8( 1 ), + dataview.getUint8( 2 ), + dataview.getUint8( 3 ), + ]; + if ( match( LEAD_BYTES, TTF ) || match( LEAD_BYTES, OTF ) ) return `SFNT`; + if ( match( LEAD_BYTES, WOFF ) ) return `WOFF`; + if ( match( LEAD_BYTES, WOFF2 ) ) return `WOFF2`; +} +function checkFetchResponseStatus( response ) { + if ( ! response.ok ) { + throw new Error( + `HTTP ${ response.status } - ${ response.statusText }` + ); + } + return response; +} +class Font extends EventManager { + constructor( name, options = {} ) { + super(); + this.name = name; + this.options = options; + this.metrics = false; + } + get src() { + return this.__src; + } + set src( src ) { + this.__src = src; + ( async () => { + if ( globalThis.document && ! this.options.skipStyleSheet ) { + await setupFontFace( this.name, src, this.options ); + } + this.loadFont( src ); + } )(); + } + async loadFont( url, filename ) { + fetch( url ) + .then( + ( response ) => + checkFetchResponseStatus( response ) && + response.arrayBuffer() + ) + .then( ( buffer ) => + this.fromDataBuffer( buffer, filename || url ) + ) + .catch( ( err ) => { + const evt = new Event( + `error`, + err, + `Failed to load font at ${ filename || url }` + ); + this.dispatch( evt ); + if ( this.onerror ) this.onerror( evt ); + } ); + } + async fromDataBuffer( buffer, filenameOrUrL ) { + this.fontData = new DataView( buffer ); + let type = validFontFormat( this.fontData ); + if ( ! type ) { + throw new Error( + `${ filenameOrUrL } is either an unsupported font format, or not a font at all.` + ); + } + await this.parseBasicData( type ); + const evt = new Event( 'load', { font: this } ); + this.dispatch( evt ); + if ( this.onload ) this.onload( evt ); + } + async parseBasicData( type ) { + return loadTableClasses().then( ( createTable ) => { + if ( type === `SFNT` ) { + this.opentype = new SFNT( this, this.fontData, createTable ); + } + if ( type === `WOFF` ) { + this.opentype = new WOFF$1( this, this.fontData, createTable ); + } + if ( type === `WOFF2` ) { + this.opentype = new WOFF2$1( this, this.fontData, createTable ); + } + return this.opentype; + } ); + } + getGlyphId( char ) { + return this.opentype.tables.cmap.getGlyphId( char ); + } + reverse( glyphid ) { + return this.opentype.tables.cmap.reverse( glyphid ); + } + supports( char ) { + return this.getGlyphId( char ) !== 0; + } + supportsVariation( variation ) { + return ( + this.opentype.tables.cmap.supportsVariation( variation ) !== false + ); + } + measureText( text, size = 16 ) { + if ( this.__unloaded ) + throw new Error( + 'Cannot measure text: font was unloaded. Please reload before calling measureText()' + ); + let d = document.createElement( 'div' ); + d.textContent = text; + d.style.fontFamily = this.name; + d.style.fontSize = `${ size }px`; + d.style.color = `transparent`; + d.style.background = `transparent`; + d.style.top = `0`; + d.style.left = `0`; + d.style.position = `absolute`; + document.body.appendChild( d ); + let bbox = d.getBoundingClientRect(); + document.body.removeChild( d ); + const OS2 = this.opentype.tables[ 'OS/2' ]; + bbox.fontSize = size; + bbox.ascender = OS2.sTypoAscender; + bbox.descender = OS2.sTypoDescender; + return bbox; + } + unload() { + if ( this.styleElement.parentNode ) { + this.styleElement.parentNode.removeElement( this.styleElement ); + const evt = new Event( 'unload', { font: this } ); + this.dispatch( evt ); + if ( this.onunload ) this.onunload( evt ); + } + this._unloaded = true; + } + load() { + if ( this.__unloaded ) { + delete this.__unloaded; + document.head.appendChild( this.styleElement ); + const evt = new Event( 'load', { font: this } ); + this.dispatch( evt ); + if ( this.onload ) this.onload( evt ); + } + } +} +globalThis.Font = Font; +class Subtable extends ParsedData { + constructor( p, plaformID, encodingID ) { + super( p ); + this.plaformID = plaformID; + this.encodingID = encodingID; + } +} +class Format0 extends Subtable { + constructor( p, platformID, encodingID ) { + super( p, platformID, encodingID ); + this.format = 0; + this.length = p.uint16; + this.language = p.uint16; + this.glyphIdArray = [ ...new Array( 256 ) ].map( ( _ ) => p.uint8 ); + } + supports( charCode ) { + if ( charCode.charCodeAt ) { + charCode = -1; + console.warn( + `supports(character) not implemented for cmap subtable format 0. only supports(id) is implemented.` + ); + } + return 0 <= charCode && charCode <= 255; + } + reverse( glyphID ) { + console.warn( `reverse not implemented for cmap subtable format 0` ); + return {}; + } + getSupportedCharCodes() { + return [ { start: 1, end: 256 } ]; + } +} +class Format2 extends Subtable { + constructor( p, platformID, encodingID ) { + super( p, platformID, encodingID ); + this.format = 2; + this.length = p.uint16; + this.language = p.uint16; + this.subHeaderKeys = [ ...new Array( 256 ) ].map( ( _ ) => p.uint16 ); + const subHeaderCount = Math.max( ...this.subHeaderKeys ); + const subHeaderOffset = p.currentPosition; + lazy$1( this, `subHeaders`, () => { + p.currentPosition = subHeaderOffset; + return [ ...new Array( subHeaderCount ) ].map( + ( _ ) => new SubHeader( p ) + ); + } ); + const glyphIndexOffset = subHeaderOffset + subHeaderCount * 8; + lazy$1( this, `glyphIndexArray`, () => { + p.currentPosition = glyphIndexOffset; + return [ ...new Array( subHeaderCount ) ].map( ( _ ) => p.uint16 ); + } ); + } + supports( charCode ) { + if ( charCode.charCodeAt ) { + charCode = -1; + console.warn( + `supports(character) not implemented for cmap subtable format 2. only supports(id) is implemented.` + ); + } + const low = charCode && 255; + const high = charCode && 65280; + const subHeaderKey = this.subHeaders[ high ]; + const subheader = this.subHeaders[ subHeaderKey ]; + const first = subheader.firstCode; + const last = first + subheader.entryCount; + return first <= low && low <= last; + } + reverse( glyphID ) { + console.warn( `reverse not implemented for cmap subtable format 2` ); + return {}; + } + getSupportedCharCodes( preservePropNames = false ) { + if ( preservePropNames ) { + return this.subHeaders.map( ( h ) => ( { + firstCode: h.firstCode, + lastCode: h.lastCode, + } ) ); + } + return this.subHeaders.map( ( h ) => ( { + start: h.firstCode, + end: h.lastCode, + } ) ); + } +} +class SubHeader { + constructor( p ) { + this.firstCode = p.uint16; + this.entryCount = p.uint16; + this.lastCode = this.first + this.entryCount; + this.idDelta = p.int16; + this.idRangeOffset = p.uint16; + } +} +class Format4 extends Subtable { + constructor( p, platformID, encodingID ) { + super( p, platformID, encodingID ); + this.format = 4; + this.length = p.uint16; + this.language = p.uint16; + this.segCountX2 = p.uint16; + this.segCount = this.segCountX2 / 2; + this.searchRange = p.uint16; + this.entrySelector = p.uint16; + this.rangeShift = p.uint16; + const endCodePosition = p.currentPosition; + lazy$1( this, `endCode`, () => + p.readBytes( this.segCount, endCodePosition, 16 ) + ); + const startCodePosition = endCodePosition + 2 + this.segCountX2; + lazy$1( this, `startCode`, () => + p.readBytes( this.segCount, startCodePosition, 16 ) + ); + const idDeltaPosition = startCodePosition + this.segCountX2; + lazy$1( this, `idDelta`, () => + p.readBytes( this.segCount, idDeltaPosition, 16, true ) + ); + const idRangePosition = idDeltaPosition + this.segCountX2; + lazy$1( this, `idRangeOffset`, () => + p.readBytes( this.segCount, idRangePosition, 16 ) + ); + const glyphIdArrayPosition = idRangePosition + this.segCountX2; + const glyphIdArrayLength = + this.length - ( glyphIdArrayPosition - this.tableStart ); + lazy$1( this, `glyphIdArray`, () => + p.readBytes( glyphIdArrayLength, glyphIdArrayPosition, 16 ) + ); + lazy$1( this, `segments`, () => + this.buildSegments( idRangePosition, glyphIdArrayPosition, p ) + ); + } + buildSegments( idRangePosition, glyphIdArrayPosition, p ) { + const build = ( _, i ) => { + let startCode = this.startCode[ i ], + endCode = this.endCode[ i ], + idDelta = this.idDelta[ i ], + idRangeOffset = this.idRangeOffset[ i ], + idRangeOffsetPointer = idRangePosition + 2 * i, + glyphIDs = []; + if ( idRangeOffset === 0 ) { + for ( + let i = startCode + idDelta, e = endCode + idDelta; + i <= e; + i++ + ) { + glyphIDs.push( i ); + } + } else { + for ( let i = 0, e = endCode - startCode; i <= e; i++ ) { + p.currentPosition = + idRangeOffsetPointer + idRangeOffset + i * 2; + glyphIDs.push( p.uint16 ); + } + } + return { + startCode: startCode, + endCode: endCode, + idDelta: idDelta, + idRangeOffset: idRangeOffset, + glyphIDs: glyphIDs, + }; + }; + return [ ...new Array( this.segCount ) ].map( build ); + } + reverse( glyphID ) { + let s = this.segments.find( ( v ) => v.glyphIDs.includes( glyphID ) ); + if ( ! s ) return {}; + const code = s.startCode + s.glyphIDs.indexOf( glyphID ); + return { code: code, unicode: String.fromCodePoint( code ) }; + } + getGlyphId( charCode ) { + if ( charCode.charCodeAt ) charCode = charCode.charCodeAt( 0 ); + if ( 55296 <= charCode && charCode <= 57343 ) return 0; + if ( ( charCode & 65534 ) === 65534 || ( charCode & 65535 ) === 65535 ) + return 0; + let segment = this.segments.find( + ( s ) => s.startCode <= charCode && charCode <= s.endCode + ); + if ( ! segment ) return 0; + return segment.glyphIDs[ charCode - segment.startCode ]; + } + supports( charCode ) { + return this.getGlyphId( charCode ) !== 0; + } + getSupportedCharCodes( preservePropNames = false ) { + if ( preservePropNames ) return this.segments; + return this.segments.map( ( v ) => ( { + start: v.startCode, + end: v.endCode, + } ) ); + } +} +class Format6 extends Subtable { + constructor( p, platformID, encodingID ) { + super( p, platformID, encodingID ); + this.format = 6; + this.length = p.uint16; + this.language = p.uint16; + this.firstCode = p.uint16; + this.entryCount = p.uint16; + this.lastCode = this.firstCode + this.entryCount - 1; + const getter = () => + [ ...new Array( this.entryCount ) ].map( ( _ ) => p.uint16 ); + lazy$1( this, `glyphIdArray`, getter ); + } + supports( charCode ) { + if ( charCode.charCodeAt ) { + charCode = -1; + console.warn( + `supports(character) not implemented for cmap subtable format 6. only supports(id) is implemented.` + ); + } + if ( charCode < this.firstCode ) return {}; + if ( charCode > this.firstCode + this.entryCount ) return {}; + const code = charCode - this.firstCode; + return { code: code, unicode: String.fromCodePoint( code ) }; + } + reverse( glyphID ) { + let pos = this.glyphIdArray.indexOf( glyphID ); + if ( pos > -1 ) return this.firstCode + pos; + } + getSupportedCharCodes( preservePropNames = false ) { + if ( preservePropNames ) { + return [ { firstCode: this.firstCode, lastCode: this.lastCode } ]; + } + return [ { start: this.firstCode, end: this.lastCode } ]; + } +} +class Format8 extends Subtable { + constructor( p, platformID, encodingID ) { + super( p, platformID, encodingID ); + this.format = 8; + p.uint16; + this.length = p.uint32; + this.language = p.uint32; + this.is32 = [ ...new Array( 8192 ) ].map( ( _ ) => p.uint8 ); + this.numGroups = p.uint32; + const getter = () => + [ ...new Array( this.numGroups ) ].map( + ( _ ) => new SequentialMapGroup$1( p ) + ); + lazy$1( this, `groups`, getter ); + } + supports( charCode ) { + if ( charCode.charCodeAt ) { + charCode = -1; + console.warn( + `supports(character) not implemented for cmap subtable format 8. only supports(id) is implemented.` + ); + } + return ( + this.groups.findIndex( + ( s ) => + s.startcharCode <= charCode && charCode <= s.endcharCode + ) !== -1 + ); + } + reverse( glyphID ) { + console.warn( `reverse not implemented for cmap subtable format 8` ); + return {}; + } + getSupportedCharCodes( preservePropNames = false ) { + if ( preservePropNames ) return this.groups; + return this.groups.map( ( v ) => ( { + start: v.startcharCode, + end: v.endcharCode, + } ) ); + } +} +class SequentialMapGroup$1 { + constructor( p ) { + this.startcharCode = p.uint32; + this.endcharCode = p.uint32; + this.startGlyphID = p.uint32; + } +} +class Format10 extends Subtable { + constructor( p, platformID, encodingID ) { + super( p, platformID, encodingID ); + this.format = 10; + p.uint16; + this.length = p.uint32; + this.language = p.uint32; + this.startCharCode = p.uint32; + this.numChars = p.uint32; + this.endCharCode = this.startCharCode + this.numChars; + const getter = () => + [ ...new Array( this.numChars ) ].map( ( _ ) => p.uint16 ); + lazy$1( this, `glyphs`, getter ); + } + supports( charCode ) { + if ( charCode.charCodeAt ) { + charCode = -1; + console.warn( + `supports(character) not implemented for cmap subtable format 10. only supports(id) is implemented.` + ); + } + if ( charCode < this.startCharCode ) return false; + if ( charCode > this.startCharCode + this.numChars ) return false; + return charCode - this.startCharCode; + } + reverse( glyphID ) { + console.warn( `reverse not implemented for cmap subtable format 10` ); + return {}; + } + getSupportedCharCodes( preservePropNames = false ) { + if ( preservePropNames ) { + return [ + { + startCharCode: this.startCharCode, + endCharCode: this.endCharCode, + }, + ]; + } + return [ { start: this.startCharCode, end: this.endCharCode } ]; + } +} +class Format12 extends Subtable { + constructor( p, platformID, encodingID ) { + super( p, platformID, encodingID ); + this.format = 12; + p.uint16; + this.length = p.uint32; + this.language = p.uint32; + this.numGroups = p.uint32; + const getter = () => + [ ...new Array( this.numGroups ) ].map( + ( _ ) => new SequentialMapGroup( p ) + ); + lazy$1( this, `groups`, getter ); + } + supports( charCode ) { + if ( charCode.charCodeAt ) charCode = charCode.charCodeAt( 0 ); + if ( 55296 <= charCode && charCode <= 57343 ) return 0; + if ( ( charCode & 65534 ) === 65534 || ( charCode & 65535 ) === 65535 ) + return 0; + return ( + this.groups.findIndex( + ( s ) => + s.startCharCode <= charCode && charCode <= s.endCharCode + ) !== -1 + ); + } + reverse( glyphID ) { + for ( let group of this.groups ) { + let start = group.startGlyphID; + if ( start > glyphID ) continue; + if ( start === glyphID ) return group.startCharCode; + let end = start + ( group.endCharCode - group.startCharCode ); + if ( end < glyphID ) continue; + const code = group.startCharCode + ( glyphID - start ); + return { code: code, unicode: String.fromCodePoint( code ) }; + } + return {}; + } + getSupportedCharCodes( preservePropNames = false ) { + if ( preservePropNames ) return this.groups; + return this.groups.map( ( v ) => ( { + start: v.startCharCode, + end: v.endCharCode, + } ) ); + } +} +class SequentialMapGroup { + constructor( p ) { + this.startCharCode = p.uint32; + this.endCharCode = p.uint32; + this.startGlyphID = p.uint32; + } +} +class Format13 extends Subtable { + constructor( p, platformID, encodingID ) { + super( p, platformID, encodingID ); + this.format = 13; + p.uint16; + this.length = p.uint32; + this.language = p.uint32; + this.numGroups = p.uint32; + const getter = [ ...new Array( this.numGroups ) ].map( + ( _ ) => new ConstantMapGroup( p ) + ); + lazy$1( this, `groups`, getter ); + } + supports( charCode ) { + if ( charCode.charCodeAt ) charCode = charCode.charCodeAt( 0 ); + return ( + this.groups.findIndex( + ( s ) => + s.startCharCode <= charCode && charCode <= s.endCharCode + ) !== -1 + ); + } + reverse( glyphID ) { + console.warn( `reverse not implemented for cmap subtable format 13` ); + return {}; + } + getSupportedCharCodes( preservePropNames = false ) { + if ( preservePropNames ) return this.groups; + return this.groups.map( ( v ) => ( { + start: v.startCharCode, + end: v.endCharCode, + } ) ); + } +} +class ConstantMapGroup { + constructor( p ) { + this.startCharCode = p.uint32; + this.endCharCode = p.uint32; + this.glyphID = p.uint32; + } +} +class Format14 extends Subtable { + constructor( p, platformID, encodingID ) { + super( p, platformID, encodingID ); + this.subTableStart = p.currentPosition; + this.format = 14; + this.length = p.uint32; + this.numVarSelectorRecords = p.uint32; + lazy$1( this, `varSelectors`, () => + [ ...new Array( this.numVarSelectorRecords ) ].map( + ( _ ) => new VariationSelector( p ) + ) + ); + } + supports() { + console.warn( `supports not implemented for cmap subtable format 14` ); + return 0; + } + getSupportedCharCodes() { + console.warn( + `getSupportedCharCodes not implemented for cmap subtable format 14` + ); + return []; + } + reverse( glyphID ) { + console.warn( `reverse not implemented for cmap subtable format 14` ); + return {}; + } + supportsVariation( variation ) { + let v = this.varSelector.find( + ( uvs ) => uvs.varSelector === variation + ); + return v ? v : false; + } + getSupportedVariations() { + return this.varSelectors.map( ( v ) => v.varSelector ); + } +} +class VariationSelector { + constructor( p ) { + this.varSelector = p.uint24; + this.defaultUVSOffset = p.Offset32; + this.nonDefaultUVSOffset = p.Offset32; + } +} +function createSubTable( parser, platformID, encodingID ) { + const format = parser.uint16; + if ( format === 0 ) return new Format0( parser, platformID, encodingID ); + if ( format === 2 ) return new Format2( parser, platformID, encodingID ); + if ( format === 4 ) return new Format4( parser, platformID, encodingID ); + if ( format === 6 ) return new Format6( parser, platformID, encodingID ); + if ( format === 8 ) return new Format8( parser, platformID, encodingID ); + if ( format === 10 ) return new Format10( parser, platformID, encodingID ); + if ( format === 12 ) return new Format12( parser, platformID, encodingID ); + if ( format === 13 ) return new Format13( parser, platformID, encodingID ); + if ( format === 14 ) return new Format14( parser, platformID, encodingID ); + return {}; +} +class cmap extends SimpleTable { + constructor( dict, dataview ) { + const { p: p } = super( dict, dataview ); + this.version = p.uint16; + this.numTables = p.uint16; + this.encodingRecords = [ ...new Array( this.numTables ) ].map( + ( _ ) => new EncodingRecord( p, this.tableStart ) + ); + } + getSubTable( tableID ) { + return this.encodingRecords[ tableID ].table; + } + getSupportedEncodings() { + return this.encodingRecords.map( ( r ) => ( { + platformID: r.platformID, + encodingId: r.encodingID, + } ) ); + } + getSupportedCharCodes( platformID, encodingID ) { + const recordID = this.encodingRecords.findIndex( + ( r ) => r.platformID === platformID && r.encodingID === encodingID + ); + if ( recordID === -1 ) return false; + const subtable = this.getSubTable( recordID ); + return subtable.getSupportedCharCodes(); + } + reverse( glyphid ) { + for ( let i = 0; i < this.numTables; i++ ) { + let code = this.getSubTable( i ).reverse( glyphid ); + if ( code ) return code; + } + } + getGlyphId( char ) { + let last = 0; + this.encodingRecords.some( ( _, tableID ) => { + let t = this.getSubTable( tableID ); + if ( ! t.getGlyphId ) return false; + last = t.getGlyphId( char ); + return last !== 0; + } ); + return last; + } + supports( char ) { + return this.encodingRecords.some( ( _, tableID ) => { + const t = this.getSubTable( tableID ); + return t.supports && t.supports( char ) !== false; + } ); + } + supportsVariation( variation ) { + return this.encodingRecords.some( ( _, tableID ) => { + const t = this.getSubTable( tableID ); + return ( + t.supportsVariation && + t.supportsVariation( variation ) !== false + ); + } ); + } +} +class EncodingRecord { + constructor( p, tableStart ) { + const platformID = ( this.platformID = p.uint16 ); + const encodingID = ( this.encodingID = p.uint16 ); + const offset = ( this.offset = p.Offset32 ); + lazy$1( this, `table`, () => { + p.currentPosition = tableStart + offset; + return createSubTable( p, platformID, encodingID ); + } ); + } +} +var cmap$1 = Object.freeze( { __proto__: null, cmap: cmap } ); +class head extends SimpleTable { + constructor( dict, dataview ) { + const { p: p } = super( dict, dataview ); + this.load( { + majorVersion: p.uint16, + minorVersion: p.uint16, + fontRevision: p.fixed, + checkSumAdjustment: p.uint32, + magicNumber: p.uint32, + flags: p.flags( 16 ), + unitsPerEm: p.uint16, + created: p.longdatetime, + modified: p.longdatetime, + xMin: p.int16, + yMin: p.int16, + xMax: p.int16, + yMax: p.int16, + macStyle: p.flags( 16 ), + lowestRecPPEM: p.uint16, + fontDirectionHint: p.uint16, + indexToLocFormat: p.uint16, + glyphDataFormat: p.uint16, + } ); + } +} +var head$1 = Object.freeze( { __proto__: null, head: head } ); +class hhea extends SimpleTable { + constructor( dict, dataview ) { + const { p: p } = super( dict, dataview ); + this.majorVersion = p.uint16; + this.minorVersion = p.uint16; + this.ascender = p.fword; + this.descender = p.fword; + this.lineGap = p.fword; + this.advanceWidthMax = p.ufword; + this.minLeftSideBearing = p.fword; + this.minRightSideBearing = p.fword; + this.xMaxExtent = p.fword; + this.caretSlopeRise = p.int16; + this.caretSlopeRun = p.int16; + this.caretOffset = p.int16; + p.int16; + p.int16; + p.int16; + p.int16; + this.metricDataFormat = p.int16; + this.numberOfHMetrics = p.uint16; + p.verifyLength(); + } +} +var hhea$1 = Object.freeze( { __proto__: null, hhea: hhea } ); +class hmtx extends SimpleTable { + constructor( dict, dataview, tables ) { + const { p: p } = super( dict, dataview ); + const numberOfHMetrics = tables.hhea.numberOfHMetrics; + const numGlyphs = tables.maxp.numGlyphs; + const metricsStart = p.currentPosition; + lazy$1( this, `hMetrics`, () => { + p.currentPosition = metricsStart; + return [ ...new Array( numberOfHMetrics ) ].map( + ( _ ) => new LongHorMetric( p.uint16, p.int16 ) + ); + } ); + if ( numberOfHMetrics < numGlyphs ) { + const lsbStart = metricsStart + numberOfHMetrics * 4; + lazy$1( this, `leftSideBearings`, () => { + p.currentPosition = lsbStart; + return [ ...new Array( numGlyphs - numberOfHMetrics ) ].map( + ( _ ) => p.int16 + ); + } ); + } + } +} +class LongHorMetric { + constructor( w, b ) { + this.advanceWidth = w; + this.lsb = b; + } +} +var hmtx$1 = Object.freeze( { __proto__: null, hmtx: hmtx } ); +class maxp extends SimpleTable { + constructor( dict, dataview ) { + const { p: p } = super( dict, dataview ); + this.version = p.legacyFixed; + this.numGlyphs = p.uint16; + if ( this.version === 1 ) { + this.maxPoints = p.uint16; + this.maxContours = p.uint16; + this.maxCompositePoints = p.uint16; + this.maxCompositeContours = p.uint16; + this.maxZones = p.uint16; + this.maxTwilightPoints = p.uint16; + this.maxStorage = p.uint16; + this.maxFunctionDefs = p.uint16; + this.maxInstructionDefs = p.uint16; + this.maxStackElements = p.uint16; + this.maxSizeOfInstructions = p.uint16; + this.maxComponentElements = p.uint16; + this.maxComponentDepth = p.uint16; + } + p.verifyLength(); + } +} +var maxp$1 = Object.freeze( { __proto__: null, maxp: maxp } ); +class name extends SimpleTable { + constructor( dict, dataview ) { + const { p: p } = super( dict, dataview ); + this.format = p.uint16; + this.count = p.uint16; + this.stringOffset = p.Offset16; + this.nameRecords = [ ...new Array( this.count ) ].map( + ( _ ) => new NameRecord( p, this ) + ); + if ( this.format === 1 ) { + this.langTagCount = p.uint16; + this.langTagRecords = [ ...new Array( this.langTagCount ) ].map( + ( _ ) => new LangTagRecord( p.uint16, p.Offset16 ) + ); + } + this.stringStart = this.tableStart + this.stringOffset; + } + get( nameID ) { + let record = this.nameRecords.find( + ( record ) => record.nameID === nameID + ); + if ( record ) return record.string; + } +} +class LangTagRecord { + constructor( length, offset ) { + this.length = length; + this.offset = offset; + } +} +class NameRecord { + constructor( p, nameTable ) { + this.platformID = p.uint16; + this.encodingID = p.uint16; + this.languageID = p.uint16; + this.nameID = p.uint16; + this.length = p.uint16; + this.offset = p.Offset16; + lazy$1( this, `string`, () => { + p.currentPosition = nameTable.stringStart + this.offset; + return decodeString( p, this ); + } ); + } +} +function decodeString( p, record ) { + const { platformID: platformID, length: length } = record; + if ( length === 0 ) return ``; + if ( platformID === 0 || platformID === 3 ) { + const str = []; + for ( let i = 0, e = length / 2; i < e; i++ ) + str[ i ] = String.fromCharCode( p.uint16 ); + return str.join( `` ); + } + const bytes = p.readBytes( length ); + const str = []; + bytes.forEach( function ( b, i ) { + str[ i ] = String.fromCharCode( b ); + } ); + return str.join( `` ); +} +var name$1 = Object.freeze( { __proto__: null, name: name } ); +class OS2 extends SimpleTable { + constructor( dict, dataview ) { + const { p: p } = super( dict, dataview ); + this.version = p.uint16; + this.xAvgCharWidth = p.int16; + this.usWeightClass = p.uint16; + this.usWidthClass = p.uint16; + this.fsType = p.uint16; + this.ySubscriptXSize = p.int16; + this.ySubscriptYSize = p.int16; + this.ySubscriptXOffset = p.int16; + this.ySubscriptYOffset = p.int16; + this.ySuperscriptXSize = p.int16; + this.ySuperscriptYSize = p.int16; + this.ySuperscriptXOffset = p.int16; + this.ySuperscriptYOffset = p.int16; + this.yStrikeoutSize = p.int16; + this.yStrikeoutPosition = p.int16; + this.sFamilyClass = p.int16; + this.panose = [ ...new Array( 10 ) ].map( ( _ ) => p.uint8 ); + this.ulUnicodeRange1 = p.flags( 32 ); + this.ulUnicodeRange2 = p.flags( 32 ); + this.ulUnicodeRange3 = p.flags( 32 ); + this.ulUnicodeRange4 = p.flags( 32 ); + this.achVendID = p.tag; + this.fsSelection = p.uint16; + this.usFirstCharIndex = p.uint16; + this.usLastCharIndex = p.uint16; + this.sTypoAscender = p.int16; + this.sTypoDescender = p.int16; + this.sTypoLineGap = p.int16; + this.usWinAscent = p.uint16; + this.usWinDescent = p.uint16; + if ( this.version === 0 ) return p.verifyLength(); + this.ulCodePageRange1 = p.flags( 32 ); + this.ulCodePageRange2 = p.flags( 32 ); + if ( this.version === 1 ) return p.verifyLength(); + this.sxHeight = p.int16; + this.sCapHeight = p.int16; + this.usDefaultChar = p.uint16; + this.usBreakChar = p.uint16; + this.usMaxContext = p.uint16; + if ( this.version <= 4 ) return p.verifyLength(); + this.usLowerOpticalPointSize = p.uint16; + this.usUpperOpticalPointSize = p.uint16; + if ( this.version === 5 ) return p.verifyLength(); + } +} +var OS2$1 = Object.freeze( { __proto__: null, OS2: OS2 } ); +class post extends SimpleTable { + constructor( dict, dataview ) { + const { p: p } = super( dict, dataview ); + this.version = p.legacyFixed; + this.italicAngle = p.fixed; + this.underlinePosition = p.fword; + this.underlineThickness = p.fword; + this.isFixedPitch = p.uint32; + this.minMemType42 = p.uint32; + this.maxMemType42 = p.uint32; + this.minMemType1 = p.uint32; + this.maxMemType1 = p.uint32; + if ( this.version === 1 || this.version === 3 ) return p.verifyLength(); + this.numGlyphs = p.uint16; + if ( this.version === 2 ) { + this.glyphNameIndex = [ ...new Array( this.numGlyphs ) ].map( + ( _ ) => p.uint16 + ); + this.namesOffset = p.currentPosition; + this.glyphNameOffsets = [ 1 ]; + for ( let i = 0; i < this.numGlyphs; i++ ) { + let index = this.glyphNameIndex[ i ]; + if ( index < macStrings.length ) { + this.glyphNameOffsets.push( this.glyphNameOffsets[ i ] ); + continue; + } + let bytelength = p.int8; + p.skip( bytelength ); + this.glyphNameOffsets.push( + this.glyphNameOffsets[ i ] + bytelength + 1 + ); + } + } + if ( this.version === 2.5 ) { + this.offset = [ ...new Array( this.numGlyphs ) ].map( + ( _ ) => p.int8 + ); + } + } + getGlyphName( glyphid ) { + if ( this.version !== 2 ) { + console.warn( + `post table version ${ this.version } does not support glyph name lookups` + ); + return ``; + } + let index = this.glyphNameIndex[ glyphid ]; + if ( index < 258 ) return macStrings[ index ]; + let offset = this.glyphNameOffsets[ glyphid ]; + let next = this.glyphNameOffsets[ glyphid + 1 ]; + let len = next - offset - 1; + if ( len === 0 ) return `.notdef.`; + this.parser.currentPosition = this.namesOffset + offset; + const data = this.parser.readBytes( + len, + this.namesOffset + offset, + 8, + true + ); + return data.map( ( b ) => String.fromCharCode( b ) ).join( `` ); + } +} +const macStrings = [ + `.notdef`, + `.null`, + `nonmarkingreturn`, + `space`, + `exclam`, + `quotedbl`, + `numbersign`, + `dollar`, + `percent`, + `ampersand`, + `quotesingle`, + `parenleft`, + `parenright`, + `asterisk`, + `plus`, + `comma`, + `hyphen`, + `period`, + `slash`, + `zero`, + `one`, + `two`, + `three`, + `four`, + `five`, + `six`, + `seven`, + `eight`, + `nine`, + `colon`, + `semicolon`, + `less`, + `equal`, + `greater`, + `question`, + `at`, + `A`, + `B`, + `C`, + `D`, + `E`, + `F`, + `G`, + `H`, + `I`, + `J`, + `K`, + `L`, + `M`, + `N`, + `O`, + `P`, + `Q`, + `R`, + `S`, + `T`, + `U`, + `V`, + `W`, + `X`, + `Y`, + `Z`, + `bracketleft`, + `backslash`, + `bracketright`, + `asciicircum`, + `underscore`, + `grave`, + `a`, + `b`, + `c`, + `d`, + `e`, + `f`, + `g`, + `h`, + `i`, + `j`, + `k`, + `l`, + `m`, + `n`, + `o`, + `p`, + `q`, + `r`, + `s`, + `t`, + `u`, + `v`, + `w`, + `x`, + `y`, + `z`, + `braceleft`, + `bar`, + `braceright`, + `asciitilde`, + `Adieresis`, + `Aring`, + `Ccedilla`, + `Eacute`, + `Ntilde`, + `Odieresis`, + `Udieresis`, + `aacute`, + `agrave`, + `acircumflex`, + `adieresis`, + `atilde`, + `aring`, + `ccedilla`, + `eacute`, + `egrave`, + `ecircumflex`, + `edieresis`, + `iacute`, + `igrave`, + `icircumflex`, + `idieresis`, + `ntilde`, + `oacute`, + `ograve`, + `ocircumflex`, + `odieresis`, + `otilde`, + `uacute`, + `ugrave`, + `ucircumflex`, + `udieresis`, + `dagger`, + `degree`, + `cent`, + `sterling`, + `section`, + `bullet`, + `paragraph`, + `germandbls`, + `registered`, + `copyright`, + `trademark`, + `acute`, + `dieresis`, + `notequal`, + `AE`, + `Oslash`, + `infinity`, + `plusminus`, + `lessequal`, + `greaterequal`, + `yen`, + `mu`, + `partialdiff`, + `summation`, + `product`, + `pi`, + `integral`, + `ordfeminine`, + `ordmasculine`, + `Omega`, + `ae`, + `oslash`, + `questiondown`, + `exclamdown`, + `logicalnot`, + `radical`, + `florin`, + `approxequal`, + `Delta`, + `guillemotleft`, + `guillemotright`, + `ellipsis`, + `nonbreakingspace`, + `Agrave`, + `Atilde`, + `Otilde`, + `OE`, + `oe`, + `endash`, + `emdash`, + `quotedblleft`, + `quotedblright`, + `quoteleft`, + `quoteright`, + `divide`, + `lozenge`, + `ydieresis`, + `Ydieresis`, + `fraction`, + `currency`, + `guilsinglleft`, + `guilsinglright`, + `fi`, + `fl`, + `daggerdbl`, + `periodcentered`, + `quotesinglbase`, + `quotedblbase`, + `perthousand`, + `Acircumflex`, + `Ecircumflex`, + `Aacute`, + `Edieresis`, + `Egrave`, + `Iacute`, + `Icircumflex`, + `Idieresis`, + `Igrave`, + `Oacute`, + `Ocircumflex`, + `apple`, + `Ograve`, + `Uacute`, + `Ucircumflex`, + `Ugrave`, + `dotlessi`, + `circumflex`, + `tilde`, + `macron`, + `breve`, + `dotaccent`, + `ring`, + `cedilla`, + `hungarumlaut`, + `ogonek`, + `caron`, + `Lslash`, + `lslash`, + `Scaron`, + `scaron`, + `Zcaron`, + `zcaron`, + `brokenbar`, + `Eth`, + `eth`, + `Yacute`, + `yacute`, + `Thorn`, + `thorn`, + `minus`, + `multiply`, + `onesuperior`, + `twosuperior`, + `threesuperior`, + `onehalf`, + `onequarter`, + `threequarters`, + `franc`, + `Gbreve`, + `gbreve`, + `Idotaccent`, + `Scedilla`, + `scedilla`, + `Cacute`, + `cacute`, + `Ccaron`, + `ccaron`, + `dcroat`, +]; +var post$1 = Object.freeze( { __proto__: null, post: post } ); +class BASE extends SimpleTable { + constructor( dict, dataview ) { + const { p: p } = super( dict, dataview ); + this.majorVersion = p.uint16; + this.minorVersion = p.uint16; + this.horizAxisOffset = p.Offset16; + this.vertAxisOffset = p.Offset16; + lazy$1( + this, + `horizAxis`, + () => + new AxisTable( + { offset: dict.offset + this.horizAxisOffset }, + dataview + ) + ); + lazy$1( + this, + `vertAxis`, + () => + new AxisTable( + { offset: dict.offset + this.vertAxisOffset }, + dataview + ) + ); + if ( this.majorVersion === 1 && this.minorVersion === 1 ) { + this.itemVarStoreOffset = p.Offset32; + lazy$1( + this, + `itemVarStore`, + () => + new AxisTable( + { offset: dict.offset + this.itemVarStoreOffset }, + dataview + ) + ); + } + } +} +class AxisTable extends SimpleTable { + constructor( dict, dataview ) { + const { p: p } = super( dict, dataview, `AxisTable` ); + this.baseTagListOffset = p.Offset16; + this.baseScriptListOffset = p.Offset16; + lazy$1( + this, + `baseTagList`, + () => + new BaseTagListTable( + { offset: dict.offset + this.baseTagListOffset }, + dataview + ) + ); + lazy$1( + this, + `baseScriptList`, + () => + new BaseScriptListTable( + { offset: dict.offset + this.baseScriptListOffset }, + dataview + ) + ); + } +} +class BaseTagListTable extends SimpleTable { + constructor( dict, dataview ) { + const { p: p } = super( dict, dataview, `BaseTagListTable` ); + this.baseTagCount = p.uint16; + this.baselineTags = [ ...new Array( this.baseTagCount ) ].map( + ( _ ) => p.tag + ); + } +} +class BaseScriptListTable extends SimpleTable { + constructor( dict, dataview ) { + const { p: p } = super( dict, dataview, `BaseScriptListTable` ); + this.baseScriptCount = p.uint16; + const recordStart = p.currentPosition; + lazy$1( this, `baseScriptRecords`, () => { + p.currentPosition = recordStart; + return [ ...new Array( this.baseScriptCount ) ].map( + ( _ ) => new BaseScriptRecord( this.start, p ) + ); + } ); + } +} +class BaseScriptRecord { + constructor( baseScriptListTableStart, p ) { + this.baseScriptTag = p.tag; + this.baseScriptOffset = p.Offset16; + lazy$1( this, `baseScriptTable`, () => { + p.currentPosition = + baseScriptListTableStart + this.baseScriptOffset; + return new BaseScriptTable( p ); + } ); + } +} +class BaseScriptTable { + constructor( p ) { + this.start = p.currentPosition; + this.baseValuesOffset = p.Offset16; + this.defaultMinMaxOffset = p.Offset16; + this.baseLangSysCount = p.uint16; + this.baseLangSysRecords = [ ...new Array( this.baseLangSysCount ) ].map( + ( _ ) => new BaseLangSysRecord( this.start, p ) + ); + lazy$1( this, `baseValues`, () => { + p.currentPosition = this.start + this.baseValuesOffset; + return new BaseValuesTable( p ); + } ); + lazy$1( this, `defaultMinMax`, () => { + p.currentPosition = this.start + this.defaultMinMaxOffset; + return new MinMaxTable( p ); + } ); + } +} +class BaseLangSysRecord { + constructor( baseScriptTableStart, p ) { + this.baseLangSysTag = p.tag; + this.minMaxOffset = p.Offset16; + lazy$1( this, `minMax`, () => { + p.currentPosition = baseScriptTableStart + this.minMaxOffset; + return new MinMaxTable( p ); + } ); + } +} +class BaseValuesTable { + constructor( p ) { + this.parser = p; + this.start = p.currentPosition; + this.defaultBaselineIndex = p.uint16; + this.baseCoordCount = p.uint16; + this.baseCoords = [ ...new Array( this.baseCoordCount ) ].map( + ( _ ) => p.Offset16 + ); + } + getTable( id ) { + this.parser.currentPosition = this.start + this.baseCoords[ id ]; + return new BaseCoordTable( this.parser ); + } +} +class MinMaxTable { + constructor( p ) { + this.minCoord = p.Offset16; + this.maxCoord = p.Offset16; + this.featMinMaxCount = p.uint16; + const recordStart = p.currentPosition; + lazy$1( this, `featMinMaxRecords`, () => { + p.currentPosition = recordStart; + return [ ...new Array( this.featMinMaxCount ) ].map( + ( _ ) => new FeatMinMaxRecord( p ) + ); + } ); + } +} +class FeatMinMaxRecord { + constructor( p ) { + this.featureTableTag = p.tag; + this.minCoord = p.Offset16; + this.maxCoord = p.Offset16; + } +} +class BaseCoordTable { + constructor( p ) { + this.baseCoordFormat = p.uint16; + this.coordinate = p.int16; + if ( this.baseCoordFormat === 2 ) { + this.referenceGlyph = p.uint16; + this.baseCoordPoint = p.uint16; + } + if ( this.baseCoordFormat === 3 ) { + this.deviceTable = p.Offset16; + } + } +} +var BASE$1 = Object.freeze( { __proto__: null, BASE: BASE } ); +class ClassDefinition { + constructor( p ) { + this.classFormat = p.uint16; + if ( this.classFormat === 1 ) { + this.startGlyphID = p.uint16; + this.glyphCount = p.uint16; + this.classValueArray = [ ...new Array( this.glyphCount ) ].map( + ( _ ) => p.uint16 + ); + } + if ( this.classFormat === 2 ) { + this.classRangeCount = p.uint16; + this.classRangeRecords = [ + ...new Array( this.classRangeCount ), + ].map( ( _ ) => new ClassRangeRecord( p ) ); + } + } +} +class ClassRangeRecord { + constructor( p ) { + this.startGlyphID = p.uint16; + this.endGlyphID = p.uint16; + this.class = p.uint16; + } +} +class CoverageTable extends ParsedData { + constructor( p ) { + super( p ); + this.coverageFormat = p.uint16; + if ( this.coverageFormat === 1 ) { + this.glyphCount = p.uint16; + this.glyphArray = [ ...new Array( this.glyphCount ) ].map( + ( _ ) => p.uint16 + ); + } + if ( this.coverageFormat === 2 ) { + this.rangeCount = p.uint16; + this.rangeRecords = [ ...new Array( this.rangeCount ) ].map( + ( _ ) => new CoverageRangeRecord( p ) + ); + } + } +} +class CoverageRangeRecord { + constructor( p ) { + this.startGlyphID = p.uint16; + this.endGlyphID = p.uint16; + this.startCoverageIndex = p.uint16; + } +} +class ItemVariationStoreTable { + constructor( table, p ) { + this.table = table; + this.parser = p; + this.start = p.currentPosition; + this.format = p.uint16; + this.variationRegionListOffset = p.Offset32; + this.itemVariationDataCount = p.uint16; + this.itemVariationDataOffsets = [ + ...new Array( this.itemVariationDataCount ), + ].map( ( _ ) => p.Offset32 ); + } +} +class GDEF extends SimpleTable { + constructor( dict, dataview ) { + const { p: p } = super( dict, dataview ); + this.majorVersion = p.uint16; + this.minorVersion = p.uint16; + this.glyphClassDefOffset = p.Offset16; + lazy$1( this, `glyphClassDefs`, () => { + if ( this.glyphClassDefOffset === 0 ) return undefined; + p.currentPosition = this.tableStart + this.glyphClassDefOffset; + return new ClassDefinition( p ); + } ); + this.attachListOffset = p.Offset16; + lazy$1( this, `attachList`, () => { + if ( this.attachListOffset === 0 ) return undefined; + p.currentPosition = this.tableStart + this.attachListOffset; + return new AttachList( p ); + } ); + this.ligCaretListOffset = p.Offset16; + lazy$1( this, `ligCaretList`, () => { + if ( this.ligCaretListOffset === 0 ) return undefined; + p.currentPosition = this.tableStart + this.ligCaretListOffset; + return new LigCaretList( p ); + } ); + this.markAttachClassDefOffset = p.Offset16; + lazy$1( this, `markAttachClassDef`, () => { + if ( this.markAttachClassDefOffset === 0 ) return undefined; + p.currentPosition = this.tableStart + this.markAttachClassDefOffset; + return new ClassDefinition( p ); + } ); + if ( this.minorVersion >= 2 ) { + this.markGlyphSetsDefOffset = p.Offset16; + lazy$1( this, `markGlyphSetsDef`, () => { + if ( this.markGlyphSetsDefOffset === 0 ) return undefined; + p.currentPosition = + this.tableStart + this.markGlyphSetsDefOffset; + return new MarkGlyphSetsTable( p ); + } ); + } + if ( this.minorVersion === 3 ) { + this.itemVarStoreOffset = p.Offset32; + lazy$1( this, `itemVarStore`, () => { + if ( this.itemVarStoreOffset === 0 ) return undefined; + p.currentPosition = this.tableStart + this.itemVarStoreOffset; + return new ItemVariationStoreTable( p ); + } ); + } + } +} +class AttachList extends ParsedData { + constructor( p ) { + super( p ); + this.coverageOffset = p.Offset16; + this.glyphCount = p.uint16; + this.attachPointOffsets = [ ...new Array( this.glyphCount ) ].map( + ( _ ) => p.Offset16 + ); + } + getPoint( pointID ) { + this.parser.currentPosition = + this.start + this.attachPointOffsets[ pointID ]; + return new AttachPoint( this.parser ); + } +} +class AttachPoint { + constructor( p ) { + this.pointCount = p.uint16; + this.pointIndices = [ ...new Array( this.pointCount ) ].map( + ( _ ) => p.uint16 + ); + } +} +class LigCaretList extends ParsedData { + constructor( p ) { + super( p ); + this.coverageOffset = p.Offset16; + lazy$1( this, `coverage`, () => { + p.currentPosition = this.start + this.coverageOffset; + return new CoverageTable( p ); + } ); + this.ligGlyphCount = p.uint16; + this.ligGlyphOffsets = [ ...new Array( this.ligGlyphCount ) ].map( + ( _ ) => p.Offset16 + ); + } + getLigGlyph( ligGlyphID ) { + this.parser.currentPosition = + this.start + this.ligGlyphOffsets[ ligGlyphID ]; + return new LigGlyph( this.parser ); + } +} +class LigGlyph extends ParsedData { + constructor( p ) { + super( p ); + this.caretCount = p.uint16; + this.caretValueOffsets = [ ...new Array( this.caretCount ) ].map( + ( _ ) => p.Offset16 + ); + } + getCaretValue( caretID ) { + this.parser.currentPosition = + this.start + this.caretValueOffsets[ caretID ]; + return new CaretValue( this.parser ); + } +} +class CaretValue { + constructor( p ) { + this.caretValueFormat = p.uint16; + if ( this.caretValueFormat === 1 ) { + this.coordinate = p.int16; + } + if ( this.caretValueFormat === 2 ) { + this.caretValuePointIndex = p.uint16; + } + if ( this.caretValueFormat === 3 ) { + this.coordinate = p.int16; + this.deviceOffset = p.Offset16; + } + } +} +class MarkGlyphSetsTable extends ParsedData { + constructor( p ) { + super( p ); + this.markGlyphSetTableFormat = p.uint16; + this.markGlyphSetCount = p.uint16; + this.coverageOffsets = [ ...new Array( this.markGlyphSetCount ) ].map( + ( _ ) => p.Offset32 + ); + } + getMarkGlyphSet( markGlyphSetID ) { + this.parser.currentPosition = + this.start + this.coverageOffsets[ markGlyphSetID ]; + return new CoverageTable( this.parser ); + } +} +var GDEF$1 = Object.freeze( { __proto__: null, GDEF: GDEF } ); +class ScriptList extends ParsedData { + static EMPTY = { scriptCount: 0, scriptRecords: [] }; + constructor( p ) { + super( p ); + this.scriptCount = p.uint16; + this.scriptRecords = [ ...new Array( this.scriptCount ) ].map( + ( _ ) => new ScriptRecord( p ) + ); + } +} +class ScriptRecord { + constructor( p ) { + this.scriptTag = p.tag; + this.scriptOffset = p.Offset16; + } +} +class ScriptTable extends ParsedData { + constructor( p ) { + super( p ); + this.defaultLangSys = p.Offset16; + this.langSysCount = p.uint16; + this.langSysRecords = [ ...new Array( this.langSysCount ) ].map( + ( _ ) => new LangSysRecord( p ) + ); + } +} +class LangSysRecord { + constructor( p ) { + this.langSysTag = p.tag; + this.langSysOffset = p.Offset16; + } +} +class LangSysTable { + constructor( p ) { + this.lookupOrder = p.Offset16; + this.requiredFeatureIndex = p.uint16; + this.featureIndexCount = p.uint16; + this.featureIndices = [ ...new Array( this.featureIndexCount ) ].map( + ( _ ) => p.uint16 + ); + } +} +class FeatureList extends ParsedData { + static EMPTY = { featureCount: 0, featureRecords: [] }; + constructor( p ) { + super( p ); + this.featureCount = p.uint16; + this.featureRecords = [ ...new Array( this.featureCount ) ].map( + ( _ ) => new FeatureRecord( p ) + ); + } +} +class FeatureRecord { + constructor( p ) { + this.featureTag = p.tag; + this.featureOffset = p.Offset16; + } +} +class FeatureTable extends ParsedData { + constructor( p ) { + super( p ); + this.featureParams = p.Offset16; + this.lookupIndexCount = p.uint16; + this.lookupListIndices = [ ...new Array( this.lookupIndexCount ) ].map( + ( _ ) => p.uint16 + ); + } + getFeatureParams() { + if ( this.featureParams > 0 ) { + const p = this.parser; + p.currentPosition = this.start + this.featureParams; + const tag = this.featureTag; + if ( tag === `size` ) return new Size( p ); + if ( tag.startsWith( `cc` ) ) return new CharacterVariant( p ); + if ( tag.startsWith( `ss` ) ) return new StylisticSet( p ); + } + } +} +class CharacterVariant { + constructor( p ) { + this.format = p.uint16; + this.featUiLabelNameId = p.uint16; + this.featUiTooltipTextNameId = p.uint16; + this.sampleTextNameId = p.uint16; + this.numNamedParameters = p.uint16; + this.firstParamUiLabelNameId = p.uint16; + this.charCount = p.uint16; + this.character = [ ...new Array( this.charCount ) ].map( + ( _ ) => p.uint24 + ); + } +} +class Size { + constructor( p ) { + this.designSize = p.uint16; + this.subfamilyIdentifier = p.uint16; + this.subfamilyNameID = p.uint16; + this.smallEnd = p.uint16; + this.largeEnd = p.uint16; + } +} +class StylisticSet { + constructor( p ) { + this.version = p.uint16; + this.UINameID = p.uint16; + } +} +function undoCoverageOffsetParsing( instance ) { + instance.parser.currentPosition -= 2; + delete instance.coverageOffset; + delete instance.getCoverageTable; +} +class LookupType$1 extends ParsedData { + constructor( p ) { + super( p ); + this.substFormat = p.uint16; + this.coverageOffset = p.Offset16; + } + getCoverageTable() { + let p = this.parser; + p.currentPosition = this.start + this.coverageOffset; + return new CoverageTable( p ); + } +} +class SubstLookupRecord { + constructor( p ) { + this.glyphSequenceIndex = p.uint16; + this.lookupListIndex = p.uint16; + } +} +class LookupType1$1 extends LookupType$1 { + constructor( p ) { + super( p ); + this.deltaGlyphID = p.int16; + } +} +class LookupType2$1 extends LookupType$1 { + constructor( p ) { + super( p ); + this.sequenceCount = p.uint16; + this.sequenceOffsets = [ ...new Array( this.sequenceCount ) ].map( + ( _ ) => p.Offset16 + ); + } + getSequence( index ) { + let p = this.parser; + p.currentPosition = this.start + this.sequenceOffsets[ index ]; + return new SequenceTable( p ); + } +} +class SequenceTable { + constructor( p ) { + this.glyphCount = p.uint16; + this.substituteGlyphIDs = [ ...new Array( this.glyphCount ) ].map( + ( _ ) => p.uint16 + ); + } +} +class LookupType3$1 extends LookupType$1 { + constructor( p ) { + super( p ); + this.alternateSetCount = p.uint16; + this.alternateSetOffsets = [ + ...new Array( this.alternateSetCount ), + ].map( ( _ ) => p.Offset16 ); + } + getAlternateSet( index ) { + let p = this.parser; + p.currentPosition = this.start + this.alternateSetOffsets[ index ]; + return new AlternateSetTable( p ); + } +} +class AlternateSetTable { + constructor( p ) { + this.glyphCount = p.uint16; + this.alternateGlyphIDs = [ ...new Array( this.glyphCount ) ].map( + ( _ ) => p.uint16 + ); + } +} +class LookupType4$1 extends LookupType$1 { + constructor( p ) { + super( p ); + this.ligatureSetCount = p.uint16; + this.ligatureSetOffsets = [ ...new Array( this.ligatureSetCount ) ].map( + ( _ ) => p.Offset16 + ); + } + getLigatureSet( index ) { + let p = this.parser; + p.currentPosition = this.start + this.ligatureSetOffsets[ index ]; + return new LigatureSetTable( p ); + } +} +class LigatureSetTable extends ParsedData { + constructor( p ) { + super( p ); + this.ligatureCount = p.uint16; + this.ligatureOffsets = [ ...new Array( this.ligatureCount ) ].map( + ( _ ) => p.Offset16 + ); + } + getLigature( index ) { + let p = this.parser; + p.currentPosition = this.start + this.ligatureOffsets[ index ]; + return new LigatureTable( p ); + } +} +class LigatureTable { + constructor( p ) { + this.ligatureGlyph = p.uint16; + this.componentCount = p.uint16; + this.componentGlyphIDs = [ + ...new Array( this.componentCount - 1 ), + ].map( ( _ ) => p.uint16 ); + } +} +class LookupType5$1 extends LookupType$1 { + constructor( p ) { + super( p ); + if ( this.substFormat === 1 ) { + this.subRuleSetCount = p.uint16; + this.subRuleSetOffsets = [ + ...new Array( this.subRuleSetCount ), + ].map( ( _ ) => p.Offset16 ); + } + if ( this.substFormat === 2 ) { + this.classDefOffset = p.Offset16; + this.subClassSetCount = p.uint16; + this.subClassSetOffsets = [ + ...new Array( this.subClassSetCount ), + ].map( ( _ ) => p.Offset16 ); + } + if ( this.substFormat === 3 ) { + undoCoverageOffsetParsing( this ); + this.glyphCount = p.uint16; + this.substitutionCount = p.uint16; + this.coverageOffsets = [ ...new Array( this.glyphCount ) ].map( + ( _ ) => p.Offset16 + ); + this.substLookupRecords = [ + ...new Array( this.substitutionCount ), + ].map( ( _ ) => new SubstLookupRecord( p ) ); + } + } + getSubRuleSet( index ) { + if ( this.substFormat !== 1 ) + throw new Error( + `lookup type 5.${ this.substFormat } has no subrule sets.` + ); + let p = this.parser; + p.currentPosition = this.start + this.subRuleSetOffsets[ index ]; + return new SubRuleSetTable( p ); + } + getSubClassSet( index ) { + if ( this.substFormat !== 2 ) + throw new Error( + `lookup type 5.${ this.substFormat } has no subclass sets.` + ); + let p = this.parser; + p.currentPosition = this.start + this.subClassSetOffsets[ index ]; + return new SubClassSetTable( p ); + } + getCoverageTable( index ) { + if ( this.substFormat !== 3 && ! index ) + return super.getCoverageTable(); + if ( ! index ) + throw new Error( + `lookup type 5.${ this.substFormat } requires an coverage table index.` + ); + let p = this.parser; + p.currentPosition = this.start + this.coverageOffsets[ index ]; + return new CoverageTable( p ); + } +} +class SubRuleSetTable extends ParsedData { + constructor( p ) { + super( p ); + this.subRuleCount = p.uint16; + this.subRuleOffsets = [ ...new Array( this.subRuleCount ) ].map( + ( _ ) => p.Offset16 + ); + } + getSubRule( index ) { + let p = this.parser; + p.currentPosition = this.start + this.subRuleOffsets[ index ]; + return new SubRuleTable( p ); + } +} +class SubRuleTable { + constructor( p ) { + this.glyphCount = p.uint16; + this.substitutionCount = p.uint16; + this.inputSequence = [ ...new Array( this.glyphCount - 1 ) ].map( + ( _ ) => p.uint16 + ); + this.substLookupRecords = [ + ...new Array( this.substitutionCount ), + ].map( ( _ ) => new SubstLookupRecord( p ) ); + } +} +class SubClassSetTable extends ParsedData { + constructor( p ) { + super( p ); + this.subClassRuleCount = p.uint16; + this.subClassRuleOffsets = [ + ...new Array( this.subClassRuleCount ), + ].map( ( _ ) => p.Offset16 ); + } + getSubClass( index ) { + let p = this.parser; + p.currentPosition = this.start + this.subClassRuleOffsets[ index ]; + return new SubClassRuleTable( p ); + } +} +class SubClassRuleTable extends SubRuleTable { + constructor( p ) { + super( p ); + } +} +class LookupType6$1 extends LookupType$1 { + constructor( p ) { + super( p ); + if ( this.substFormat === 1 ) { + this.chainSubRuleSetCount = p.uint16; + this.chainSubRuleSetOffsets = [ + ...new Array( this.chainSubRuleSetCount ), + ].map( ( _ ) => p.Offset16 ); + } + if ( this.substFormat === 2 ) { + this.backtrackClassDefOffset = p.Offset16; + this.inputClassDefOffset = p.Offset16; + this.lookaheadClassDefOffset = p.Offset16; + this.chainSubClassSetCount = p.uint16; + this.chainSubClassSetOffsets = [ + ...new Array( this.chainSubClassSetCount ), + ].map( ( _ ) => p.Offset16 ); + } + if ( this.substFormat === 3 ) { + undoCoverageOffsetParsing( this ); + this.backtrackGlyphCount = p.uint16; + this.backtrackCoverageOffsets = [ + ...new Array( this.backtrackGlyphCount ), + ].map( ( _ ) => p.Offset16 ); + this.inputGlyphCount = p.uint16; + this.inputCoverageOffsets = [ + ...new Array( this.inputGlyphCount ), + ].map( ( _ ) => p.Offset16 ); + this.lookaheadGlyphCount = p.uint16; + this.lookaheadCoverageOffsets = [ + ...new Array( this.lookaheadGlyphCount ), + ].map( ( _ ) => p.Offset16 ); + this.seqLookupCount = p.uint16; + this.seqLookupRecords = [ + ...new Array( this.substitutionCount ), + ].map( ( _ ) => new SequenceLookupRecord( p ) ); + } + } + getChainSubRuleSet( index ) { + if ( this.substFormat !== 1 ) + throw new Error( + `lookup type 6.${ this.substFormat } has no chainsubrule sets.` + ); + let p = this.parser; + p.currentPosition = this.start + this.chainSubRuleSetOffsets[ index ]; + return new ChainSubRuleSetTable( p ); + } + getChainSubClassSet( index ) { + if ( this.substFormat !== 2 ) + throw new Error( + `lookup type 6.${ this.substFormat } has no chainsubclass sets.` + ); + let p = this.parser; + p.currentPosition = this.start + this.chainSubClassSetOffsets[ index ]; + return new ChainSubClassSetTable( p ); + } + getCoverageFromOffset( offset ) { + if ( this.substFormat !== 3 ) + throw new Error( + `lookup type 6.${ this.substFormat } does not use contextual coverage offsets.` + ); + let p = this.parser; + p.currentPosition = this.start + offset; + return new CoverageTable( p ); + } +} +class ChainSubRuleSetTable extends ParsedData { + constructor( p ) { + super( p ); + this.chainSubRuleCount = p.uint16; + this.chainSubRuleOffsets = [ + ...new Array( this.chainSubRuleCount ), + ].map( ( _ ) => p.Offset16 ); + } + getSubRule( index ) { + let p = this.parser; + p.currentPosition = this.start + this.chainSubRuleOffsets[ index ]; + return new ChainSubRuleTable( p ); + } +} +class ChainSubRuleTable { + constructor( p ) { + this.backtrackGlyphCount = p.uint16; + this.backtrackSequence = [ + ...new Array( this.backtrackGlyphCount ), + ].map( ( _ ) => p.uint16 ); + this.inputGlyphCount = p.uint16; + this.inputSequence = [ ...new Array( this.inputGlyphCount - 1 ) ].map( + ( _ ) => p.uint16 + ); + this.lookaheadGlyphCount = p.uint16; + this.lookAheadSequence = [ + ...new Array( this.lookAheadGlyphCount ), + ].map( ( _ ) => p.uint16 ); + this.substitutionCount = p.uint16; + this.substLookupRecords = [ ...new Array( this.SubstCount ) ].map( + ( _ ) => new SubstLookupRecord( p ) + ); + } +} +class ChainSubClassSetTable extends ParsedData { + constructor( p ) { + super( p ); + this.chainSubClassRuleCount = p.uint16; + this.chainSubClassRuleOffsets = [ + ...new Array( this.chainSubClassRuleCount ), + ].map( ( _ ) => p.Offset16 ); + } + getSubClass( index ) { + let p = this.parser; + p.currentPosition = this.start + this.chainSubRuleOffsets[ index ]; + return new ChainSubClassRuleTable( p ); + } +} +class ChainSubClassRuleTable { + constructor( p ) { + this.backtrackGlyphCount = p.uint16; + this.backtrackSequence = [ + ...new Array( this.backtrackGlyphCount ), + ].map( ( _ ) => p.uint16 ); + this.inputGlyphCount = p.uint16; + this.inputSequence = [ ...new Array( this.inputGlyphCount - 1 ) ].map( + ( _ ) => p.uint16 + ); + this.lookaheadGlyphCount = p.uint16; + this.lookAheadSequence = [ + ...new Array( this.lookAheadGlyphCount ), + ].map( ( _ ) => p.uint16 ); + this.substitutionCount = p.uint16; + this.substLookupRecords = [ + ...new Array( this.substitutionCount ), + ].map( ( _ ) => new SequenceLookupRecord( p ) ); + } +} +class SequenceLookupRecord extends ParsedData { + constructor( p ) { + super( p ); + this.sequenceIndex = p.uint16; + this.lookupListIndex = p.uint16; + } +} +class LookupType7$1 extends ParsedData { + constructor( p ) { + super( p ); + this.substFormat = p.uint16; + this.extensionLookupType = p.uint16; + this.extensionOffset = p.Offset32; + } +} +class LookupType8$1 extends LookupType$1 { + constructor( p ) { + super( p ); + this.backtrackGlyphCount = p.uint16; + this.backtrackCoverageOffsets = [ + ...new Array( this.backtrackGlyphCount ), + ].map( ( _ ) => p.Offset16 ); + this.lookaheadGlyphCount = p.uint16; + this.lookaheadCoverageOffsets = [ + new Array( this.lookaheadGlyphCount ), + ].map( ( _ ) => p.Offset16 ); + this.glyphCount = p.uint16; + this.substituteGlyphIDs = [ ...new Array( this.glyphCount ) ].map( + ( _ ) => p.uint16 + ); + } +} +var GSUBtables = { + buildSubtable: function ( type, p ) { + const subtable = new [ + undefined, + LookupType1$1, + LookupType2$1, + LookupType3$1, + LookupType4$1, + LookupType5$1, + LookupType6$1, + LookupType7$1, + LookupType8$1, + ][ type ]( p ); + subtable.type = type; + return subtable; + }, +}; +class LookupType extends ParsedData { + constructor( p ) { + super( p ); + } +} +class LookupType1 extends LookupType { + constructor( p ) { + super( p ); + console.log( `lookup type 1` ); + } +} +class LookupType2 extends LookupType { + constructor( p ) { + super( p ); + console.log( `lookup type 2` ); + } +} +class LookupType3 extends LookupType { + constructor( p ) { + super( p ); + console.log( `lookup type 3` ); + } +} +class LookupType4 extends LookupType { + constructor( p ) { + super( p ); + console.log( `lookup type 4` ); + } +} +class LookupType5 extends LookupType { + constructor( p ) { + super( p ); + console.log( `lookup type 5` ); + } +} +class LookupType6 extends LookupType { + constructor( p ) { + super( p ); + console.log( `lookup type 6` ); + } +} +class LookupType7 extends LookupType { + constructor( p ) { + super( p ); + console.log( `lookup type 7` ); + } +} +class LookupType8 extends LookupType { + constructor( p ) { + super( p ); + console.log( `lookup type 8` ); + } +} +class LookupType9 extends LookupType { + constructor( p ) { + super( p ); + console.log( `lookup type 9` ); + } +} +var GPOStables = { + buildSubtable: function ( type, p ) { + const subtable = new [ + undefined, + LookupType1, + LookupType2, + LookupType3, + LookupType4, + LookupType5, + LookupType6, + LookupType7, + LookupType8, + LookupType9, + ][ type ]( p ); + subtable.type = type; + return subtable; + }, +}; +class LookupList extends ParsedData { + static EMPTY = { lookupCount: 0, lookups: [] }; + constructor( p ) { + super( p ); + this.lookupCount = p.uint16; + this.lookups = [ ...new Array( this.lookupCount ) ].map( + ( _ ) => p.Offset16 + ); + } +} +class LookupTable extends ParsedData { + constructor( p, type ) { + super( p ); + this.ctType = type; + this.lookupType = p.uint16; + this.lookupFlag = p.uint16; + this.subTableCount = p.uint16; + this.subtableOffsets = [ ...new Array( this.subTableCount ) ].map( + ( _ ) => p.Offset16 + ); + this.markFilteringSet = p.uint16; + } + get rightToLeft() { + return this.lookupFlag & ( 1 === 1 ); + } + get ignoreBaseGlyphs() { + return this.lookupFlag & ( 2 === 2 ); + } + get ignoreLigatures() { + return this.lookupFlag & ( 4 === 4 ); + } + get ignoreMarks() { + return this.lookupFlag & ( 8 === 8 ); + } + get useMarkFilteringSet() { + return this.lookupFlag & ( 16 === 16 ); + } + get markAttachmentType() { + return this.lookupFlag & ( 65280 === 65280 ); + } + getSubTable( index ) { + const builder = this.ctType === `GSUB` ? GSUBtables : GPOStables; + this.parser.currentPosition = + this.start + this.subtableOffsets[ index ]; + return builder.buildSubtable( this.lookupType, this.parser ); + } +} +class CommonLayoutTable extends SimpleTable { + constructor( dict, dataview, name ) { + const { p: p, tableStart: tableStart } = super( dict, dataview, name ); + this.majorVersion = p.uint16; + this.minorVersion = p.uint16; + this.scriptListOffset = p.Offset16; + this.featureListOffset = p.Offset16; + this.lookupListOffset = p.Offset16; + if ( this.majorVersion === 1 && this.minorVersion === 1 ) { + this.featureVariationsOffset = p.Offset32; + } + const no_content = ! ( + this.scriptListOffset || + this.featureListOffset || + this.lookupListOffset + ); + lazy$1( this, `scriptList`, () => { + if ( no_content ) return ScriptList.EMPTY; + p.currentPosition = tableStart + this.scriptListOffset; + return new ScriptList( p ); + } ); + lazy$1( this, `featureList`, () => { + if ( no_content ) return FeatureList.EMPTY; + p.currentPosition = tableStart + this.featureListOffset; + return new FeatureList( p ); + } ); + lazy$1( this, `lookupList`, () => { + if ( no_content ) return LookupList.EMPTY; + p.currentPosition = tableStart + this.lookupListOffset; + return new LookupList( p ); + } ); + if ( this.featureVariationsOffset ) { + lazy$1( this, `featureVariations`, () => { + if ( no_content ) return FeatureVariations.EMPTY; + p.currentPosition = tableStart + this.featureVariationsOffset; + return new FeatureVariations( p ); + } ); + } + } + getSupportedScripts() { + return this.scriptList.scriptRecords.map( ( r ) => r.scriptTag ); + } + getScriptTable( scriptTag ) { + let record = this.scriptList.scriptRecords.find( + ( r ) => r.scriptTag === scriptTag + ); + this.parser.currentPosition = + this.scriptList.start + record.scriptOffset; + let table = new ScriptTable( this.parser ); + table.scriptTag = scriptTag; + return table; + } + ensureScriptTable( arg ) { + if ( typeof arg === 'string' ) { + return this.getScriptTable( arg ); + } + return arg; + } + getSupportedLangSys( scriptTable ) { + scriptTable = this.ensureScriptTable( scriptTable ); + const hasDefault = scriptTable.defaultLangSys !== 0; + const supported = scriptTable.langSysRecords.map( + ( l ) => l.langSysTag + ); + if ( hasDefault ) supported.unshift( `dflt` ); + return supported; + } + getDefaultLangSysTable( scriptTable ) { + scriptTable = this.ensureScriptTable( scriptTable ); + let offset = scriptTable.defaultLangSys; + if ( offset !== 0 ) { + this.parser.currentPosition = scriptTable.start + offset; + let table = new LangSysTable( this.parser ); + table.langSysTag = ``; + table.defaultForScript = scriptTable.scriptTag; + return table; + } + } + getLangSysTable( scriptTable, langSysTag = `dflt` ) { + if ( langSysTag === `dflt` ) + return this.getDefaultLangSysTable( scriptTable ); + scriptTable = this.ensureScriptTable( scriptTable ); + let record = scriptTable.langSysRecords.find( + ( l ) => l.langSysTag === langSysTag + ); + this.parser.currentPosition = scriptTable.start + record.langSysOffset; + let table = new LangSysTable( this.parser ); + table.langSysTag = langSysTag; + return table; + } + getFeatures( langSysTable ) { + return langSysTable.featureIndices.map( ( index ) => + this.getFeature( index ) + ); + } + getFeature( indexOrTag ) { + let record; + if ( parseInt( indexOrTag ) == indexOrTag ) { + record = this.featureList.featureRecords[ indexOrTag ]; + } else { + record = this.featureList.featureRecords.find( + ( f ) => f.featureTag === indexOrTag + ); + } + if ( ! record ) return; + this.parser.currentPosition = + this.featureList.start + record.featureOffset; + let table = new FeatureTable( this.parser ); + table.featureTag = record.featureTag; + return table; + } + getLookups( featureTable ) { + return featureTable.lookupListIndices.map( ( index ) => + this.getLookup( index ) + ); + } + getLookup( lookupIndex, type ) { + let lookupOffset = this.lookupList.lookups[ lookupIndex ]; + this.parser.currentPosition = this.lookupList.start + lookupOffset; + return new LookupTable( this.parser, type ); + } +} +class GSUB extends CommonLayoutTable { + constructor( dict, dataview ) { + super( dict, dataview, `GSUB` ); + } + getLookup( lookupIndex ) { + return super.getLookup( lookupIndex, `GSUB` ); + } +} +var GSUB$1 = Object.freeze( { __proto__: null, GSUB: GSUB } ); +class GPOS extends CommonLayoutTable { + constructor( dict, dataview ) { + super( dict, dataview, `GPOS` ); + } + getLookup( lookupIndex ) { + return super.getLookup( lookupIndex, `GPOS` ); + } +} +var GPOS$1 = Object.freeze( { __proto__: null, GPOS: GPOS } ); +class SVG extends SimpleTable { + constructor( dict, dataview ) { + const { p: p } = super( dict, dataview ); + this.version = p.uint16; + this.offsetToSVGDocumentList = p.Offset32; + p.currentPosition = this.tableStart + this.offsetToSVGDocumentList; + this.documentList = new SVGDocumentList( p ); + } +} +class SVGDocumentList extends ParsedData { + constructor( p ) { + super( p ); + this.numEntries = p.uint16; + this.documentRecords = [ ...new Array( this.numEntries ) ].map( + ( _ ) => new SVGDocumentRecord( p ) + ); + } + getDocument( documentID ) { + let record = this.documentRecords[ documentID ]; + if ( ! record ) return ''; + let offset = this.start + record.svgDocOffset; + this.parser.currentPosition = offset; + return this.parser.readBytes( record.svgDocLength ); + } + getDocumentForGlyph( glyphID ) { + let id = this.documentRecords.findIndex( + ( d ) => d.startGlyphID <= glyphID && glyphID <= d.endGlyphID + ); + if ( id === -1 ) return ''; + return this.getDocument( id ); + } +} +class SVGDocumentRecord { + constructor( p ) { + this.startGlyphID = p.uint16; + this.endGlyphID = p.uint16; + this.svgDocOffset = p.Offset32; + this.svgDocLength = p.uint32; + } +} +var SVG$1 = Object.freeze( { __proto__: null, SVG: SVG } ); +class fvar extends SimpleTable { + constructor( dict, dataview ) { + const { p: p } = super( dict, dataview ); + this.majorVersion = p.uint16; + this.minorVersion = p.uint16; + this.axesArrayOffset = p.Offset16; + p.uint16; + this.axisCount = p.uint16; + this.axisSize = p.uint16; + this.instanceCount = p.uint16; + this.instanceSize = p.uint16; + const axisStart = this.tableStart + this.axesArrayOffset; + lazy$1( this, `axes`, () => { + p.currentPosition = axisStart; + return [ ...new Array( this.axisCount ) ].map( + ( _ ) => new VariationAxisRecord( p ) + ); + } ); + const instanceStart = axisStart + this.axisCount * this.axisSize; + lazy$1( this, `instances`, () => { + let instances = []; + for ( let i = 0; i < this.instanceCount; i++ ) { + p.currentPosition = instanceStart + i * this.instanceSize; + instances.push( + new InstanceRecord( p, this.axisCount, this.instanceSize ) + ); + } + return instances; + } ); + } + getSupportedAxes() { + return this.axes.map( ( a ) => a.tag ); + } + getAxis( name ) { + return this.axes.find( ( a ) => a.tag === name ); + } +} +class VariationAxisRecord { + constructor( p ) { + this.tag = p.tag; + this.minValue = p.fixed; + this.defaultValue = p.fixed; + this.maxValue = p.fixed; + this.flags = p.flags( 16 ); + this.axisNameID = p.uint16; + } +} +class InstanceRecord { + constructor( p, axisCount, size ) { + let start = p.currentPosition; + this.subfamilyNameID = p.uint16; + p.uint16; + this.coordinates = [ ...new Array( axisCount ) ].map( + ( _ ) => p.fixed + ); + if ( p.currentPosition - start < size ) { + this.postScriptNameID = p.uint16; + } + } +} +var fvar$1 = Object.freeze( { __proto__: null, fvar: fvar } ); +class cvt extends SimpleTable { + constructor( dict, dataview ) { + const { p: p } = super( dict, dataview ); + const n = dict.length / 2; + lazy$1( this, `items`, () => + [ ...new Array( n ) ].map( ( _ ) => p.fword ) + ); + } +} +var cvt$1 = Object.freeze( { __proto__: null, cvt: cvt } ); +class fpgm extends SimpleTable { + constructor( dict, dataview ) { + const { p: p } = super( dict, dataview ); + lazy$1( this, `instructions`, () => + [ ...new Array( dict.length ) ].map( ( _ ) => p.uint8 ) + ); + } +} +var fpgm$1 = Object.freeze( { __proto__: null, fpgm: fpgm } ); +class gasp extends SimpleTable { + constructor( dict, dataview ) { + const { p: p } = super( dict, dataview ); + this.version = p.uint16; + this.numRanges = p.uint16; + const getter = () => + [ ...new Array( this.numRanges ) ].map( + ( _ ) => new GASPRange( p ) + ); + lazy$1( this, `gaspRanges`, getter ); + } +} +class GASPRange { + constructor( p ) { + this.rangeMaxPPEM = p.uint16; + this.rangeGaspBehavior = p.uint16; + } +} +var gasp$1 = Object.freeze( { __proto__: null, gasp: gasp } ); +class glyf extends SimpleTable { + constructor( dict, dataview ) { + super( dict, dataview ); + } + getGlyphData( offset, length ) { + this.parser.currentPosition = this.tableStart + offset; + return this.parser.readBytes( length ); + } +} +var glyf$1 = Object.freeze( { __proto__: null, glyf: glyf } ); +class loca extends SimpleTable { + constructor( dict, dataview, tables ) { + const { p: p } = super( dict, dataview ); + const n = tables.maxp.numGlyphs + 1; + if ( tables.head.indexToLocFormat === 0 ) { + this.x2 = true; + lazy$1( this, `offsets`, () => + [ ...new Array( n ) ].map( ( _ ) => p.Offset16 ) + ); + } else { + lazy$1( this, `offsets`, () => + [ ...new Array( n ) ].map( ( _ ) => p.Offset32 ) + ); + } + } + getGlyphDataOffsetAndLength( glyphID ) { + let offset = this.offsets[ glyphID ] * this.x2 ? 2 : 1; + let nextOffset = this.offsets[ glyphID + 1 ] * this.x2 ? 2 : 1; + return { offset: offset, length: nextOffset - offset }; + } +} +var loca$1 = Object.freeze( { __proto__: null, loca: loca } ); +class prep extends SimpleTable { + constructor( dict, dataview ) { + const { p: p } = super( dict, dataview ); + lazy$1( this, `instructions`, () => + [ ...new Array( dict.length ) ].map( ( _ ) => p.uint8 ) + ); + } +} +var prep$1 = Object.freeze( { __proto__: null, prep: prep } ); +class CFF extends SimpleTable { + constructor( dict, dataview ) { + const { p: p } = super( dict, dataview ); + lazy$1( this, `data`, () => p.readBytes() ); + } +} +var CFF$1 = Object.freeze( { __proto__: null, CFF: CFF } ); +class CFF2 extends SimpleTable { + constructor( dict, dataview ) { + const { p: p } = super( dict, dataview ); + lazy$1( this, `data`, () => p.readBytes() ); + } +} +var CFF2$1 = Object.freeze( { __proto__: null, CFF2: CFF2 } ); +class VORG extends SimpleTable { + constructor( dict, dataview ) { + const { p: p } = super( dict, dataview ); + this.majorVersion = p.uint16; + this.minorVersion = p.uint16; + this.defaultVertOriginY = p.int16; + this.numVertOriginYMetrics = p.uint16; + lazy$1( this, `vertORiginYMetrics`, () => + [ ...new Array( this.numVertOriginYMetrics ) ].map( + ( _ ) => new VertOriginYMetric( p ) + ) + ); + } +} +class VertOriginYMetric { + constructor( p ) { + this.glyphIndex = p.uint16; + this.vertOriginY = p.int16; + } +} +var VORG$1 = Object.freeze( { __proto__: null, VORG: VORG } ); +class BitmapSize { + constructor( p ) { + this.indexSubTableArrayOffset = p.Offset32; + this.indexTablesSize = p.uint32; + this.numberofIndexSubTables = p.uint32; + this.colorRef = p.uint32; + this.hori = new SbitLineMetrics( p ); + this.vert = new SbitLineMetrics( p ); + this.startGlyphIndex = p.uint16; + this.endGlyphIndex = p.uint16; + this.ppemX = p.uint8; + this.ppemY = p.uint8; + this.bitDepth = p.uint8; + this.flags = p.int8; + } +} +class BitmapScale { + constructor( p ) { + this.hori = new SbitLineMetrics( p ); + this.vert = new SbitLineMetrics( p ); + this.ppemX = p.uint8; + this.ppemY = p.uint8; + this.substitutePpemX = p.uint8; + this.substitutePpemY = p.uint8; + } +} +class SbitLineMetrics { + constructor( p ) { + this.ascender = p.int8; + this.descender = p.int8; + this.widthMax = p.uint8; + this.caretSlopeNumerator = p.int8; + this.caretSlopeDenominator = p.int8; + this.caretOffset = p.int8; + this.minOriginSB = p.int8; + this.minAdvanceSB = p.int8; + this.maxBeforeBL = p.int8; + this.minAfterBL = p.int8; + this.pad1 = p.int8; + this.pad2 = p.int8; + } +} +class EBLC extends SimpleTable { + constructor( dict, dataview, name ) { + const { p: p } = super( dict, dataview, name ); + this.majorVersion = p.uint16; + this.minorVersion = p.uint16; + this.numSizes = p.uint32; + lazy$1( this, `bitMapSizes`, () => + [ ...new Array( this.numSizes ) ].map( + ( _ ) => new BitmapSize( p ) + ) + ); + } +} +var EBLC$1 = Object.freeze( { __proto__: null, EBLC: EBLC } ); +class EBDT extends SimpleTable { + constructor( dict, dataview, name ) { + const { p: p } = super( dict, dataview, name ); + this.majorVersion = p.uint16; + this.minorVersion = p.uint16; + } +} +var EBDT$1 = Object.freeze( { __proto__: null, EBDT: EBDT } ); +class EBSC extends SimpleTable { + constructor( dict, dataview ) { + const { p: p } = super( dict, dataview ); + this.majorVersion = p.uint16; + this.minorVersion = p.uint16; + this.numSizes = p.uint32; + lazy$1( this, `bitmapScales`, () => + [ ...new Array( this.numSizes ) ].map( + ( _ ) => new BitmapScale( p ) + ) + ); + } +} +var EBSC$1 = Object.freeze( { __proto__: null, EBSC: EBSC } ); +class CBLC extends EBLC { + constructor( dict, dataview ) { + super( dict, dataview, `CBLC` ); + } +} +var CBLC$1 = Object.freeze( { __proto__: null, CBLC: CBLC } ); +class CBDT extends EBDT { + constructor( dict, dataview ) { + super( dict, dataview, `CBDT` ); + } +} +var CBDT$1 = Object.freeze( { __proto__: null, CBDT: CBDT } ); +class sbix extends SimpleTable { + constructor( dict, dataview ) { + const { p: p } = super( dict, dataview ); + this.version = p.uint16; + this.flags = p.flags( 16 ); + this.numStrikes = p.uint32; + lazy$1( this, `strikeOffsets`, () => + [ ...new Array( this.numStrikes ) ].map( ( _ ) => p.Offset32 ) + ); + } +} +var sbix$1 = Object.freeze( { __proto__: null, sbix: sbix } ); +class COLR extends SimpleTable { + constructor( dict, dataview ) { + const { p: p } = super( dict, dataview ); + this.version = p.uint16; + this.numBaseGlyphRecords = p.uint16; + this.baseGlyphRecordsOffset = p.Offset32; + this.layerRecordsOffset = p.Offset32; + this.numLayerRecords = p.uint16; + } + getBaseGlyphRecord( glyphID ) { + let start = this.tableStart + this.baseGlyphRecordsOffset; + this.parser.currentPosition = start; + let first = new BaseGlyphRecord( this.parser ); + let firstID = first.gID; + let end = this.tableStart + this.layerRecordsOffset - 6; + this.parser.currentPosition = end; + let last = new BaseGlyphRecord( this.parser ); + let lastID = last.gID; + if ( firstID === glyphID ) return first; + if ( lastID === glyphID ) return last; + while ( true ) { + if ( start === end ) break; + let mid = start + ( end - start ) / 12; + this.parser.currentPosition = mid; + let middle = new BaseGlyphRecord( this.parser ); + let midID = middle.gID; + if ( midID === glyphID ) return middle; + else if ( midID > glyphID ) { + end = mid; + } else if ( midID < glyphID ) { + start = mid; + } + } + return false; + } + getLayers( glyphID ) { + let record = this.getBaseGlyphRecord( glyphID ); + this.parser.currentPosition = + this.tableStart + + this.layerRecordsOffset + + 4 * record.firstLayerIndex; + return [ ...new Array( record.numLayers ) ].map( + ( _ ) => new LayerRecord( p ) + ); + } +} +class BaseGlyphRecord { + constructor( p ) { + this.gID = p.uint16; + this.firstLayerIndex = p.uint16; + this.numLayers = p.uint16; + } +} +class LayerRecord { + constructor( p ) { + this.gID = p.uint16; + this.paletteIndex = p.uint16; + } +} +var COLR$1 = Object.freeze( { __proto__: null, COLR: COLR } ); +class CPAL extends SimpleTable { + constructor( dict, dataview ) { + const { p: p } = super( dict, dataview ); + this.version = p.uint16; + this.numPaletteEntries = p.uint16; + const numPalettes = ( this.numPalettes = p.uint16 ); + this.numColorRecords = p.uint16; + this.offsetFirstColorRecord = p.Offset32; + this.colorRecordIndices = [ ...new Array( this.numPalettes ) ].map( + ( _ ) => p.uint16 + ); + lazy$1( this, `colorRecords`, () => { + p.currentPosition = this.tableStart + this.offsetFirstColorRecord; + return [ ...new Array( this.numColorRecords ) ].map( + ( _ ) => new ColorRecord( p ) + ); + } ); + if ( this.version === 1 ) { + this.offsetPaletteTypeArray = p.Offset32; + this.offsetPaletteLabelArray = p.Offset32; + this.offsetPaletteEntryLabelArray = p.Offset32; + lazy$1( this, `paletteTypeArray`, () => { + p.currentPosition = + this.tableStart + this.offsetPaletteTypeArray; + return new PaletteTypeArray( p, numPalettes ); + } ); + lazy$1( this, `paletteLabelArray`, () => { + p.currentPosition = + this.tableStart + this.offsetPaletteLabelArray; + return new PaletteLabelsArray( p, numPalettes ); + } ); + lazy$1( this, `paletteEntryLabelArray`, () => { + p.currentPosition = + this.tableStart + this.offsetPaletteEntryLabelArray; + return new PaletteEntryLabelArray( p, numPalettes ); + } ); + } + } +} +class ColorRecord { + constructor( p ) { + this.blue = p.uint8; + this.green = p.uint8; + this.red = p.uint8; + this.alpha = p.uint8; + } +} +class PaletteTypeArray { + constructor( p, numPalettes ) { + this.paletteTypes = [ ...new Array( numPalettes ) ].map( + ( _ ) => p.uint32 + ); + } +} +class PaletteLabelsArray { + constructor( p, numPalettes ) { + this.paletteLabels = [ ...new Array( numPalettes ) ].map( + ( _ ) => p.uint16 + ); + } +} +class PaletteEntryLabelArray { + constructor( p, numPalettes ) { + this.paletteEntryLabels = [ ...new Array( numPalettes ) ].map( + ( _ ) => p.uint16 + ); + } +} +var CPAL$1 = Object.freeze( { __proto__: null, CPAL: CPAL } ); +class DSIG extends SimpleTable { + constructor( dict, dataview ) { + const { p: p } = super( dict, dataview ); + this.version = p.uint32; + this.numSignatures = p.uint16; + this.flags = p.uint16; + this.signatureRecords = [ ...new Array( this.numSignatures ) ].map( + ( _ ) => new SignatureRecord( p ) + ); + } + getData( signatureID ) { + const record = this.signatureRecords[ signatureID ]; + this.parser.currentPosition = this.tableStart + record.offset; + return new SignatureBlockFormat1( this.parser ); + } +} +class SignatureRecord { + constructor( p ) { + this.format = p.uint32; + this.length = p.uint32; + this.offset = p.Offset32; + } +} +class SignatureBlockFormat1 { + constructor( p ) { + p.uint16; + p.uint16; + this.signatureLength = p.uint32; + this.signature = p.readBytes( this.signatureLength ); + } +} +var DSIG$1 = Object.freeze( { __proto__: null, DSIG: DSIG } ); +class hdmx extends SimpleTable { + constructor( dict, dataview, tables ) { + const { p: p } = super( dict, dataview ); + const numGlyphs = tables.hmtx.numGlyphs; + this.version = p.uint16; + this.numRecords = p.int16; + this.sizeDeviceRecord = p.int32; + this.records = [ ...new Array( numRecords ) ].map( + ( _ ) => new DeviceRecord( p, numGlyphs ) + ); + } +} +class DeviceRecord { + constructor( p, numGlyphs ) { + this.pixelSize = p.uint8; + this.maxWidth = p.uint8; + this.widths = p.readBytes( numGlyphs ); + } +} +var hdmx$1 = Object.freeze( { __proto__: null, hdmx: hdmx } ); +class kern extends SimpleTable { + constructor( dict, dataview ) { + const { p: p } = super( dict, dataview ); + this.version = p.uint16; + this.nTables = p.uint16; + lazy$1( this, `tables`, () => { + let offset = this.tableStart + 4; + const tables = []; + for ( let i = 0; i < this.nTables; i++ ) { + p.currentPosition = offset; + let subtable = new KernSubTable( p ); + tables.push( subtable ); + offset += subtable; + } + return tables; + } ); + } +} +class KernSubTable { + constructor( p ) { + this.version = p.uint16; + this.length = p.uint16; + this.coverage = p.flags( 8 ); + this.format = p.uint8; + if ( this.format === 0 ) { + this.nPairs = p.uint16; + this.searchRange = p.uint16; + this.entrySelector = p.uint16; + this.rangeShift = p.uint16; + lazy$1( this, `pairs`, () => + [ ...new Array( this.nPairs ) ].map( ( _ ) => new Pair( p ) ) + ); + } + if ( this.format === 2 ) { + console.warn( + `Kern subtable format 2 is not supported: this parser currently only parses universal table data.` + ); + } + } + get horizontal() { + return this.coverage[ 0 ]; + } + get minimum() { + return this.coverage[ 1 ]; + } + get crossstream() { + return this.coverage[ 2 ]; + } + get override() { + return this.coverage[ 3 ]; + } +} +class Pair { + constructor( p ) { + this.left = p.uint16; + this.right = p.uint16; + this.value = p.fword; + } +} +var kern$1 = Object.freeze( { __proto__: null, kern: kern } ); +class LTSH extends SimpleTable { + constructor( dict, dataview ) { + const { p: p } = super( dict, dataview ); + this.version = p.uint16; + this.numGlyphs = p.uint16; + this.yPels = p.readBytes( this.numGlyphs ); + } +} +var LTSH$1 = Object.freeze( { __proto__: null, LTSH: LTSH } ); +class MERG extends SimpleTable { + constructor( dict, dataview ) { + const { p: p } = super( dict, dataview ); + this.version = p.uint16; + this.mergeClassCount = p.uint16; + this.mergeDataOffset = p.Offset16; + this.classDefCount = p.uint16; + this.offsetToClassDefOffsets = p.Offset16; + lazy$1( this, `mergeEntryMatrix`, () => + [ ...new Array( this.mergeClassCount ) ].map( ( _ ) => + p.readBytes( this.mergeClassCount ) + ) + ); + console.warn( `Full MERG parsing is currently not supported.` ); + console.warn( + `If you need this table parsed, please file an issue, or better yet, a PR.` + ); + } +} +var MERG$1 = Object.freeze( { __proto__: null, MERG: MERG } ); +class meta extends SimpleTable { + constructor( dict, dataview ) { + const { p: p } = super( dict, dataview ); + this.version = p.uint32; + this.flags = p.uint32; + p.uint32; + this.dataMapsCount = p.uint32; + this.dataMaps = [ ...new Array( this.dataMapsCount ) ].map( + ( _ ) => new DataMap( this.tableStart, p ) + ); + } +} +class DataMap { + constructor( tableStart, p ) { + this.tableStart = tableStart; + this.parser = p; + this.tag = p.tag; + this.dataOffset = p.Offset32; + this.dataLength = p.uint32; + } + getData() { + this.parser.currentField = this.tableStart + this.dataOffset; + return this.parser.readBytes( this.dataLength ); + } +} +var meta$1 = Object.freeze( { __proto__: null, meta: meta } ); +class PCLT extends SimpleTable { + constructor( dict, dataview ) { + super( dict, dataview ); + console.warn( + `This font uses a PCLT table, which is currently not supported by this parser.` + ); + console.warn( + `If you need this table parsed, please file an issue, or better yet, a PR.` + ); + } +} +var PCLT$1 = Object.freeze( { __proto__: null, PCLT: PCLT } ); +class VDMX extends SimpleTable { + constructor( dict, dataview ) { + const { p: p } = super( dict, dataview ); + this.version = p.uint16; + this.numRecs = p.uint16; + this.numRatios = p.uint16; + this.ratRanges = [ ...new Array( this.numRatios ) ].map( + ( _ ) => new RatioRange( p ) + ); + this.offsets = [ ...new Array( this.numRatios ) ].map( + ( _ ) => p.Offset16 + ); + this.VDMXGroups = [ ...new Array( this.numRecs ) ].map( + ( _ ) => new VDMXGroup( p ) + ); + } +} +class RatioRange { + constructor( p ) { + this.bCharSet = p.uint8; + this.xRatio = p.uint8; + this.yStartRatio = p.uint8; + this.yEndRatio = p.uint8; + } +} +class VDMXGroup { + constructor( p ) { + this.recs = p.uint16; + this.startsz = p.uint8; + this.endsz = p.uint8; + this.records = [ ...new Array( this.recs ) ].map( + ( _ ) => new vTable( p ) + ); + } +} +class vTable { + constructor( p ) { + this.yPelHeight = p.uint16; + this.yMax = p.int16; + this.yMin = p.int16; + } +} +var VDMX$1 = Object.freeze( { __proto__: null, VDMX: VDMX } ); +class vhea extends SimpleTable { + constructor( dict, dataview ) { + const { p: p } = super( dict, dataview ); + this.version = p.fixed; + this.ascent = this.vertTypoAscender = p.int16; + this.descent = this.vertTypoDescender = p.int16; + this.lineGap = this.vertTypoLineGap = p.int16; + this.advanceHeightMax = p.int16; + this.minTopSideBearing = p.int16; + this.minBottomSideBearing = p.int16; + this.yMaxExtent = p.int16; + this.caretSlopeRise = p.int16; + this.caretSlopeRun = p.int16; + this.caretOffset = p.int16; + this.reserved = p.int16; + this.reserved = p.int16; + this.reserved = p.int16; + this.reserved = p.int16; + this.metricDataFormat = p.int16; + this.numOfLongVerMetrics = p.uint16; + p.verifyLength(); + } +} +var vhea$1 = Object.freeze( { __proto__: null, vhea: vhea } ); +class vmtx extends SimpleTable { + constructor( dict, dataview, tables ) { + super( dict, dataview ); + const numOfLongVerMetrics = tables.vhea.numOfLongVerMetrics; + const numGlyphs = tables.maxp.numGlyphs; + const metricsStart = p.currentPosition; + lazy( this, `vMetrics`, () => { + p.currentPosition = metricsStart; + return [ ...new Array( numOfLongVerMetrics ) ].map( + ( _ ) => new LongVertMetric( p.uint16, p.int16 ) + ); + } ); + if ( numOfLongVerMetrics < numGlyphs ) { + const tsbStart = metricsStart + numOfLongVerMetrics * 4; + lazy( this, `topSideBearings`, () => { + p.currentPosition = tsbStart; + return [ ...new Array( numGlyphs - numOfLongVerMetrics ) ].map( + ( _ ) => p.int16 + ); + } ); + } + } +} +class LongVertMetric { + constructor( h, b ) { + this.advanceHeight = h; + this.topSideBearing = b; + } +} +var vmtx$1 = Object.freeze( { __proto__: null, vmtx: vmtx } ); +export { Font }; diff --git a/packages/edit-site/lib/unbrotli.js b/packages/edit-site/lib/unbrotli.js new file mode 100644 index 0000000000000..fd5775db2e48e --- /dev/null +++ b/packages/edit-site/lib/unbrotli.js @@ -0,0 +1,2006 @@ +(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.unbrotli = f()}})(function(){var define,module,exports;return (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i 0; +}; + +/* Fills up the input ringbuffer by calling the input callback. + + Does nothing if there are at least 32 bytes present after current position. + + Returns 0 if either: + - the input callback returned an error, or + - there is no more input and the position is past the end of the stream. + + After encountering the end of the input stream, 32 additional zero bytes are + copied to the ringbuffer, therefore it is safe to call this function after + every 32 bytes of input is read. +*/ +BrotliBitReader.prototype.readMoreInput = function() { + if (this.bit_end_pos_ > 256) { + return; + } else if (this.eos_) { + if (this.bit_pos_ > this.bit_end_pos_) + throw new Error('Unexpected end of input ' + this.bit_pos_ + ' ' + this.bit_end_pos_); + } else { + var dst = this.buf_ptr_; + var bytes_read = this.input_.read(this.buf_, dst, BROTLI_READ_SIZE); + if (bytes_read < 0) { + throw new Error('Unexpected end of input'); + } + + if (bytes_read < BROTLI_READ_SIZE) { + this.eos_ = 1; + /* Store 32 bytes of zero after the stream end. */ + for (var p = 0; p < 32; p++) + this.buf_[dst + bytes_read + p] = 0; + } + + if (dst === 0) { + /* Copy the head of the ringbuffer to the slack region. */ + for (var p = 0; p < 32; p++) + this.buf_[(BROTLI_READ_SIZE << 1) + p] = this.buf_[p]; + + this.buf_ptr_ = BROTLI_READ_SIZE; + } else { + this.buf_ptr_ = 0; + } + + this.bit_end_pos_ += bytes_read << 3; + } +}; + +/* Guarantees that there are at least 24 bits in the buffer. */ +BrotliBitReader.prototype.fillBitWindow = function() { + while (this.bit_pos_ >= 8) { + this.val_ >>>= 8; + this.val_ |= this.buf_[this.pos_ & BROTLI_IBUF_MASK] << 24; + ++this.pos_; + this.bit_pos_ = this.bit_pos_ - 8 >>> 0; + this.bit_end_pos_ = this.bit_end_pos_ - 8 >>> 0; + } +}; + +/* Reads the specified number of bits from Read Buffer. */ +BrotliBitReader.prototype.readBits = function(n_bits) { + if (32 - this.bit_pos_ < n_bits) { + this.fillBitWindow(); + } + + var val = ((this.val_ >>> this.bit_pos_) & kBitMask[n_bits]); + this.bit_pos_ += n_bits; + return val; +}; + +module.exports = BrotliBitReader; + +},{}],2:[function(require,module,exports){ +/* Copyright 2013 Google Inc. All Rights Reserved. + + Licensed 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. + + Lookup table to map the previous two bytes to a context id. + + There are four different context modeling modes defined here: + CONTEXT_LSB6: context id is the least significant 6 bits of the last byte, + CONTEXT_MSB6: context id is the most significant 6 bits of the last byte, + CONTEXT_UTF8: second-order context model tuned for UTF8-encoded text, + CONTEXT_SIGNED: second-order context model tuned for signed integers. + + The context id for the UTF8 context model is calculated as follows. If p1 + and p2 are the previous two bytes, we calcualte the context as + + context = kContextLookup[p1] | kContextLookup[p2 + 256]. + + If the previous two bytes are ASCII characters (i.e. < 128), this will be + equivalent to + + context = 4 * context1(p1) + context2(p2), + + where context1 is based on the previous byte in the following way: + + 0 : non-ASCII control + 1 : \t, \n, \r + 2 : space + 3 : other punctuation + 4 : " ' + 5 : % + 6 : ( < [ { + 7 : ) > ] } + 8 : , ; : + 9 : . + 10 : = + 11 : number + 12 : upper-case vowel + 13 : upper-case consonant + 14 : lower-case vowel + 15 : lower-case consonant + + and context2 is based on the second last byte: + + 0 : control, space + 1 : punctuation + 2 : upper-case letter, number + 3 : lower-case letter + + If the last byte is ASCII, and the second last byte is not (in a valid UTF8 + stream it will be a continuation byte, value between 128 and 191), the + context is the same as if the second last byte was an ASCII control or space. + + If the last byte is a UTF8 lead byte (value >= 192), then the next byte will + be a continuation byte and the context id is 2 or 3 depending on the LSB of + the last byte and to a lesser extent on the second last byte if it is ASCII. + + If the last byte is a UTF8 continuation byte, the second last byte can be: + - continuation byte: the next byte is probably ASCII or lead byte (assuming + 4-byte UTF8 characters are rare) and the context id is 0 or 1. + - lead byte (192 - 207): next byte is ASCII or lead byte, context is 0 or 1 + - lead byte (208 - 255): next byte is continuation byte, context is 2 or 3 + + The possible value combinations of the previous two bytes, the range of + context ids and the type of the next byte is summarized in the table below: + + |--------\-----------------------------------------------------------------| + | \ Last byte | + | Second \---------------------------------------------------------------| + | last byte \ ASCII | cont. byte | lead byte | + | \ (0-127) | (128-191) | (192-) | + |=============|===================|=====================|==================| + | ASCII | next: ASCII/lead | not valid | next: cont. | + | (0-127) | context: 4 - 63 | | context: 2 - 3 | + |-------------|-------------------|---------------------|------------------| + | cont. byte | next: ASCII/lead | next: ASCII/lead | next: cont. | + | (128-191) | context: 4 - 63 | context: 0 - 1 | context: 2 - 3 | + |-------------|-------------------|---------------------|------------------| + | lead byte | not valid | next: ASCII/lead | not valid | + | (192-207) | | context: 0 - 1 | | + |-------------|-------------------|---------------------|------------------| + | lead byte | not valid | next: cont. | not valid | + | (208-) | | context: 2 - 3 | | + |-------------|-------------------|---------------------|------------------| + + The context id for the signed context mode is calculated as: + + context = (kContextLookup[512 + p1] << 3) | kContextLookup[512 + p2]. + + For any context modeling modes, the context ids can be calculated by |-ing + together two lookups from one table using context model dependent offsets: + + context = kContextLookup[offset1 + p1] | kContextLookup[offset2 + p2]. + + where offset1 and offset2 are dependent on the context mode. +*/ + +var CONTEXT_LSB6 = 0; +var CONTEXT_MSB6 = 1; +var CONTEXT_UTF8 = 2; +var CONTEXT_SIGNED = 3; + +/* Common context lookup table for all context modes. */ +exports.lookup = new Uint8Array([ + /* CONTEXT_UTF8, last byte. */ + /* ASCII range. */ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 4, 0, 0, 4, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 8, 12, 16, 12, 12, 20, 12, 16, 24, 28, 12, 12, 32, 12, 36, 12, + 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 32, 32, 24, 40, 28, 12, + 12, 48, 52, 52, 52, 48, 52, 52, 52, 48, 52, 52, 52, 52, 52, 48, + 52, 52, 52, 52, 52, 48, 52, 52, 52, 52, 52, 24, 12, 28, 12, 12, + 12, 56, 60, 60, 60, 56, 60, 60, 60, 56, 60, 60, 60, 60, 60, 56, + 60, 60, 60, 60, 60, 56, 60, 60, 60, 60, 60, 24, 12, 28, 12, 0, + /* UTF8 continuation byte range. */ + 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, + 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, + 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, + 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, + /* UTF8 lead byte range. */ + 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, + 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, + 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, + 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, + /* CONTEXT_UTF8 second last byte. */ + /* ASCII range. */ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, + 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, + 1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 0, + /* UTF8 continuation byte range. */ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + /* UTF8 lead byte range. */ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + /* CONTEXT_SIGNED, second last byte. */ + 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, + /* CONTEXT_SIGNED, last byte, same as the above values shifted by 3 bits. */ + 0, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, + 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, + 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 56, + /* CONTEXT_LSB6, last byte. */ + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, + 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, + 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, + 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, + 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, + /* CONTEXT_MSB6, last byte. */ + 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, + 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, + 8, 8, 8, 8, 9, 9, 9, 9, 10, 10, 10, 10, 11, 11, 11, 11, + 12, 12, 12, 12, 13, 13, 13, 13, 14, 14, 14, 14, 15, 15, 15, 15, + 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 19, 19, 19, 19, + 20, 20, 20, 20, 21, 21, 21, 21, 22, 22, 22, 22, 23, 23, 23, 23, + 24, 24, 24, 24, 25, 25, 25, 25, 26, 26, 26, 26, 27, 27, 27, 27, + 28, 28, 28, 28, 29, 29, 29, 29, 30, 30, 30, 30, 31, 31, 31, 31, + 32, 32, 32, 32, 33, 33, 33, 33, 34, 34, 34, 34, 35, 35, 35, 35, + 36, 36, 36, 36, 37, 37, 37, 37, 38, 38, 38, 38, 39, 39, 39, 39, + 40, 40, 40, 40, 41, 41, 41, 41, 42, 42, 42, 42, 43, 43, 43, 43, + 44, 44, 44, 44, 45, 45, 45, 45, 46, 46, 46, 46, 47, 47, 47, 47, + 48, 48, 48, 48, 49, 49, 49, 49, 50, 50, 50, 50, 51, 51, 51, 51, + 52, 52, 52, 52, 53, 53, 53, 53, 54, 54, 54, 54, 55, 55, 55, 55, + 56, 56, 56, 56, 57, 57, 57, 57, 58, 58, 58, 58, 59, 59, 59, 59, + 60, 60, 60, 60, 61, 61, 61, 61, 62, 62, 62, 62, 63, 63, 63, 63, + /* CONTEXT_{M,L}SB6, second last byte, */ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, +]); + +exports.lookupOffsets = new Uint16Array([ + /* CONTEXT_LSB6 */ + 1024, 1536, + /* CONTEXT_MSB6 */ + 1280, 1536, + /* CONTEXT_UTF8 */ + 0, 256, + /* CONTEXT_SIGNED */ + 768, 512, +]); + +},{}],3:[function(require,module,exports){ +/* Copyright 2013 Google Inc. All Rights Reserved. + + Licensed 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. +*/ + +var BrotliInput = require('./streams').BrotliInput; +var BrotliOutput = require('./streams').BrotliOutput; +var BrotliBitReader = require('./bit_reader'); +var BrotliDictionary = require('./dictionary'); +var HuffmanCode = require('./huffman').HuffmanCode; +var BrotliBuildHuffmanTable = require('./huffman').BrotliBuildHuffmanTable; +var Context = require('./context'); +var Prefix = require('./prefix'); +var Transform = require('./transform'); + +var kDefaultCodeLength = 8; +var kCodeLengthRepeatCode = 16; +var kNumLiteralCodes = 256; +var kNumInsertAndCopyCodes = 704; +var kNumBlockLengthCodes = 26; +var kLiteralContextBits = 6; +var kDistanceContextBits = 2; + +var HUFFMAN_TABLE_BITS = 8; +var HUFFMAN_TABLE_MASK = 0xff; +/* Maximum possible Huffman table size for an alphabet size of 704, max code + * length 15 and root table bits 8. */ +var HUFFMAN_MAX_TABLE_SIZE = 1080; + +var CODE_LENGTH_CODES = 18; +var kCodeLengthCodeOrder = new Uint8Array([ + 1, 2, 3, 4, 0, 5, 17, 6, 16, 7, 8, 9, 10, 11, 12, 13, 14, 15, +]); + +var NUM_DISTANCE_SHORT_CODES = 16; +var kDistanceShortCodeIndexOffset = new Uint8Array([ + 3, 2, 1, 0, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2 +]); + +var kDistanceShortCodeValueOffset = new Int8Array([ + 0, 0, 0, 0, -1, 1, -2, 2, -3, 3, -1, 1, -2, 2, -3, 3 +]); + +var kMaxHuffmanTableSize = new Uint16Array([ + 256, 402, 436, 468, 500, 534, 566, 598, 630, 662, 694, 726, 758, 790, 822, + 854, 886, 920, 952, 984, 1016, 1048, 1080 +]); + +function DecodeWindowBits(br) { + var n; + if (br.readBits(1) === 0) { + return 16; + } + + n = br.readBits(3); + if (n > 0) { + return 17 + n; + } + + n = br.readBits(3); + if (n > 0) { + return 8 + n; + } + + return 17; +} + +/* Decodes a number in the range [0..255], by reading 1 - 11 bits. */ +function DecodeVarLenUint8(br) { + if (br.readBits(1)) { + var nbits = br.readBits(3); + if (nbits === 0) { + return 1; + } else { + return br.readBits(nbits) + (1 << nbits); + } + } + return 0; +} + +function MetaBlockLength() { + this.meta_block_length = 0; + this.input_end = 0; + this.is_uncompressed = 0; + this.is_metadata = false; +} + +function DecodeMetaBlockLength(br) { + var out = new MetaBlockLength; + var size_nibbles; + var size_bytes; + var i; + + out.input_end = br.readBits(1); + if (out.input_end && br.readBits(1)) { + return out; + } + + size_nibbles = br.readBits(2) + 4; + if (size_nibbles === 7) { + out.is_metadata = true; + + if (br.readBits(1) !== 0) + throw new Error('Invalid reserved bit'); + + size_bytes = br.readBits(2); + if (size_bytes === 0) + return out; + + for (i = 0; i < size_bytes; i++) { + var next_byte = br.readBits(8); + if (i + 1 === size_bytes && size_bytes > 1 && next_byte === 0) + throw new Error('Invalid size byte'); + + out.meta_block_length |= next_byte << (i * 8); + } + } else { + for (i = 0; i < size_nibbles; ++i) { + var next_nibble = br.readBits(4); + if (i + 1 === size_nibbles && size_nibbles > 4 && next_nibble === 0) + throw new Error('Invalid size nibble'); + + out.meta_block_length |= next_nibble << (i * 4); + } + } + + ++out.meta_block_length; + + if (!out.input_end && !out.is_metadata) { + out.is_uncompressed = br.readBits(1); + } + + return out; +} + +/* Decodes the next Huffman code from bit-stream. */ +function ReadSymbol(table, index, br) { + var start_index = index; + + var nbits; + br.fillBitWindow(); + index += (br.val_ >>> br.bit_pos_) & HUFFMAN_TABLE_MASK; + nbits = table[index].bits - HUFFMAN_TABLE_BITS; + if (nbits > 0) { + br.bit_pos_ += HUFFMAN_TABLE_BITS; + index += table[index].value; + index += (br.val_ >>> br.bit_pos_) & ((1 << nbits) - 1); + } + br.bit_pos_ += table[index].bits; + return table[index].value; +} + +function ReadHuffmanCodeLengths(code_length_code_lengths, num_symbols, code_lengths, br) { + var symbol = 0; + var prev_code_len = kDefaultCodeLength; + var repeat = 0; + var repeat_code_len = 0; + var space = 32768; + + var table = []; + for (var i = 0; i < 32; i++) + table.push(new HuffmanCode(0, 0)); + + BrotliBuildHuffmanTable(table, 0, 5, code_length_code_lengths, CODE_LENGTH_CODES); + + while (symbol < num_symbols && space > 0) { + var p = 0; + var code_len; + + br.readMoreInput(); + br.fillBitWindow(); + p += (br.val_ >>> br.bit_pos_) & 31; + br.bit_pos_ += table[p].bits; + code_len = table[p].value & 0xff; + if (code_len < kCodeLengthRepeatCode) { + repeat = 0; + code_lengths[symbol++] = code_len; + if (code_len !== 0) { + prev_code_len = code_len; + space -= 32768 >> code_len; + } + } else { + var extra_bits = code_len - 14; + var old_repeat; + var repeat_delta; + var new_len = 0; + if (code_len === kCodeLengthRepeatCode) { + new_len = prev_code_len; + } + if (repeat_code_len !== new_len) { + repeat = 0; + repeat_code_len = new_len; + } + old_repeat = repeat; + if (repeat > 0) { + repeat -= 2; + repeat <<= extra_bits; + } + repeat += br.readBits(extra_bits) + 3; + repeat_delta = repeat - old_repeat; + if (symbol + repeat_delta > num_symbols) { + throw new Error('[ReadHuffmanCodeLengths] symbol + repeat_delta > num_symbols'); + } + + for (var x = 0; x < repeat_delta; x++) + code_lengths[symbol + x] = repeat_code_len; + + symbol += repeat_delta; + + if (repeat_code_len !== 0) { + space -= repeat_delta << (15 - repeat_code_len); + } + } + } + if (space !== 0) { + throw new Error("[ReadHuffmanCodeLengths] space = " + space); + } + + for (; symbol < num_symbols; symbol++) + code_lengths[symbol] = 0; +} + +function ReadHuffmanCode(alphabet_size, tables, table, br) { + var table_size = 0; + var simple_code_or_skip; + var code_lengths = new Uint8Array(alphabet_size); + + br.readMoreInput(); + + /* simple_code_or_skip is used as follows: + 1 for simple code; + 0 for no skipping, 2 skips 2 code lengths, 3 skips 3 code lengths */ + simple_code_or_skip = br.readBits(2); + if (simple_code_or_skip === 1) { + /* Read symbols, codes & code lengths directly. */ + var i; + var max_bits_counter = alphabet_size - 1; + var max_bits = 0; + var symbols = new Int32Array(4); + var num_symbols = br.readBits(2) + 1; + while (max_bits_counter) { + max_bits_counter >>= 1; + ++max_bits; + } + + for (i = 0; i < num_symbols; ++i) { + symbols[i] = br.readBits(max_bits) % alphabet_size; + code_lengths[symbols[i]] = 2; + } + code_lengths[symbols[0]] = 1; + switch (num_symbols) { + case 1: + break; + case 3: + if ((symbols[0] === symbols[1]) || + (symbols[0] === symbols[2]) || + (symbols[1] === symbols[2])) { + throw new Error('[ReadHuffmanCode] invalid symbols'); + } + break; + case 2: + if (symbols[0] === symbols[1]) { + throw new Error('[ReadHuffmanCode] invalid symbols'); + } + + code_lengths[symbols[1]] = 1; + break; + case 4: + if ((symbols[0] === symbols[1]) || + (symbols[0] === symbols[2]) || + (symbols[0] === symbols[3]) || + (symbols[1] === symbols[2]) || + (symbols[1] === symbols[3]) || + (symbols[2] === symbols[3])) { + throw new Error('[ReadHuffmanCode] invalid symbols'); + } + + if (br.readBits(1)) { + code_lengths[symbols[2]] = 3; + code_lengths[symbols[3]] = 3; + } else { + code_lengths[symbols[0]] = 2; + } + break; + } + } else { /* Decode Huffman-coded code lengths. */ + var i; + var code_length_code_lengths = new Uint8Array(CODE_LENGTH_CODES); + var space = 32; + var num_codes = 0; + /* Static Huffman code for the code length code lengths */ + var huff = [ + new HuffmanCode(2, 0), new HuffmanCode(2, 4), new HuffmanCode(2, 3), new HuffmanCode(3, 2), + new HuffmanCode(2, 0), new HuffmanCode(2, 4), new HuffmanCode(2, 3), new HuffmanCode(4, 1), + new HuffmanCode(2, 0), new HuffmanCode(2, 4), new HuffmanCode(2, 3), new HuffmanCode(3, 2), + new HuffmanCode(2, 0), new HuffmanCode(2, 4), new HuffmanCode(2, 3), new HuffmanCode(4, 5) + ]; + for (i = simple_code_or_skip; i < CODE_LENGTH_CODES && space > 0; ++i) { + var code_len_idx = kCodeLengthCodeOrder[i]; + var p = 0; + var v; + br.fillBitWindow(); + p += (br.val_ >>> br.bit_pos_) & 15; + br.bit_pos_ += huff[p].bits; + v = huff[p].value; + code_length_code_lengths[code_len_idx] = v; + if (v !== 0) { + space -= (32 >> v); + ++num_codes; + } + } + + if (!(num_codes === 1 || space === 0)) + throw new Error('[ReadHuffmanCode] invalid num_codes or space'); + + ReadHuffmanCodeLengths(code_length_code_lengths, alphabet_size, code_lengths, br); + } + + table_size = BrotliBuildHuffmanTable(tables, table, HUFFMAN_TABLE_BITS, code_lengths, alphabet_size); + + if (table_size === 0) { + throw new Error("[ReadHuffmanCode] BuildHuffmanTable failed: "); + } + + return table_size; +} + +function ReadBlockLength(table, index, br) { + var code; + var nbits; + code = ReadSymbol(table, index, br); + nbits = Prefix.kBlockLengthPrefixCode[code].nbits; + return Prefix.kBlockLengthPrefixCode[code].offset + br.readBits(nbits); +} + +function TranslateShortCodes(code, ringbuffer, index) { + var val; + if (code < NUM_DISTANCE_SHORT_CODES) { + index += kDistanceShortCodeIndexOffset[code]; + index &= 3; + val = ringbuffer[index] + kDistanceShortCodeValueOffset[code]; + } else { + val = code - NUM_DISTANCE_SHORT_CODES + 1; + } + return val; +} + +function MoveToFront(v, index) { + var value = v[index]; + var i = index; + for (; i; --i) v[i] = v[i - 1]; + v[0] = value; +} + +function InverseMoveToFrontTransform(v, v_len) { + var mtf = new Uint8Array(256); + var i; + for (i = 0; i < 256; ++i) { + mtf[i] = i; + } + for (i = 0; i < v_len; ++i) { + var index = v[i]; + v[i] = mtf[index]; + if (index) MoveToFront(mtf, index); + } +} + +/* Contains a collection of huffman trees with the same alphabet size. */ +function HuffmanTreeGroup(alphabet_size, num_htrees) { + this.alphabet_size = alphabet_size; + this.num_htrees = num_htrees; + this.codes = new Array(num_htrees + num_htrees * kMaxHuffmanTableSize[(alphabet_size + 31) >>> 5]); + this.htrees = new Uint32Array(num_htrees); +} + +HuffmanTreeGroup.prototype.decode = function(br) { + var i; + var table_size; + var next = 0; + for (i = 0; i < this.num_htrees; ++i) { + this.htrees[i] = next; + table_size = ReadHuffmanCode(this.alphabet_size, this.codes, next, br); + next += table_size; + } +}; + +function DecodeContextMap(context_map_size, br) { + var out = { num_htrees: null, context_map: null }; + var use_rle_for_zeros; + var max_run_length_prefix = 0; + var table; + var i; + + br.readMoreInput(); + var num_htrees = out.num_htrees = DecodeVarLenUint8(br) + 1; + + var context_map = out.context_map = new Uint8Array(context_map_size); + if (num_htrees <= 1) { + return out; + } + + use_rle_for_zeros = br.readBits(1); + if (use_rle_for_zeros) { + max_run_length_prefix = br.readBits(4) + 1; + } + + table = []; + for (i = 0; i < HUFFMAN_MAX_TABLE_SIZE; i++) { + table[i] = new HuffmanCode(0, 0); + } + + ReadHuffmanCode(num_htrees + max_run_length_prefix, table, 0, br); + + for (i = 0; i < context_map_size;) { + var code; + + br.readMoreInput(); + code = ReadSymbol(table, 0, br); + if (code === 0) { + context_map[i] = 0; + ++i; + } else if (code <= max_run_length_prefix) { + var reps = 1 + (1 << code) + br.readBits(code); + while (--reps) { + if (i >= context_map_size) { + throw new Error("[DecodeContextMap] i >= context_map_size"); + } + context_map[i] = 0; + ++i; + } + } else { + context_map[i] = code - max_run_length_prefix; + ++i; + } + } + if (br.readBits(1)) { + InverseMoveToFrontTransform(context_map, context_map_size); + } + + return out; +} + +function DecodeBlockType(max_block_type, trees, tree_type, block_types, ringbuffers, indexes, br) { + var ringbuffer = tree_type * 2; + var index = tree_type; + var type_code = ReadSymbol(trees, tree_type * HUFFMAN_MAX_TABLE_SIZE, br); + var block_type; + if (type_code === 0) { + block_type = ringbuffers[ringbuffer + (indexes[index] & 1)]; + } else if (type_code === 1) { + block_type = ringbuffers[ringbuffer + ((indexes[index] - 1) & 1)] + 1; + } else { + block_type = type_code - 2; + } + if (block_type >= max_block_type) { + block_type -= max_block_type; + } + block_types[tree_type] = block_type; + ringbuffers[ringbuffer + (indexes[index] & 1)] = block_type; + ++indexes[index]; +} + +function CopyUncompressedBlockToOutput(output, len, pos, ringbuffer, ringbuffer_mask, br) { + var rb_size = ringbuffer_mask + 1; + var rb_pos = pos & ringbuffer_mask; + var br_pos = br.pos_ & BrotliBitReader.IBUF_MASK; + var nbytes; + + /* For short lengths copy byte-by-byte */ + if (len < 8 || br.bit_pos_ + (len << 3) < br.bit_end_pos_) { + while (len-- > 0) { + br.readMoreInput(); + ringbuffer[rb_pos++] = br.readBits(8); + if (rb_pos === rb_size) { + output.write(ringbuffer, rb_size); + rb_pos = 0; + } + } + return; + } + + if (br.bit_end_pos_ < 32) { + throw new Error('[CopyUncompressedBlockToOutput] br.bit_end_pos_ < 32'); + } + + /* Copy remaining 0-4 bytes from br.val_ to ringbuffer. */ + while (br.bit_pos_ < 32) { + ringbuffer[rb_pos] = (br.val_ >>> br.bit_pos_); + br.bit_pos_ += 8; + ++rb_pos; + --len; + } + + /* Copy remaining bytes from br.buf_ to ringbuffer. */ + nbytes = (br.bit_end_pos_ - br.bit_pos_) >> 3; + if (br_pos + nbytes > BrotliBitReader.IBUF_MASK) { + var tail = BrotliBitReader.IBUF_MASK + 1 - br_pos; + for (var x = 0; x < tail; x++) + ringbuffer[rb_pos + x] = br.buf_[br_pos + x]; + + nbytes -= tail; + rb_pos += tail; + len -= tail; + br_pos = 0; + } + + for (var x = 0; x < nbytes; x++) + ringbuffer[rb_pos + x] = br.buf_[br_pos + x]; + + rb_pos += nbytes; + len -= nbytes; + + /* If we wrote past the logical end of the ringbuffer, copy the tail of the + ringbuffer to its beginning and flush the ringbuffer to the output. */ + if (rb_pos >= rb_size) { + output.write(ringbuffer, rb_size); + rb_pos -= rb_size; + for (var x = 0; x < rb_pos; x++) + ringbuffer[x] = ringbuffer[rb_size + x]; + } + + /* If we have more to copy than the remaining size of the ringbuffer, then we + first fill the ringbuffer from the input and then flush the ringbuffer to + the output */ + while (rb_pos + len >= rb_size) { + nbytes = rb_size - rb_pos; + if (br.input_.read(ringbuffer, rb_pos, nbytes) < nbytes) { + throw new Error('[CopyUncompressedBlockToOutput] not enough bytes'); + } + output.write(ringbuffer, rb_size); + len -= nbytes; + rb_pos = 0; + } + + /* Copy straight from the input onto the ringbuffer. The ringbuffer will be + flushed to the output at a later time. */ + if (br.input_.read(ringbuffer, rb_pos, len) < len) { + throw new Error('[CopyUncompressedBlockToOutput] not enough bytes'); + } + + /* Restore the state of the bit reader. */ + br.reset(); +} + +/* Advances the bit reader position to the next byte boundary and verifies + that any skipped bits are set to zero. */ +function JumpToByteBoundary(br) { + var new_bit_pos = (br.bit_pos_ + 7) & ~7; + var pad_bits = br.readBits(new_bit_pos - br.bit_pos_); + return pad_bits == 0; +} + +function BrotliDecompressedSize(buffer) { + var input = new BrotliInput(buffer); + var br = new BrotliBitReader(input); + DecodeWindowBits(br); + var out = DecodeMetaBlockLength(br); + return out.meta_block_length; +} + +exports.BrotliDecompressedSize = BrotliDecompressedSize; + +function BrotliDecompressBuffer(buffer, output_size) { + var input = new BrotliInput(buffer); + + if (output_size == null) { + output_size = BrotliDecompressedSize(buffer); + } + + var output_buffer = new Uint8Array(output_size); + var output = new BrotliOutput(output_buffer); + + BrotliDecompress(input, output); + + if (output.pos < output.buffer.length) { + output.buffer = output.buffer.subarray(0, output.pos); + } + + return output.buffer; +} + +exports.BrotliDecompressBuffer = BrotliDecompressBuffer; + +function BrotliDecompress(input, output) { + var i; + var pos = 0; + var input_end = 0; + var window_bits = 0; + var max_backward_distance; + var max_distance = 0; + var ringbuffer_size; + var ringbuffer_mask; + var ringbuffer; + var ringbuffer_end; + /* This ring buffer holds a few past copy distances that will be used by */ + /* some special distance codes. */ + var dist_rb = [ 16, 15, 11, 4 ]; + var dist_rb_idx = 0; + /* The previous 2 bytes used for context. */ + var prev_byte1 = 0; + var prev_byte2 = 0; + var hgroup = [new HuffmanTreeGroup(0, 0), new HuffmanTreeGroup(0, 0), new HuffmanTreeGroup(0, 0)]; + var block_type_trees; + var block_len_trees; + var br; + + /* We need the slack region for the following reasons: + - always doing two 8-byte copies for fast backward copying + - transforms + - flushing the input ringbuffer when decoding uncompressed blocks */ + var kRingBufferWriteAheadSlack = 128 + BrotliBitReader.READ_SIZE; + + br = new BrotliBitReader(input); + + /* Decode window size. */ + window_bits = DecodeWindowBits(br); + max_backward_distance = (1 << window_bits) - 16; + + ringbuffer_size = 1 << window_bits; + ringbuffer_mask = ringbuffer_size - 1; + ringbuffer = new Uint8Array(ringbuffer_size + kRingBufferWriteAheadSlack + BrotliDictionary.maxDictionaryWordLength); + ringbuffer_end = ringbuffer_size; + + block_type_trees = []; + block_len_trees = []; + for (var x = 0; x < 3 * HUFFMAN_MAX_TABLE_SIZE; x++) { + block_type_trees[x] = new HuffmanCode(0, 0); + block_len_trees[x] = new HuffmanCode(0, 0); + } + + while (!input_end) { + var meta_block_remaining_len = 0; + var is_uncompressed; + var block_length = [ 1 << 28, 1 << 28, 1 << 28 ]; + var block_type = [ 0 ]; + var num_block_types = [ 1, 1, 1 ]; + var block_type_rb = [ 0, 1, 0, 1, 0, 1 ]; + var block_type_rb_index = [ 0 ]; + var distance_postfix_bits; + var num_direct_distance_codes; + var distance_postfix_mask; + var num_distance_codes; + var context_map = null; + var context_modes = null; + var num_literal_htrees; + var dist_context_map = null; + var num_dist_htrees; + var context_offset = 0; + var context_map_slice = null; + var literal_htree_index = 0; + var dist_context_offset = 0; + var dist_context_map_slice = null; + var dist_htree_index = 0; + var context_lookup_offset1 = 0; + var context_lookup_offset2 = 0; + var context_mode; + var htree_command; + + for (i = 0; i < 3; ++i) { + hgroup[i].codes = null; + hgroup[i].htrees = null; + } + + br.readMoreInput(); + + var _out = DecodeMetaBlockLength(br); + meta_block_remaining_len = _out.meta_block_length; + if (pos + meta_block_remaining_len > output.buffer.length) { + /* We need to grow the output buffer to fit the additional data. */ + var tmp = new Uint8Array( pos + meta_block_remaining_len ); + tmp.set( output.buffer ); + output.buffer = tmp; + } + input_end = _out.input_end; + is_uncompressed = _out.is_uncompressed; + + if (_out.is_metadata) { + JumpToByteBoundary(br); + + for (; meta_block_remaining_len > 0; --meta_block_remaining_len) { + br.readMoreInput(); + /* Read one byte and ignore it. */ + br.readBits(8); + } + + continue; + } + + if (meta_block_remaining_len === 0) { + continue; + } + + if (is_uncompressed) { + br.bit_pos_ = (br.bit_pos_ + 7) & ~7; + CopyUncompressedBlockToOutput(output, meta_block_remaining_len, pos, + ringbuffer, ringbuffer_mask, br); + pos += meta_block_remaining_len; + continue; + } + + for (i = 0; i < 3; ++i) { + num_block_types[i] = DecodeVarLenUint8(br) + 1; + if (num_block_types[i] >= 2) { + ReadHuffmanCode(num_block_types[i] + 2, block_type_trees, i * HUFFMAN_MAX_TABLE_SIZE, br); + ReadHuffmanCode(kNumBlockLengthCodes, block_len_trees, i * HUFFMAN_MAX_TABLE_SIZE, br); + block_length[i] = ReadBlockLength(block_len_trees, i * HUFFMAN_MAX_TABLE_SIZE, br); + block_type_rb_index[i] = 1; + } + } + + br.readMoreInput(); + + distance_postfix_bits = br.readBits(2); + num_direct_distance_codes = NUM_DISTANCE_SHORT_CODES + (br.readBits(4) << distance_postfix_bits); + distance_postfix_mask = (1 << distance_postfix_bits) - 1; + num_distance_codes = (num_direct_distance_codes + (48 << distance_postfix_bits)); + context_modes = new Uint8Array(num_block_types[0]); + + for (i = 0; i < num_block_types[0]; ++i) { + br.readMoreInput(); + context_modes[i] = (br.readBits(2) << 1); + } + + var _o1 = DecodeContextMap(num_block_types[0] << kLiteralContextBits, br); + num_literal_htrees = _o1.num_htrees; + context_map = _o1.context_map; + + var _o2 = DecodeContextMap(num_block_types[2] << kDistanceContextBits, br); + num_dist_htrees = _o2.num_htrees; + dist_context_map = _o2.context_map; + + hgroup[0] = new HuffmanTreeGroup(kNumLiteralCodes, num_literal_htrees); + hgroup[1] = new HuffmanTreeGroup(kNumInsertAndCopyCodes, num_block_types[1]); + hgroup[2] = new HuffmanTreeGroup(num_distance_codes, num_dist_htrees); + + for (i = 0; i < 3; ++i) { + hgroup[i].decode(br); + } + + context_map_slice = 0; + dist_context_map_slice = 0; + context_mode = context_modes[block_type[0]]; + context_lookup_offset1 = Context.lookupOffsets[context_mode]; + context_lookup_offset2 = Context.lookupOffsets[context_mode + 1]; + htree_command = hgroup[1].htrees[0]; + + while (meta_block_remaining_len > 0) { + var cmd_code; + var range_idx; + var insert_code; + var copy_code; + var insert_length; + var copy_length; + var distance_code; + var distance; + var context; + var j; + var copy_dst; + + br.readMoreInput(); + + if (block_length[1] === 0) { + DecodeBlockType(num_block_types[1], + block_type_trees, 1, block_type, block_type_rb, + block_type_rb_index, br); + block_length[1] = ReadBlockLength(block_len_trees, HUFFMAN_MAX_TABLE_SIZE, br); + htree_command = hgroup[1].htrees[block_type[1]]; + } + --block_length[1]; + cmd_code = ReadSymbol(hgroup[1].codes, htree_command, br); + range_idx = cmd_code >> 6; + if (range_idx >= 2) { + range_idx -= 2; + distance_code = -1; + } else { + distance_code = 0; + } + insert_code = Prefix.kInsertRangeLut[range_idx] + ((cmd_code >> 3) & 7); + copy_code = Prefix.kCopyRangeLut[range_idx] + (cmd_code & 7); + insert_length = Prefix.kInsertLengthPrefixCode[insert_code].offset + + br.readBits(Prefix.kInsertLengthPrefixCode[insert_code].nbits); + copy_length = Prefix.kCopyLengthPrefixCode[copy_code].offset + + br.readBits(Prefix.kCopyLengthPrefixCode[copy_code].nbits); + prev_byte1 = ringbuffer[pos-1 & ringbuffer_mask]; + prev_byte2 = ringbuffer[pos-2 & ringbuffer_mask]; + for (j = 0; j < insert_length; ++j) { + br.readMoreInput(); + + if (block_length[0] === 0) { + DecodeBlockType(num_block_types[0], + block_type_trees, 0, block_type, block_type_rb, + block_type_rb_index, br); + block_length[0] = ReadBlockLength(block_len_trees, 0, br); + context_offset = block_type[0] << kLiteralContextBits; + context_map_slice = context_offset; + context_mode = context_modes[block_type[0]]; + context_lookup_offset1 = Context.lookupOffsets[context_mode]; + context_lookup_offset2 = Context.lookupOffsets[context_mode + 1]; + } + context = (Context.lookup[context_lookup_offset1 + prev_byte1] | + Context.lookup[context_lookup_offset2 + prev_byte2]); + literal_htree_index = context_map[context_map_slice + context]; + --block_length[0]; + prev_byte2 = prev_byte1; + prev_byte1 = ReadSymbol(hgroup[0].codes, hgroup[0].htrees[literal_htree_index], br); + ringbuffer[pos & ringbuffer_mask] = prev_byte1; + if ((pos & ringbuffer_mask) === ringbuffer_mask) { + output.write(ringbuffer, ringbuffer_size); + } + ++pos; + } + meta_block_remaining_len -= insert_length; + if (meta_block_remaining_len <= 0) break; + + if (distance_code < 0) { + var context; + + br.readMoreInput(); + if (block_length[2] === 0) { + DecodeBlockType(num_block_types[2], + block_type_trees, 2, block_type, block_type_rb, + block_type_rb_index, br); + block_length[2] = ReadBlockLength(block_len_trees, 2 * HUFFMAN_MAX_TABLE_SIZE, br); + dist_context_offset = block_type[2] << kDistanceContextBits; + dist_context_map_slice = dist_context_offset; + } + --block_length[2]; + context = (copy_length > 4 ? 3 : copy_length - 2) & 0xff; + dist_htree_index = dist_context_map[dist_context_map_slice + context]; + distance_code = ReadSymbol(hgroup[2].codes, hgroup[2].htrees[dist_htree_index], br); + if (distance_code >= num_direct_distance_codes) { + var nbits; + var postfix; + var offset; + distance_code -= num_direct_distance_codes; + postfix = distance_code & distance_postfix_mask; + distance_code >>= distance_postfix_bits; + nbits = (distance_code >> 1) + 1; + offset = ((2 + (distance_code & 1)) << nbits) - 4; + distance_code = num_direct_distance_codes + + ((offset + br.readBits(nbits)) << + distance_postfix_bits) + postfix; + } + } + + /* Convert the distance code to the actual distance by possibly looking */ + /* up past distnaces from the ringbuffer. */ + distance = TranslateShortCodes(distance_code, dist_rb, dist_rb_idx); + if (distance < 0) { + throw new Error('[BrotliDecompress] invalid distance'); + } + + if (pos < max_backward_distance && + max_distance !== max_backward_distance) { + max_distance = pos; + } else { + max_distance = max_backward_distance; + } + + copy_dst = pos & ringbuffer_mask; + + if (distance > max_distance) { + if (copy_length >= BrotliDictionary.minDictionaryWordLength && + copy_length <= BrotliDictionary.maxDictionaryWordLength) { + var offset = BrotliDictionary.offsetsByLength[copy_length]; + var word_id = distance - max_distance - 1; + var shift = BrotliDictionary.sizeBitsByLength[copy_length]; + var mask = (1 << shift) - 1; + var word_idx = word_id & mask; + var transform_idx = word_id >> shift; + offset += word_idx * copy_length; + if (transform_idx < Transform.kNumTransforms) { + var len = Transform.transformDictionaryWord(ringbuffer, copy_dst, offset, copy_length, transform_idx); + copy_dst += len; + pos += len; + meta_block_remaining_len -= len; + if (copy_dst >= ringbuffer_end) { + output.write(ringbuffer, ringbuffer_size); + + for (var _x = 0; _x < (copy_dst - ringbuffer_end); _x++) + ringbuffer[_x] = ringbuffer[ringbuffer_end + _x]; + } + } else { + throw new Error("Invalid backward reference. pos: " + pos + " distance: " + distance + + " len: " + copy_length + " bytes left: " + meta_block_remaining_len); + } + } else { + throw new Error("Invalid backward reference. pos: " + pos + " distance: " + distance + + " len: " + copy_length + " bytes left: " + meta_block_remaining_len); + } + } else { + if (distance_code > 0) { + dist_rb[dist_rb_idx & 3] = distance; + ++dist_rb_idx; + } + + if (copy_length > meta_block_remaining_len) { + throw new Error("Invalid backward reference. pos: " + pos + " distance: " + distance + + " len: " + copy_length + " bytes left: " + meta_block_remaining_len); + } + + for (j = 0; j < copy_length; ++j) { + ringbuffer[pos & ringbuffer_mask] = ringbuffer[(pos - distance) & ringbuffer_mask]; + if ((pos & ringbuffer_mask) === ringbuffer_mask) { + output.write(ringbuffer, ringbuffer_size); + } + ++pos; + --meta_block_remaining_len; + } + } + + /* When we get here, we must have inserted at least one literal and */ + /* made a copy of at least length two, therefore accessing the last 2 */ + /* bytes is valid. */ + prev_byte1 = ringbuffer[(pos - 1) & ringbuffer_mask]; + prev_byte2 = ringbuffer[(pos - 2) & ringbuffer_mask]; + } + + /* Protect pos from overflow, wrap it around at every GB of input data */ + pos &= 0x3fffffff; + } + + output.write(ringbuffer, pos & ringbuffer_mask); +} + +exports.BrotliDecompress = BrotliDecompress; + +BrotliDictionary.init(); + +},{"./bit_reader":1,"./context":2,"./dictionary":6,"./huffman":7,"./prefix":9,"./streams":10,"./transform":11}],4:[function(require,module,exports){ +var base64 = require('base64-js'); +//var fs = require('fs'); + +/** + * The normal dictionary-data.js is quite large, which makes it + * unsuitable for browser usage. In order to make it smaller, + * we read dictionary.bin, which is a compressed version of + * the dictionary, and on initial load, Brotli decompresses + * it's own dictionary. 😜 + */ +exports.init = function() { + var BrotliDecompressBuffer = require('./decode').BrotliDecompressBuffer; + var compressed = base64.toByteArray(require('./dictionary.bin.js')); + return BrotliDecompressBuffer(compressed); +}; + +},{"./decode":3,"./dictionary.bin.js":5,"base64-js":8}],5:[function(require,module,exports){ +module.exports="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"; + +},{}],6:[function(require,module,exports){ +/* Copyright 2013 Google Inc. All Rights Reserved. + + Licensed 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. + + Collection of static dictionary words. +*/ + +var data = require('./dictionary-browser'); +exports.init = function() { + exports.dictionary = data.init(); +}; + +exports.offsetsByLength = new Uint32Array([ + 0, 0, 0, 0, 0, 4096, 9216, 21504, 35840, 44032, + 53248, 63488, 74752, 87040, 93696, 100864, 104704, 106752, 108928, 113536, + 115968, 118528, 119872, 121280, 122016, +]); + +exports.sizeBitsByLength = new Uint8Array([ + 0, 0, 0, 0, 10, 10, 11, 11, 10, 10, + 10, 10, 10, 9, 9, 8, 7, 7, 8, 7, + 7, 6, 6, 5, 5, +]); + +exports.minDictionaryWordLength = 4; +exports.maxDictionaryWordLength = 24; + +},{"./dictionary-browser":4}],7:[function(require,module,exports){ +function HuffmanCode(bits, value) { + this.bits = bits; /* number of bits used for this symbol */ + this.value = value; /* symbol value or table offset */ +} + +exports.HuffmanCode = HuffmanCode; + +var MAX_LENGTH = 15; + +/* Returns reverse(reverse(key, len) + 1, len), where reverse(key, len) is the + bit-wise reversal of the len least significant bits of key. */ +function GetNextKey(key, len) { + var step = 1 << (len - 1); + while (key & step) { + step >>= 1; + } + return (key & (step - 1)) + step; +} + +/* Stores code in table[0], table[step], table[2*step], ..., table[end] */ +/* Assumes that end is an integer multiple of step */ +function ReplicateValue(table, i, step, end, code) { + do { + end -= step; + table[i + end] = new HuffmanCode(code.bits, code.value); + } while (end > 0); +} + +/* Returns the table width of the next 2nd level table. count is the histogram + of bit lengths for the remaining symbols, len is the code length of the next + processed symbol */ +function NextTableBitSize(count, len, root_bits) { + var left = 1 << (len - root_bits); + while (len < MAX_LENGTH) { + left -= count[len]; + if (left <= 0) break; + ++len; + left <<= 1; + } + return len - root_bits; +} + +exports.BrotliBuildHuffmanTable = function(root_table, table, root_bits, code_lengths, code_lengths_size) { + var start_table = table; + var code; /* current table entry */ + var len; /* current code length */ + var symbol; /* symbol index in original or sorted table */ + var key; /* reversed prefix code */ + var step; /* step size to replicate values in current table */ + var low; /* low bits for current root entry */ + var mask; /* mask for low bits */ + var table_bits; /* key length of current table */ + var table_size; /* size of current table */ + var total_size; /* sum of root table size and 2nd level table sizes */ + var sorted; /* symbols sorted by code length */ + var count = new Int32Array(MAX_LENGTH + 1); /* number of codes of each length */ + var offset = new Int32Array(MAX_LENGTH + 1); /* offsets in sorted table for each length */ + + sorted = new Int32Array(code_lengths_size); + + /* build histogram of code lengths */ + for (symbol = 0; symbol < code_lengths_size; symbol++) { + count[code_lengths[symbol]]++; + } + + /* generate offsets into sorted symbol table by code length */ + offset[1] = 0; + for (len = 1; len < MAX_LENGTH; len++) { + offset[len + 1] = offset[len] + count[len]; + } + + /* sort symbols by length, by symbol order within each length */ + for (symbol = 0; symbol < code_lengths_size; symbol++) { + if (code_lengths[symbol] !== 0) { + sorted[offset[code_lengths[symbol]]++] = symbol; + } + } + + table_bits = root_bits; + table_size = 1 << table_bits; + total_size = table_size; + + /* special case code with only one value */ + if (offset[MAX_LENGTH] === 1) { + for (key = 0; key < total_size; ++key) { + root_table[table + key] = new HuffmanCode(0, sorted[0] & 0xffff); + } + + return total_size; + } + + /* fill in root table */ + key = 0; + symbol = 0; + for (len = 1, step = 2; len <= root_bits; ++len, step <<= 1) { + for (; count[len] > 0; --count[len]) { + code = new HuffmanCode(len & 0xff, sorted[symbol++] & 0xffff); + ReplicateValue(root_table, table + key, step, table_size, code); + key = GetNextKey(key, len); + } + } + + /* fill in 2nd level tables and add pointers to root table */ + mask = total_size - 1; + low = -1; + for (len = root_bits + 1, step = 2; len <= MAX_LENGTH; ++len, step <<= 1) { + for (; count[len] > 0; --count[len]) { + if ((key & mask) !== low) { + table += table_size; + table_bits = NextTableBitSize(count, len, root_bits); + table_size = 1 << table_bits; + total_size += table_size; + low = key & mask; + root_table[start_table + low] = new HuffmanCode((table_bits + root_bits) & 0xff, ((table - start_table) - low) & 0xffff); + } + code = new HuffmanCode((len - root_bits) & 0xff, sorted[symbol++] & 0xffff); + ReplicateValue(root_table, table + (key >> root_bits), step, table_size, code); + key = GetNextKey(key, len); + } + } + + return total_size; +} + +},{}],8:[function(require,module,exports){ +'use strict' + +exports.byteLength = byteLength +exports.toByteArray = toByteArray +exports.fromByteArray = fromByteArray + +var lookup = [] +var revLookup = [] +var Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array + +var code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/' +for (var i = 0, len = code.length; i < len; ++i) { + lookup[i] = code[i] + revLookup[code.charCodeAt(i)] = i +} + +// Support decoding URL-safe base64 strings, as Node.js does. +// See: https://en.wikipedia.org/wiki/Base64#URL_applications +revLookup['-'.charCodeAt(0)] = 62 +revLookup['_'.charCodeAt(0)] = 63 + +function getLens (b64) { + var len = b64.length + + if (len % 4 > 0) { + throw new Error('Invalid string. Length must be a multiple of 4') + } + + // Trim off extra bytes after placeholder bytes are found + // See: https://github.com/beatgammit/base64-js/issues/42 + var validLen = b64.indexOf('=') + if (validLen === -1) validLen = len + + var placeHoldersLen = validLen === len + ? 0 + : 4 - (validLen % 4) + + return [validLen, placeHoldersLen] +} + +// base64 is 4/3 + up to two characters of the original data +function byteLength (b64) { + var lens = getLens(b64) + var validLen = lens[0] + var placeHoldersLen = lens[1] + return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen +} + +function _byteLength (b64, validLen, placeHoldersLen) { + return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen +} + +function toByteArray (b64) { + var tmp + var lens = getLens(b64) + var validLen = lens[0] + var placeHoldersLen = lens[1] + + var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen)) + + var curByte = 0 + + // if there are placeholders, only get up to the last complete 4 chars + var len = placeHoldersLen > 0 + ? validLen - 4 + : validLen + + for (var i = 0; i < len; i += 4) { + tmp = + (revLookup[b64.charCodeAt(i)] << 18) | + (revLookup[b64.charCodeAt(i + 1)] << 12) | + (revLookup[b64.charCodeAt(i + 2)] << 6) | + revLookup[b64.charCodeAt(i + 3)] + arr[curByte++] = (tmp >> 16) & 0xFF + arr[curByte++] = (tmp >> 8) & 0xFF + arr[curByte++] = tmp & 0xFF + } + + if (placeHoldersLen === 2) { + tmp = + (revLookup[b64.charCodeAt(i)] << 2) | + (revLookup[b64.charCodeAt(i + 1)] >> 4) + arr[curByte++] = tmp & 0xFF + } + + if (placeHoldersLen === 1) { + tmp = + (revLookup[b64.charCodeAt(i)] << 10) | + (revLookup[b64.charCodeAt(i + 1)] << 4) | + (revLookup[b64.charCodeAt(i + 2)] >> 2) + arr[curByte++] = (tmp >> 8) & 0xFF + arr[curByte++] = tmp & 0xFF + } + + return arr +} + +function tripletToBase64 (num) { + return lookup[num >> 18 & 0x3F] + + lookup[num >> 12 & 0x3F] + + lookup[num >> 6 & 0x3F] + + lookup[num & 0x3F] +} + +function encodeChunk (uint8, start, end) { + var tmp + var output = [] + for (var i = start; i < end; i += 3) { + tmp = + ((uint8[i] << 16) & 0xFF0000) + + ((uint8[i + 1] << 8) & 0xFF00) + + (uint8[i + 2] & 0xFF) + output.push(tripletToBase64(tmp)) + } + return output.join('') +} + +function fromByteArray (uint8) { + var tmp + var len = uint8.length + var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes + var parts = [] + var maxChunkLength = 16383 // must be multiple of 3 + + // go through the array every three bytes, we'll deal with trailing stuff later + for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) { + parts.push(encodeChunk( + uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength) + )) + } + + // pad the end with zeros, but make sure to not forget the extra bytes + if (extraBytes === 1) { + tmp = uint8[len - 1] + parts.push( + lookup[tmp >> 2] + + lookup[(tmp << 4) & 0x3F] + + '==' + ) + } else if (extraBytes === 2) { + tmp = (uint8[len - 2] << 8) + uint8[len - 1] + parts.push( + lookup[tmp >> 10] + + lookup[(tmp >> 4) & 0x3F] + + lookup[(tmp << 2) & 0x3F] + + '=' + ) + } + + return parts.join('') +} + +},{}],9:[function(require,module,exports){ +/* Copyright 2013 Google Inc. All Rights Reserved. + + Licensed 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. + + Lookup tables to map prefix codes to value ranges. This is used during + decoding of the block lengths, literal insertion lengths and copy lengths. +*/ + +/* Represents the range of values belonging to a prefix code: */ +/* [offset, offset + 2^nbits) */ +function PrefixCodeRange(offset, nbits) { + this.offset = offset; + this.nbits = nbits; +} + +exports.kBlockLengthPrefixCode = [ + new PrefixCodeRange(1, 2), new PrefixCodeRange(5, 2), new PrefixCodeRange(9, 2), new PrefixCodeRange(13, 2), + new PrefixCodeRange(17, 3), new PrefixCodeRange(25, 3), new PrefixCodeRange(33, 3), new PrefixCodeRange(41, 3), + new PrefixCodeRange(49, 4), new PrefixCodeRange(65, 4), new PrefixCodeRange(81, 4), new PrefixCodeRange(97, 4), + new PrefixCodeRange(113, 5), new PrefixCodeRange(145, 5), new PrefixCodeRange(177, 5), new PrefixCodeRange(209, 5), + new PrefixCodeRange(241, 6), new PrefixCodeRange(305, 6), new PrefixCodeRange(369, 7), new PrefixCodeRange(497, 8), + new PrefixCodeRange(753, 9), new PrefixCodeRange(1265, 10), new PrefixCodeRange(2289, 11), new PrefixCodeRange(4337, 12), + new PrefixCodeRange(8433, 13), new PrefixCodeRange(16625, 24) +]; + +exports.kInsertLengthPrefixCode = [ + new PrefixCodeRange(0, 0), new PrefixCodeRange(1, 0), new PrefixCodeRange(2, 0), new PrefixCodeRange(3, 0), + new PrefixCodeRange(4, 0), new PrefixCodeRange(5, 0), new PrefixCodeRange(6, 1), new PrefixCodeRange(8, 1), + new PrefixCodeRange(10, 2), new PrefixCodeRange(14, 2), new PrefixCodeRange(18, 3), new PrefixCodeRange(26, 3), + new PrefixCodeRange(34, 4), new PrefixCodeRange(50, 4), new PrefixCodeRange(66, 5), new PrefixCodeRange(98, 5), + new PrefixCodeRange(130, 6), new PrefixCodeRange(194, 7), new PrefixCodeRange(322, 8), new PrefixCodeRange(578, 9), + new PrefixCodeRange(1090, 10), new PrefixCodeRange(2114, 12), new PrefixCodeRange(6210, 14), new PrefixCodeRange(22594, 24), +]; + +exports.kCopyLengthPrefixCode = [ + new PrefixCodeRange(2, 0), new PrefixCodeRange(3, 0), new PrefixCodeRange(4, 0), new PrefixCodeRange(5, 0), + new PrefixCodeRange(6, 0), new PrefixCodeRange(7, 0), new PrefixCodeRange(8, 0), new PrefixCodeRange(9, 0), + new PrefixCodeRange(10, 1), new PrefixCodeRange(12, 1), new PrefixCodeRange(14, 2), new PrefixCodeRange(18, 2), + new PrefixCodeRange(22, 3), new PrefixCodeRange(30, 3), new PrefixCodeRange(38, 4), new PrefixCodeRange(54, 4), + new PrefixCodeRange(70, 5), new PrefixCodeRange(102, 5), new PrefixCodeRange(134, 6), new PrefixCodeRange(198, 7), + new PrefixCodeRange(326, 8), new PrefixCodeRange(582, 9), new PrefixCodeRange(1094, 10), new PrefixCodeRange(2118, 24), +]; + +exports.kInsertRangeLut = [ + 0, 0, 8, 8, 0, 16, 8, 16, 16, +]; + +exports.kCopyRangeLut = [ + 0, 8, 0, 8, 16, 0, 16, 8, 16, +]; + +},{}],10:[function(require,module,exports){ +function BrotliInput(buffer) { + this.buffer = buffer; + this.pos = 0; +} + +BrotliInput.prototype.read = function(buf, i, count) { + if (this.pos + count > this.buffer.length) { + count = this.buffer.length - this.pos; + } + + for (var p = 0; p < count; p++) + buf[i + p] = this.buffer[this.pos + p]; + + this.pos += count; + return count; +} + +exports.BrotliInput = BrotliInput; + +function BrotliOutput(buf) { + this.buffer = buf; + this.pos = 0; +} + +BrotliOutput.prototype.write = function(buf, count) { + if (this.pos + count > this.buffer.length) + throw new Error('Output buffer is not large enough'); + + this.buffer.set(buf.subarray(0, count), this.pos); + this.pos += count; + return count; +}; + +exports.BrotliOutput = BrotliOutput; + +},{}],11:[function(require,module,exports){ +/* Copyright 2013 Google Inc. All Rights Reserved. + + Licensed 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. + + Transformations on dictionary words. +*/ + +var BrotliDictionary = require('./dictionary'); + +var kIdentity = 0; +var kOmitLast1 = 1; +var kOmitLast2 = 2; +var kOmitLast3 = 3; +var kOmitLast4 = 4; +var kOmitLast5 = 5; +var kOmitLast6 = 6; +var kOmitLast7 = 7; +var kOmitLast8 = 8; +var kOmitLast9 = 9; +var kUppercaseFirst = 10; +var kUppercaseAll = 11; +var kOmitFirst1 = 12; +var kOmitFirst2 = 13; +var kOmitFirst3 = 14; +var kOmitFirst4 = 15; +var kOmitFirst5 = 16; +var kOmitFirst6 = 17; +var kOmitFirst7 = 18; +var kOmitFirst8 = 19; +var kOmitFirst9 = 20; + +function Transform(prefix, transform, suffix) { + this.prefix = new Uint8Array(prefix.length); + this.transform = transform; + this.suffix = new Uint8Array(suffix.length); + + for (var i = 0; i < prefix.length; i++) + this.prefix[i] = prefix.charCodeAt(i); + + for (var i = 0; i < suffix.length; i++) + this.suffix[i] = suffix.charCodeAt(i); +} + +var kTransforms = [ + new Transform( "", kIdentity, "" ), + new Transform( "", kIdentity, " " ), + new Transform( " ", kIdentity, " " ), + new Transform( "", kOmitFirst1, "" ), + new Transform( "", kUppercaseFirst, " " ), + new Transform( "", kIdentity, " the " ), + new Transform( " ", kIdentity, "" ), + new Transform( "s ", kIdentity, " " ), + new Transform( "", kIdentity, " of " ), + new Transform( "", kUppercaseFirst, "" ), + new Transform( "", kIdentity, " and " ), + new Transform( "", kOmitFirst2, "" ), + new Transform( "", kOmitLast1, "" ), + new Transform( ", ", kIdentity, " " ), + new Transform( "", kIdentity, ", " ), + new Transform( " ", kUppercaseFirst, " " ), + new Transform( "", kIdentity, " in " ), + new Transform( "", kIdentity, " to " ), + new Transform( "e ", kIdentity, " " ), + new Transform( "", kIdentity, "\"" ), + new Transform( "", kIdentity, "." ), + new Transform( "", kIdentity, "\">" ), + new Transform( "", kIdentity, "\n" ), + new Transform( "", kOmitLast3, "" ), + new Transform( "", kIdentity, "]" ), + new Transform( "", kIdentity, " for " ), + new Transform( "", kOmitFirst3, "" ), + new Transform( "", kOmitLast2, "" ), + new Transform( "", kIdentity, " a " ), + new Transform( "", kIdentity, " that " ), + new Transform( " ", kUppercaseFirst, "" ), + new Transform( "", kIdentity, ". " ), + new Transform( ".", kIdentity, "" ), + new Transform( " ", kIdentity, ", " ), + new Transform( "", kOmitFirst4, "" ), + new Transform( "", kIdentity, " with " ), + new Transform( "", kIdentity, "'" ), + new Transform( "", kIdentity, " from " ), + new Transform( "", kIdentity, " by " ), + new Transform( "", kOmitFirst5, "" ), + new Transform( "", kOmitFirst6, "" ), + new Transform( " the ", kIdentity, "" ), + new Transform( "", kOmitLast4, "" ), + new Transform( "", kIdentity, ". The " ), + new Transform( "", kUppercaseAll, "" ), + new Transform( "", kIdentity, " on " ), + new Transform( "", kIdentity, " as " ), + new Transform( "", kIdentity, " is " ), + new Transform( "", kOmitLast7, "" ), + new Transform( "", kOmitLast1, "ing " ), + new Transform( "", kIdentity, "\n\t" ), + new Transform( "", kIdentity, ":" ), + new Transform( " ", kIdentity, ". " ), + new Transform( "", kIdentity, "ed " ), + new Transform( "", kOmitFirst9, "" ), + new Transform( "", kOmitFirst7, "" ), + new Transform( "", kOmitLast6, "" ), + new Transform( "", kIdentity, "(" ), + new Transform( "", kUppercaseFirst, ", " ), + new Transform( "", kOmitLast8, "" ), + new Transform( "", kIdentity, " at " ), + new Transform( "", kIdentity, "ly " ), + new Transform( " the ", kIdentity, " of " ), + new Transform( "", kOmitLast5, "" ), + new Transform( "", kOmitLast9, "" ), + new Transform( " ", kUppercaseFirst, ", " ), + new Transform( "", kUppercaseFirst, "\"" ), + new Transform( ".", kIdentity, "(" ), + new Transform( "", kUppercaseAll, " " ), + new Transform( "", kUppercaseFirst, "\">" ), + new Transform( "", kIdentity, "=\"" ), + new Transform( " ", kIdentity, "." ), + new Transform( ".com/", kIdentity, "" ), + new Transform( " the ", kIdentity, " of the " ), + new Transform( "", kUppercaseFirst, "'" ), + new Transform( "", kIdentity, ". This " ), + new Transform( "", kIdentity, "," ), + new Transform( ".", kIdentity, " " ), + new Transform( "", kUppercaseFirst, "(" ), + new Transform( "", kUppercaseFirst, "." ), + new Transform( "", kIdentity, " not " ), + new Transform( " ", kIdentity, "=\"" ), + new Transform( "", kIdentity, "er " ), + new Transform( " ", kUppercaseAll, " " ), + new Transform( "", kIdentity, "al " ), + new Transform( " ", kUppercaseAll, "" ), + new Transform( "", kIdentity, "='" ), + new Transform( "", kUppercaseAll, "\"" ), + new Transform( "", kUppercaseFirst, ". " ), + new Transform( " ", kIdentity, "(" ), + new Transform( "", kIdentity, "ful " ), + new Transform( " ", kUppercaseFirst, ". " ), + new Transform( "", kIdentity, "ive " ), + new Transform( "", kIdentity, "less " ), + new Transform( "", kUppercaseAll, "'" ), + new Transform( "", kIdentity, "est " ), + new Transform( " ", kUppercaseFirst, "." ), + new Transform( "", kUppercaseAll, "\">" ), + new Transform( " ", kIdentity, "='" ), + new Transform( "", kUppercaseFirst, "," ), + new Transform( "", kIdentity, "ize " ), + new Transform( "", kUppercaseAll, "." ), + new Transform( "\xc2\xa0", kIdentity, "" ), + new Transform( " ", kIdentity, "," ), + new Transform( "", kUppercaseFirst, "=\"" ), + new Transform( "", kUppercaseAll, "=\"" ), + new Transform( "", kIdentity, "ous " ), + new Transform( "", kUppercaseAll, ", " ), + new Transform( "", kUppercaseFirst, "='" ), + new Transform( " ", kUppercaseFirst, "," ), + new Transform( " ", kUppercaseAll, "=\"" ), + new Transform( " ", kUppercaseAll, ", " ), + new Transform( "", kUppercaseAll, "," ), + new Transform( "", kUppercaseAll, "(" ), + new Transform( "", kUppercaseAll, ". " ), + new Transform( " ", kUppercaseAll, "." ), + new Transform( "", kUppercaseAll, "='" ), + new Transform( " ", kUppercaseAll, ". " ), + new Transform( " ", kUppercaseFirst, "=\"" ), + new Transform( " ", kUppercaseAll, "='" ), + new Transform( " ", kUppercaseFirst, "='" ) +]; + +exports.kTransforms = kTransforms; +exports.kNumTransforms = kTransforms.length; + +function ToUpperCase(p, i) { + if (p[i] < 0xc0) { + if (p[i] >= 97 && p[i] <= 122) { + p[i] ^= 32; + } + return 1; + } + + /* An overly simplified uppercasing model for utf-8. */ + if (p[i] < 0xe0) { + p[i + 1] ^= 32; + return 2; + } + + /* An arbitrary transform for three byte characters. */ + p[i + 2] ^= 5; + return 3; +} + +exports.transformDictionaryWord = function(dst, idx, word, len, transform) { + var prefix = kTransforms[transform].prefix; + var suffix = kTransforms[transform].suffix; + var t = kTransforms[transform].transform; + var skip = t < kOmitFirst1 ? 0 : t - (kOmitFirst1 - 1); + var i = 0; + var start_idx = idx; + var uppercase; + + if (skip > len) { + skip = len; + } + + var prefix_pos = 0; + while (prefix_pos < prefix.length) { + dst[idx++] = prefix[prefix_pos++]; + } + + word += skip; + len -= skip; + + if (t <= kOmitLast9) { + len -= t; + } + + for (i = 0; i < len; i++) { + dst[idx++] = BrotliDictionary.dictionary[word + i]; + } + + uppercase = idx - len; + + if (t === kUppercaseFirst) { + ToUpperCase(dst, uppercase); + } else if (t === kUppercaseAll) { + while (len > 0) { + var step = ToUpperCase(dst, uppercase); + uppercase += step; + len -= step; + } + } + + var suffix_pos = 0; + while (suffix_pos < suffix.length) { + dst[idx++] = suffix[suffix_pos++]; + } + + return idx - start_idx; +} + +},{"./dictionary":6}],12:[function(require,module,exports){ +module.exports = require('./dec/decode').BrotliDecompressBuffer; + +},{"./dec/decode":3}]},{},[12])(12) +}); diff --git a/packages/edit-site/src/components/global-styles/font-families.js b/packages/edit-site/src/components/global-styles/font-families.js new file mode 100644 index 0000000000000..030fbae10fc71 --- /dev/null +++ b/packages/edit-site/src/components/global-styles/font-families.js @@ -0,0 +1,79 @@ +/** + * WordPress dependencies + */ +import { __ } from '@wordpress/i18n'; +import { + __experimentalItemGroup as ItemGroup, + __experimentalVStack as VStack, + __experimentalHStack as HStack, + Button, + Tooltip, +} from '@wordpress/components'; +import { plus, typography } from '@wordpress/icons'; +import { useContext } from '@wordpress/element'; + +/** + * Internal dependencies + */ +import FontLibraryProvider, { + FontLibraryContext, +} from './font-library-modal/context'; +import FontLibraryModal from './font-library-modal'; +import FontFamilyItem from './font-family-item'; +import Subtitle from './subtitle'; + +function FontFamilies() { + const { modalTabOepn, toggleModal, themeFonts, customFonts } = + useContext( FontLibraryContext ); + + return ( + <> + { !! modalTabOepn && ( + toggleModal() } + initialTabName={ modalTabOepn } + /> + ) } + + + + { __( 'Fonts' ) } + + + + + ); + }; + + return ( + } + > + { fonts === null && ( + + + { __( 'Loading fonts…' ) } + + ) } + + { fonts && fonts.length >= 0 && ! fontSelected && ( + <> + + + + { googleFontsCategories && + googleFontsCategories.map( ( category ) => ( + + ) ) } + + + { /* */ } + + + + + ) } + + { fonts && fonts.length === 0 && ( + + + { __( 'No fonts found try another search term' ) } + + + ) } + + { fonts && fonts.length > 0 && ( + <> + { ! fontSelected && ( + + { fonts.map( ( font ) => ( + handleSelectFont( font ) } + /> + ) ) } + + ) } + + { fontSelected && ( + <> + { /* */ } + + + + ) } + + ) } + + ); +} + +export default GoogleFonts; diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/index.js b/packages/edit-site/src/components/global-styles/font-library-modal/index.js new file mode 100644 index 0000000000000..67629c38d4ac9 --- /dev/null +++ b/packages/edit-site/src/components/global-styles/font-library-modal/index.js @@ -0,0 +1,47 @@ +/** + * WordPress dependencies + */ +import { __ } from '@wordpress/i18n'; +import { Modal, TabPanel } from '@wordpress/components'; + +/** + * Internal dependencies + */ +import InstalledFonts from './installed-fonts'; +import GoogleFonts from './google-fonts'; +import LocalFonts from './local-fonts'; +import { MODAL_TABS } from './constants'; + +function FontLibraryModal( { + onRequestClose, + initialTabName = 'installed-fonts', +} ) { + return ( + + + { ( tab ) => { + switch ( tab.name ) { + case 'google-fonts': + return ; + case 'local-fonts': + return ; + case 'installed-fonts': + default: + return ; + } + } } + + + ); +} + +export default FontLibraryModal; diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js b/packages/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js new file mode 100644 index 0000000000000..5dc9eb572f1fa --- /dev/null +++ b/packages/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js @@ -0,0 +1,119 @@ +/** + * WordPress dependencies + */ +import { __ } from '@wordpress/i18n'; +import { useContext, useEffect } from '@wordpress/element'; +import { + __experimentalHStack as HStack, + __experimentalSpacer as Spacer, +} from '@wordpress/components'; + +/** + * Internal dependencies + */ +import TabLayout from './tab-layout'; +import { FontLibraryContext } from './context'; +import FontsGrid from './fonts-grid'; +import LibraryFontDetails from './library-font-details'; +import SaveButton from '../../save-button'; +import PreviewControls from './preview-controls'; +import LibraryFontCard from './library-font-card'; + +function InstalledFonts() { + const { + baseCustomFonts, + libraryFontSelected, + baseThemeFonts, + handleSetLibraryFontSelected, + refreshLibrary, + } = useContext( FontLibraryContext ); + + const handleUnselectFont = () => { + handleSetLibraryFontSelected( null ); + }; + + const handleSelectFont = ( font ) => { + handleSetLibraryFontSelected( font ); + }; + + const tabDescription = !! libraryFontSelected + ? __( + 'Choose font variants. Keep in mind that too many variants could make your site slower.' + ) + : null; + + useEffect( () => { + refreshLibrary(); + }, [] ); + + return ( + } + > + { ! libraryFontSelected && ( + <> + { /* */ } + + { baseCustomFonts.length > 0 && ( + <> + + + { baseCustomFonts.map( ( font ) => ( + { + handleSelectFont( font ); + } } + /> + ) ) } + + + ) } + + { baseThemeFonts.length > 0 && ( + <> + + + { baseThemeFonts.map( ( font ) => ( + { + handleSelectFont( font ); + } } + /> + ) ) } + + + ) } + + ) } + + { libraryFontSelected && ( + + ) } + + ); +} + +function Footer() { + return ( + + + + ); +} + +export default InstalledFonts; diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/library-font-card.js b/packages/edit-site/src/components/global-styles/font-library-modal/library-font-card.js new file mode 100644 index 0000000000000..638c869fe4942 --- /dev/null +++ b/packages/edit-site/src/components/global-styles/font-library-modal/library-font-card.js @@ -0,0 +1,27 @@ +/** + * WordPress dependencies + */ +import { __ } from '@wordpress/i18n'; +import { useContext } from '@wordpress/element'; + +/** + * Internal dependencies + */ +import FontCard from './font-card'; +import { FontLibraryContext } from './context'; + +function LibraryFontCard( { font, ...props } ) { + const { getFontFacesActivated } = useContext( FontLibraryContext ); + + const variantsInstalled = font.fontFace?.length || 1; + const variantsActive = getFontFacesActivated( font.slug ).length; + const variantsText = __( + `${ variantsActive }/${ variantsInstalled } variants active` + ); + + return ( + + ); +} + +export default LibraryFontCard; diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/library-font-details.js b/packages/edit-site/src/components/global-styles/font-library-modal/library-font-details.js new file mode 100644 index 0000000000000..a8d259f16f225 --- /dev/null +++ b/packages/edit-site/src/components/global-styles/font-library-modal/library-font-details.js @@ -0,0 +1,109 @@ +/** + * WordPress dependencies + */ +import { __ } from '@wordpress/i18n'; +import { useContext, useState } from '@wordpress/element'; +import { + Button, + __experimentalVStack as VStack, + __experimentalSpacer as Spacer, + __experimentalText as Text, + __experimentalConfirmDialog as ConfirmDialog, +} from '@wordpress/components'; +import { store as noticesStore } from '@wordpress/notices'; +import { useDispatch } from '@wordpress/data'; + +/** + * Internal dependencies + */ +import { FontLibraryContext } from './context'; +import LibraryFontVariant from './library-font-variant'; +import PreviewControls from './preview-controls'; + +function LibraryFontDetails( { font, handleUnselectFont, canBeRemoved } ) { + const { uninstallFont, isFontActivated } = useContext( FontLibraryContext ); + const [ isConfirmOpen, setIsConfirmOpen ] = useState( false ); + const { createErrorNotice, createSuccessNotice } = + useDispatch( noticesStore ); + + const fontFaces = + font.fontFace && font.fontFace.length + ? font.fontFace + : [ + { + fontFamily: font.fontFamily, + fontStyle: 'normal', + fontWeight: '400', + }, + ]; + + const handleConfirmUninstall = async () => { + try { + await uninstallFont( font ); + createSuccessNotice( + __( `${ font?.name || font.fontFamily } was uninstalled.` ), + { type: 'snackbar' } + ); + } catch ( e ) { + createErrorNotice( + __( + `Error deleting font. ${ + font?.name || font.fontFamily + } could not be uninstalled.` + ), + { type: 'snackbar' } + ); + } + handleUnselectFont(); + }; + + const handleUninstallClick = async () => { + setIsConfirmOpen( true ); + }; + + const handleCancelUninstall = () => { + setIsConfirmOpen( false ); + }; + + const isActive = isFontActivated( font.slug ); + + return ( + <> + + { __( + `Would you like to remove ${ font.name } and all its variants and assets?` + ) } + + + { /* */ } + + + + + { fontFaces.map( ( face, i ) => ( + + ) ) } + + + + + { ! isActive && !! canBeRemoved && ( + + ) } + + ); +} + +export default LibraryFontDetails; diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/library-font-variant.js b/packages/edit-site/src/components/global-styles/font-library-modal/library-font-variant.js new file mode 100644 index 0000000000000..ece3bce9f4c7f --- /dev/null +++ b/packages/edit-site/src/components/global-styles/font-library-modal/library-font-variant.js @@ -0,0 +1,38 @@ +/** + * WordPress dependencies + */ +import { __ } from '@wordpress/i18n'; +import { useContext } from '@wordpress/element'; + +/** + * Internal dependencies + */ +import { FontLibraryContext } from './context'; +import FontVariant from './font-variant'; + +function LibraryFontVariant( { face, font } ) { + const { isFontActivated, toggleActivateFont } = + useContext( FontLibraryContext ); + + const isIstalled = font?.fontFace + ? isFontActivated( font.slug, face.fontStyle, face.fontWeight ) + : isFontActivated( font.slug ); + + const handleToggleActivation = () => { + if ( font?.fontFace ) { + toggleActivateFont( font, face ); + return; + } + toggleActivateFont( font ); + }; + + return ( + + ); +} + +export default LibraryFontVariant; diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/local-font-variant.js b/packages/edit-site/src/components/global-styles/font-library-modal/local-font-variant.js new file mode 100644 index 0000000000000..01134135c1fb6 --- /dev/null +++ b/packages/edit-site/src/components/global-styles/font-library-modal/local-font-variant.js @@ -0,0 +1,131 @@ +/** + * Internal dependencies + */ +import { Font } from '../../../../lib/lib-font.browser'; + +/** + * WordPress dependencies + */ +import { __ } from '@wordpress/i18n'; +import { __experimentalHStack as HStack, Button } from '@wordpress/components'; +import { useState, useEffect } from '@wordpress/element'; +import { cancelCircleFilled } from '@wordpress/icons'; + +/** + * Internal dependencies + */ +import FontVariant from './font-variant'; + +function LocalFontVariant( { fontFile, onFontFaceLoad, onFontFaceRemove } ) { + const [ fontData, setFontData ] = useState( null ); + + useEffect( () => { + // Use FileReader to, well, read the file + const reader = new FileReader(); + reader.readAsArrayBuffer( fontFile ); + + reader.onload = () => { + // Create a font object + const fontObj = new Font( 'Uploaded Font' ); + + // Pass the buffer, and the original filename + fontObj.fromDataBuffer( reader.result, fontFile.name ); + + fontObj.onload = async ( onloadEvent ) => { + // Map the details LibFont gathered from the font to the + // "font" variable + const font = onloadEvent.detail.font; + + // From all the OpenType tables in the font, take the "name" + // table so we can inspect it further + const { name } = font.opentype.tables; + + // the Font Family name. More info and names you can grab: + // https://docs.microsoft.com/en-us/typography/opentype/spec/name + + const fontName = name.get( 16 ) || name.get( 1 ); + const isItalic = name + .get( 2 ) + .toLowerCase() + .includes( 'italic' ); + const fontWeight = + font.opentype.tables[ 'OS/2' ].usWeightClass || 'normal'; + + // Variable fonts info + const isVariable = !! font.opentype.tables.fvar; + const weightAxis = + isVariable && + font.opentype.tables.fvar.axes.find( + ( { tag } ) => tag === 'wght' + ); + const weightRange = !! weightAxis + ? `${ weightAxis.minValue } ${ weightAxis.maxValue }` + : null; + + const fontFaceData = { + file: fontFile, + // files as base64 uri + // src: font.toBase64(), + fontFamily: fontName, + fontStyle: isItalic ? 'italic' : 'normal', + fontWeight: !! weightAxis ? weightRange : fontWeight, + }; + + const data = await fontFaceData.file.arrayBuffer(); + const newFont = new FontFace( fontFaceData.fontFamily, data, { + style: fontFaceData.fontStyle, + weight: fontFaceData.fontWeight, + } ); + + newFont + .load() + .then( function ( loadedFace ) { + document.fonts.add( loadedFace ); + } ) + .catch( function ( error ) { + // TODO: show error in the UI + // eslint-disable-next-line + console.error( error ); + } ); + + setFontData( fontFaceData ); + onFontFaceLoad( fontFaceData ); + }; + }; + }, [ fontFile ] ); + + const handleRemove = () => { + onFontFaceRemove( fontData ); + }; + + return ( + !! fontData && ( + + + { fontData?.fontFamily } + + + { fontData?.fontStyle } { fontData?.fontWeight } + + + { fontData?.file.name } + + + } + actionHandler={ + + + ); + }; + + const SelectFilesButton = ( props ) => { + return ( + ( + diff --git a/packages/edit-site/src/components/save-hub/index.js b/packages/edit-site/src/components/save-hub/index.js index 9154429f770b0..327c3d6b0b961 100644 --- a/packages/edit-site/src/components/save-hub/index.js +++ b/packages/edit-site/src/components/save-hub/index.js @@ -27,13 +27,12 @@ const PUBLISH_ON_SAVE_ENTITIES = [ ]; export default function SaveHub() { - const saveNoticeId = 'site-edit-save-notice'; const { params } = useLocation(); const { __unstableMarkLastChangeAsPersistent } = useDispatch( blockEditorStore ); - const { createSuccessNotice, createErrorNotice, removeNotice } = + const { createSuccessNotice, createErrorNotice } = useDispatch( noticesStore ); const { dirtyCurrentEntity, countUnsavedChanges, isDirty, isSaving } = @@ -108,7 +107,6 @@ export default function SaveHub() { const saveCurrentEntity = async () => { if ( ! dirtyCurrentEntity ) return; - removeNotice( saveNoticeId ); const { kind, name, key, property } = dirtyCurrentEntity; try { @@ -134,7 +132,6 @@ export default function SaveHub() { createSuccessNotice( __( 'Site updated.' ), { type: 'snackbar', - id: saveNoticeId, } ); } catch ( error ) { createErrorNotice( `${ __( 'Saving failed.' ) } ${ error }` ); @@ -151,7 +148,6 @@ export default function SaveHub() { disabled={ isSaving } aria-disabled={ isSaving } className="edit-site-save-hub__button" - __next40pxDefaultSize > { label } @@ -161,8 +157,7 @@ export default function SaveHub() { variant={ disabled ? null : 'primary' } showTooltip={ false } icon={ disabled && ! isSaving ? check : null } - defaultLabel={ label } - __next40pxDefaultSize + textForDefaultState={ label } /> ) } diff --git a/packages/edit-site/src/style.scss b/packages/edit-site/src/style.scss index a6309ae2a895c..c0469890f7c2a 100644 --- a/packages/edit-site/src/style.scss +++ b/packages/edit-site/src/style.scss @@ -46,6 +46,7 @@ @import "./components/editor-canvas-container/style.scss"; @import "./components/resizable-frame/style.scss"; @import "./hooks/push-changes-to-global-styles/style.scss"; +@import "./components/global-styles/font-library-modal/style.scss"; body.js #wpadminbar { display: none; From d56b8fdab237cf7d5dfe3f0e6ccbc22a9bb57ed8 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Wed, 16 Aug 2023 13:12:52 -0300 Subject: [PATCH 002/108] importing remaining files --- .../global-styles/screen-typography.js | 102 ++-------------- .../global-styles/typogrphy-elements.js | 110 ++++++++++++++++++ 2 files changed, 117 insertions(+), 95 deletions(-) create mode 100644 packages/edit-site/src/components/global-styles/typogrphy-elements.js diff --git a/packages/edit-site/src/components/global-styles/screen-typography.js b/packages/edit-site/src/components/global-styles/screen-typography.js index cd3371576b2fc..fd001d99fbfc6 100644 --- a/packages/edit-site/src/components/global-styles/screen-typography.js +++ b/packages/edit-site/src/components/global-styles/screen-typography.js @@ -1,80 +1,18 @@ /** * WordPress dependencies */ -import { __, sprintf } from '@wordpress/i18n'; -import { - __experimentalItemGroup as ItemGroup, - __experimentalVStack as VStack, - __experimentalHStack as HStack, - FlexItem, -} from '@wordpress/components'; -import { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor'; +import { __ } from '@wordpress/i18n'; +import { __experimentalVStack as VStack } from '@wordpress/components'; /** * Internal dependencies */ +import TypographyElements from './typogrphy-elements'; +import FontFamilies from './font-families'; import ScreenHeader from './header'; -import { NavigationButtonAsItem } from './navigation-button'; -import Subtitle from './subtitle'; import BlockPreviewPanel from './block-preview-panel'; -import { unlock } from '../../lock-unlock'; - -const { useGlobalStyle } = unlock( blockEditorPrivateApis ); - -function Item( { parentMenu, element, label } ) { - const prefix = - element === 'text' || ! element ? '' : `elements.${ element }.`; - const extraStyles = - element === 'link' - ? { - textDecoration: 'underline', - } - : {}; - const [ fontFamily ] = useGlobalStyle( prefix + 'typography.fontFamily' ); - const [ fontStyle ] = useGlobalStyle( prefix + 'typography.fontStyle' ); - const [ fontWeight ] = useGlobalStyle( prefix + 'typography.fontWeight' ); - const [ letterSpacing ] = useGlobalStyle( - prefix + 'typography.letterSpacing' - ); - const [ backgroundColor ] = useGlobalStyle( prefix + 'color.background' ); - const [ gradientValue ] = useGlobalStyle( prefix + 'color.gradient' ); - const [ color ] = useGlobalStyle( prefix + 'color.text' ); - - const navigationButtonLabel = sprintf( - // translators: %s: is a subset of Typography, e.g., 'text' or 'links'. - __( 'Typography %s styles' ), - label - ); - - return ( - - - - { __( 'Aa' ) } - - { label } - - - ); -} function ScreenTypography() { - const parentMenu = ''; - return ( <>
- - { __( 'Elements' ) } - - - - - - - + + +
diff --git a/packages/edit-site/src/components/global-styles/typogrphy-elements.js b/packages/edit-site/src/components/global-styles/typogrphy-elements.js new file mode 100644 index 0000000000000..b4637a8c82f81 --- /dev/null +++ b/packages/edit-site/src/components/global-styles/typogrphy-elements.js @@ -0,0 +1,110 @@ +/** + * WordPress dependencies + */ +import { __, sprintf } from '@wordpress/i18n'; +import { + __experimentalItemGroup as ItemGroup, + __experimentalVStack as VStack, + __experimentalHStack as HStack, + FlexItem, +} from '@wordpress/components'; +import { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor'; + +/** + * Internal dependencies + */ +import { NavigationButtonAsItem } from './navigation-button'; +import Subtitle from './subtitle'; + +import { unlock } from "../../lock-unlock"; +const { useGlobalStyle } = unlock( blockEditorPrivateApis ); + +function ElementItem( { parentMenu, element, label } ) { + const prefix = + element === 'text' || ! element ? '' : `elements.${ element }.`; + const extraStyles = + element === 'link' + ? { + textDecoration: 'underline', + } + : {}; + const [ fontFamily ] = useGlobalStyle( prefix + 'typography.fontFamily' ); + const [ fontStyle ] = useGlobalStyle( prefix + 'typography.fontStyle' ); + const [ fontWeight ] = useGlobalStyle( prefix + 'typography.fontWeight' ); + const [ letterSpacing ] = useGlobalStyle( + prefix + 'typography.letterSpacing' + ); + const [ backgroundColor ] = useGlobalStyle( prefix + 'color.background' ); + const [ gradientValue ] = useGlobalStyle( prefix + 'color.gradient' ); + const [ color ] = useGlobalStyle( prefix + 'color.text' ); + + const navigationButtonLabel = sprintf( + // translators: %s: is a subset of Typography, e.g., 'text' or 'links'. + __( 'Typography %s styles' ), + label + ); + + return ( + + + + { __( 'Aa' ) } + + { label } + + + ); +} + +function TypographyElements() { + const parentMenu = ''; + + return ( + + { __( 'Elements' ) } + + + + + + + + + ); +} + +export default TypographyElements; From a57e99acec2669167b4d9ed3c7595296ea985040 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Wed, 16 Aug 2023 13:38:42 -0300 Subject: [PATCH 003/108] renaming font library to fonts library --- .../edit-site/src/components/global-styles/font-families.js | 4 ++-- .../src/components/global-styles/font-family-item.js | 2 +- .../{font-library-modal => fonts-library-modal}/constants.js | 0 .../{font-library-modal => fonts-library-modal}/context.js | 0 .../{font-library-modal => fonts-library-modal}/font-card.js | 0 .../{font-library-modal => fonts-library-modal}/font-demo.js | 0 .../font-variant.js | 0 .../{font-library-modal => fonts-library-modal}/fonts-grid.js | 0 .../google-font-details.js | 0 .../google-font-variant.js | 0 .../google-fonts.js | 0 .../{font-library-modal => fonts-library-modal}/index.js | 2 +- .../installed-fonts.js | 0 .../library-font-card.js | 0 .../library-font-details.js | 0 .../library-font-variant.js | 0 .../local-font-variant.js | 0 .../local-fonts.js | 0 .../preview-controls.js | 0 .../{font-library-modal => fonts-library-modal}/resolvers.js | 0 .../{font-library-modal => fonts-library-modal}/style.scss | 2 +- .../{font-library-modal => fonts-library-modal}/tab-layout.js | 0 .../{font-library-modal => fonts-library-modal}/utils.js | 0 packages/edit-site/src/style.scss | 2 +- 24 files changed, 6 insertions(+), 6 deletions(-) rename packages/edit-site/src/components/global-styles/{font-library-modal => fonts-library-modal}/constants.js (100%) rename packages/edit-site/src/components/global-styles/{font-library-modal => fonts-library-modal}/context.js (100%) rename packages/edit-site/src/components/global-styles/{font-library-modal => fonts-library-modal}/font-card.js (100%) rename packages/edit-site/src/components/global-styles/{font-library-modal => fonts-library-modal}/font-demo.js (100%) rename packages/edit-site/src/components/global-styles/{font-library-modal => fonts-library-modal}/font-variant.js (100%) rename packages/edit-site/src/components/global-styles/{font-library-modal => fonts-library-modal}/fonts-grid.js (100%) rename packages/edit-site/src/components/global-styles/{font-library-modal => fonts-library-modal}/google-font-details.js (100%) rename packages/edit-site/src/components/global-styles/{font-library-modal => fonts-library-modal}/google-font-variant.js (100%) rename packages/edit-site/src/components/global-styles/{font-library-modal => fonts-library-modal}/google-fonts.js (100%) rename packages/edit-site/src/components/global-styles/{font-library-modal => fonts-library-modal}/index.js (96%) rename packages/edit-site/src/components/global-styles/{font-library-modal => fonts-library-modal}/installed-fonts.js (100%) rename packages/edit-site/src/components/global-styles/{font-library-modal => fonts-library-modal}/library-font-card.js (100%) rename packages/edit-site/src/components/global-styles/{font-library-modal => fonts-library-modal}/library-font-details.js (100%) rename packages/edit-site/src/components/global-styles/{font-library-modal => fonts-library-modal}/library-font-variant.js (100%) rename packages/edit-site/src/components/global-styles/{font-library-modal => fonts-library-modal}/local-font-variant.js (100%) rename packages/edit-site/src/components/global-styles/{font-library-modal => fonts-library-modal}/local-fonts.js (100%) rename packages/edit-site/src/components/global-styles/{font-library-modal => fonts-library-modal}/preview-controls.js (100%) rename packages/edit-site/src/components/global-styles/{font-library-modal => fonts-library-modal}/resolvers.js (100%) rename packages/edit-site/src/components/global-styles/{font-library-modal => fonts-library-modal}/style.scss (98%) rename packages/edit-site/src/components/global-styles/{font-library-modal => fonts-library-modal}/tab-layout.js (100%) rename packages/edit-site/src/components/global-styles/{font-library-modal => fonts-library-modal}/utils.js (100%) diff --git a/packages/edit-site/src/components/global-styles/font-families.js b/packages/edit-site/src/components/global-styles/font-families.js index 030fbae10fc71..ba299f4af9221 100644 --- a/packages/edit-site/src/components/global-styles/font-families.js +++ b/packages/edit-site/src/components/global-styles/font-families.js @@ -17,8 +17,8 @@ import { useContext } from '@wordpress/element'; */ import FontLibraryProvider, { FontLibraryContext, -} from './font-library-modal/context'; -import FontLibraryModal from './font-library-modal'; +} from './fonts-library-modal/context'; +import FontLibraryModal from './fonts-library-modal'; import FontFamilyItem from './font-family-item'; import Subtitle from './subtitle'; diff --git a/packages/edit-site/src/components/global-styles/font-family-item.js b/packages/edit-site/src/components/global-styles/font-family-item.js index 0ce6d65954656..4efb0e0dec2b2 100644 --- a/packages/edit-site/src/components/global-styles/font-family-item.js +++ b/packages/edit-site/src/components/global-styles/font-family-item.js @@ -12,7 +12,7 @@ import { useContext } from '@wordpress/element'; /** * Internal dependencies */ -import { FontLibraryContext } from './font-library-modal/context'; +import { FontLibraryContext } from './fonts-library-modal/context'; function FontFamilyItem( { font } ) { const { handleSetLibraryFontSelected, toggleModal } = diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/constants.js b/packages/edit-site/src/components/global-styles/fonts-library-modal/constants.js similarity index 100% rename from packages/edit-site/src/components/global-styles/font-library-modal/constants.js rename to packages/edit-site/src/components/global-styles/fonts-library-modal/constants.js diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/context.js b/packages/edit-site/src/components/global-styles/fonts-library-modal/context.js similarity index 100% rename from packages/edit-site/src/components/global-styles/font-library-modal/context.js rename to packages/edit-site/src/components/global-styles/fonts-library-modal/context.js diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/font-card.js b/packages/edit-site/src/components/global-styles/fonts-library-modal/font-card.js similarity index 100% rename from packages/edit-site/src/components/global-styles/font-library-modal/font-card.js rename to packages/edit-site/src/components/global-styles/fonts-library-modal/font-card.js diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/font-demo.js b/packages/edit-site/src/components/global-styles/fonts-library-modal/font-demo.js similarity index 100% rename from packages/edit-site/src/components/global-styles/font-library-modal/font-demo.js rename to packages/edit-site/src/components/global-styles/fonts-library-modal/font-demo.js diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/font-variant.js b/packages/edit-site/src/components/global-styles/fonts-library-modal/font-variant.js similarity index 100% rename from packages/edit-site/src/components/global-styles/font-library-modal/font-variant.js rename to packages/edit-site/src/components/global-styles/fonts-library-modal/font-variant.js diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/fonts-grid.js b/packages/edit-site/src/components/global-styles/fonts-library-modal/fonts-grid.js similarity index 100% rename from packages/edit-site/src/components/global-styles/font-library-modal/fonts-grid.js rename to packages/edit-site/src/components/global-styles/fonts-library-modal/fonts-grid.js diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/google-font-details.js b/packages/edit-site/src/components/global-styles/fonts-library-modal/google-font-details.js similarity index 100% rename from packages/edit-site/src/components/global-styles/font-library-modal/google-font-details.js rename to packages/edit-site/src/components/global-styles/fonts-library-modal/google-font-details.js diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/google-font-variant.js b/packages/edit-site/src/components/global-styles/fonts-library-modal/google-font-variant.js similarity index 100% rename from packages/edit-site/src/components/global-styles/font-library-modal/google-font-variant.js rename to packages/edit-site/src/components/global-styles/fonts-library-modal/google-font-variant.js diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/google-fonts.js b/packages/edit-site/src/components/global-styles/fonts-library-modal/google-fonts.js similarity index 100% rename from packages/edit-site/src/components/global-styles/font-library-modal/google-fonts.js rename to packages/edit-site/src/components/global-styles/fonts-library-modal/google-fonts.js diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/index.js b/packages/edit-site/src/components/global-styles/fonts-library-modal/index.js similarity index 96% rename from packages/edit-site/src/components/global-styles/font-library-modal/index.js rename to packages/edit-site/src/components/global-styles/fonts-library-modal/index.js index 67629c38d4ac9..bd4151450f32f 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/index.js +++ b/packages/edit-site/src/components/global-styles/fonts-library-modal/index.js @@ -21,7 +21,7 @@ function FontLibraryModal( { title={ __( 'Fonts' ) } onRequestClose={ onRequestClose } isFullScreen={ true } - className="font-library-modal" + className="fonts-library-modal" > Date: Wed, 16 Aug 2023 13:41:48 -0300 Subject: [PATCH 004/108] renaming FontLibraryModal to FontsLibraryModal --- .../edit-site/src/components/global-styles/font-families.js | 4 ++-- .../src/components/global-styles/fonts-library-modal/index.js | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/font-families.js b/packages/edit-site/src/components/global-styles/font-families.js index ba299f4af9221..cc7724efa9c76 100644 --- a/packages/edit-site/src/components/global-styles/font-families.js +++ b/packages/edit-site/src/components/global-styles/font-families.js @@ -18,7 +18,7 @@ import { useContext } from '@wordpress/element'; import FontLibraryProvider, { FontLibraryContext, } from './fonts-library-modal/context'; -import FontLibraryModal from './fonts-library-modal'; +import FontsLibraryModal from './fonts-library-modal'; import FontFamilyItem from './font-family-item'; import Subtitle from './subtitle'; @@ -29,7 +29,7 @@ function FontFamilies() { return ( <> { !! modalTabOepn && ( - toggleModal() } initialTabName={ modalTabOepn } /> diff --git a/packages/edit-site/src/components/global-styles/fonts-library-modal/index.js b/packages/edit-site/src/components/global-styles/fonts-library-modal/index.js index bd4151450f32f..27c5378fba9e6 100644 --- a/packages/edit-site/src/components/global-styles/fonts-library-modal/index.js +++ b/packages/edit-site/src/components/global-styles/fonts-library-modal/index.js @@ -12,7 +12,7 @@ import GoogleFonts from './google-fonts'; import LocalFonts from './local-fonts'; import { MODAL_TABS } from './constants'; -function FontLibraryModal( { +function FontsLibraryModal( { onRequestClose, initialTabName = 'installed-fonts', } ) { @@ -44,4 +44,4 @@ function FontLibraryModal( { ); } -export default FontLibraryModal; +export default FontsLibraryModal; From 051756ca9c0641401db3b3414b3c9ce389e45101 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Wed, 16 Aug 2023 17:12:16 -0300 Subject: [PATCH 005/108] update frontend based on backend changes --- .../global-styles/fonts-library-modal/local-font-variant.js | 2 -- .../global-styles/fonts-library-modal/local-fonts.js | 2 +- .../global-styles/fonts-library-modal/resolvers.js | 6 +++--- 3 files changed, 4 insertions(+), 6 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/fonts-library-modal/local-font-variant.js b/packages/edit-site/src/components/global-styles/fonts-library-modal/local-font-variant.js index 01134135c1fb6..ae86873d817de 100644 --- a/packages/edit-site/src/components/global-styles/fonts-library-modal/local-font-variant.js +++ b/packages/edit-site/src/components/global-styles/fonts-library-modal/local-font-variant.js @@ -64,8 +64,6 @@ function LocalFontVariant( { fontFile, onFontFaceLoad, onFontFaceRemove } ) { const fontFaceData = { file: fontFile, - // files as base64 uri - // src: font.toBase64(), fontFamily: fontName, fontStyle: isItalic ? 'italic' : 'normal', fontWeight: !! weightAxis ? weightRange : fontWeight, diff --git a/packages/edit-site/src/components/global-styles/fonts-library-modal/local-fonts.js b/packages/edit-site/src/components/global-styles/fonts-library-modal/local-fonts.js index 9710d534aef90..10f1e063b07d0 100644 --- a/packages/edit-site/src/components/global-styles/fonts-library-modal/local-fonts.js +++ b/packages/edit-site/src/components/global-styles/fonts-library-modal/local-fonts.js @@ -96,7 +96,7 @@ function LocalFonts() { formData.append( `files${ i }`, item.file, item.file.name ); // Add the posted file id to the fontFace object // This is needed to associate the fontFace with the file on the server - const face = { ...item, file: `files${ i }` }; + const face = { ...item, uploadedFile: `files${ i }` }; acc[ item.fontFamily ].fontFace.push( face ); return acc; }, {} ); diff --git a/packages/edit-site/src/components/global-styles/fonts-library-modal/resolvers.js b/packages/edit-site/src/components/global-styles/fonts-library-modal/resolvers.js index 8c0414124a9d5..688421ccaf073 100644 --- a/packages/edit-site/src/components/global-styles/fonts-library-modal/resolvers.js +++ b/packages/edit-site/src/components/global-styles/fonts-library-modal/resolvers.js @@ -9,7 +9,7 @@ import apiFetch from '@wordpress/api-fetch'; export async function fetchGoogleFonts() { const config = { - path: '/wp/v2/fonts_library/google_fonts', + path: '/wp/v2/fonts/google_fonts', }; const { fontFamilies, categories } = await apiFetch( config ); return { @@ -34,7 +34,7 @@ export async function fetchInstallFonts( data ) { } const config = { - path: '/wp/v2/fonts_library', + path: '/wp/v2/fonts', method: 'POST', body, }; @@ -45,7 +45,7 @@ export async function fetchInstallFonts( data ) { export async function fetchUninstallFonts( data ) { const config = { - path: '/wp/v2/fonts_library', + path: '/wp/v2/fonts', method: 'DELETE', data, }; From 28ae9b8a7db9940297904866adc9f514d15230ef Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Wed, 16 Aug 2023 17:37:34 -0300 Subject: [PATCH 006/108] TEMPORAL FIX: Adding Google fonts endpoint a font families list --- ...class-wp-rest-fonts-library-controller.php | 30 + .../fonts-library/google-fonts.json | 46719 ++++++++++++++++ 2 files changed, 46749 insertions(+) create mode 100644 lib/experimental/fonts-library/google-fonts.json diff --git a/lib/experimental/fonts-library/class-wp-rest-fonts-library-controller.php b/lib/experimental/fonts-library/class-wp-rest-fonts-library-controller.php index d4abfec476b66..698a4847e2e78 100644 --- a/lib/experimental/fonts-library/class-wp-rest-fonts-library-controller.php +++ b/lib/experimental/fonts-library/class-wp-rest-fonts-library-controller.php @@ -67,6 +67,36 @@ public function register_routes() { ), ) ); + + /* + * DO NOT MERGE: This is a temporary endpoint to allow testing googe fonts installation. + * See: https://github.com/WordPress/gutenberg/issues/52795 + */ + register_rest_route( + $this->namespace, + '/' . $this->rest_base . '/google_fonts', + array( + array( + 'methods' => WP_REST_Server::READABLE, + 'callback' => array( $this, 'google_fonts' ), + 'permission_callback' => array( $this, 'update_fonts_library_permissions_check' ), + ), + ) + ); + + + } + + /* + * DO NOT MERGE: This is a temporary endpoint to allow testing googe fonts installation. + * See: https://github.com/WordPress/gutenberg/issues/52795 + */ + public function google_fonts() { + $file = file_get_contents( + path_join( dirname( __FILE__ ), 'google-fonts.json' ) + ); + $json_data = json_decode($file, true); + return new WP_REST_Response($json_data, 200); } /** diff --git a/lib/experimental/fonts-library/google-fonts.json b/lib/experimental/fonts-library/google-fonts.json new file mode 100644 index 0000000000000..1a2bc0ea45201 --- /dev/null +++ b/lib/experimental/fonts-library/google-fonts.json @@ -0,0 +1,46719 @@ +{ + "fontFamilies": [ + { + "name": "ABeeZee", + "fontFamily": "ABeeZee, sans-serif", + "slug": "abeezee", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/abeezee/v22/esDR31xSG-6AGleN6tKukbcHCpE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "ABeeZee" + }, + { + "src": "http://fonts.gstatic.com/s/abeezee/v22/esDT31xSG-6AGleN2tCklZUCGpG-GQ.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "ABeeZee" + } + ] + }, + { + "name": "Abel", + "fontFamily": "Abel, sans-serif", + "slug": "abel", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/abel/v18/MwQ5bhbm2POE6VhLPJp6qGI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Abel" + } + ] + }, + { + "name": "Abhaya Libre", + "fontFamily": "Abhaya Libre, serif", + "slug": "abhaya-libre", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/abhayalibre/v14/e3tmeuGtX-Co5MNzeAOqinEge0PWovdU4w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Abhaya Libre" + }, + { + "src": "http://fonts.gstatic.com/s/abhayalibre/v14/e3t5euGtX-Co5MNzeAOqinEYj2ryqtxI6oYtBA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Abhaya Libre" + }, + { + "src": "http://fonts.gstatic.com/s/abhayalibre/v14/e3t5euGtX-Co5MNzeAOqinEYo23yqtxI6oYtBA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Abhaya Libre" + }, + { + "src": "http://fonts.gstatic.com/s/abhayalibre/v14/e3t5euGtX-Co5MNzeAOqinEYx2zyqtxI6oYtBA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Abhaya Libre" + }, + { + "src": "http://fonts.gstatic.com/s/abhayalibre/v14/e3t5euGtX-Co5MNzeAOqinEY22_yqtxI6oYtBA.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Abhaya Libre" + } + ] + }, + { + "name": "Aboreto", + "fontFamily": "Aboreto, system-ui", + "slug": "aboreto", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/aboreto/v2/5DCXAKLhwDDQ4N8blKTeA2yuxSY.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Aboreto" + } + ] + }, + { + "name": "Abril Fatface", + "fontFamily": "Abril Fatface, system-ui", + "slug": "abril-fatface", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/abrilfatface/v19/zOL64pLDlL1D99S8g8PtiKchm-BsjOLhZBY.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Abril Fatface" + } + ] + }, + { + "name": "Abyssinica SIL", + "fontFamily": "Abyssinica SIL, serif", + "slug": "abyssinica-sil", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/abyssinicasil/v5/oY1H8ezOqK7iI3rK_45WKoc8J6UZBFOVAXuI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Abyssinica SIL" + } + ] + }, + { + "name": "Aclonica", + "fontFamily": "Aclonica, sans-serif", + "slug": "aclonica", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/aclonica/v18/K2FyfZJVlfNNSEBXGb7TCI6oBjLz.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Aclonica" + } + ] + }, + { + "name": "Acme", + "fontFamily": "Acme, sans-serif", + "slug": "acme", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/acme/v21/RrQfboBx-C5_bx3Lb23lzLk.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Acme" + } + ] + }, + { + "name": "Actor", + "fontFamily": "Actor, sans-serif", + "slug": "actor", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/actor/v17/wEOzEBbCkc5cO3ekXygtUMIO.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Actor" + } + ] + }, + { + "name": "Adamina", + "fontFamily": "Adamina, serif", + "slug": "adamina", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/adamina/v21/j8_r6-DH1bjoc-dwu-reETl4Bno.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Adamina" + } + ] + }, + { + "name": "Advent Pro", + "fontFamily": "Advent Pro, sans-serif", + "slug": "advent-pro", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLQyJPTJoonw1aBA.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Advent Pro" + }, + { + "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLwyNPTJoonw1aBA.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Advent Pro" + }, + { + "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLHSNPTJoonw1aBA.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Advent Pro" + }, + { + "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLQyNPTJoonw1aBA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Advent Pro" + }, + { + "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLcSNPTJoonw1aBA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Advent Pro" + }, + { + "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLnSRPTJoonw1aBA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Advent Pro" + }, + { + "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLpCRPTJoonw1aBA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Advent Pro" + }, + { + "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLwyRPTJoonw1aBA.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Advent Pro" + }, + { + "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpL6iRPTJoonw1aBA.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Advent Pro" + }, + { + "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2CnDpAsvQhKBH4C.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Advent Pro" + }, + { + "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2AnD5AsvQhKBH4C.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Advent Pro" + }, + { + "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2D5D5AsvQhKBH4C.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Advent Pro" + }, + { + "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2CnD5AsvQhKBH4C.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Advent Pro" + }, + { + "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2CVD5AsvQhKBH4C.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Advent Pro" + }, + { + "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2B5CJAsvQhKBH4C.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Advent Pro" + }, + { + "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2BACJAsvQhKBH4C.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Advent Pro" + }, + { + "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2AnCJAsvQhKBH4C.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Advent Pro" + }, + { + "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2AOCJAsvQhKBH4C.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Advent Pro" + } + ] + }, + { + "name": "Aguafina Script", + "fontFamily": "Aguafina Script, cursive", + "slug": "aguafina-script", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/aguafinascript/v17/If2QXTv_ZzSxGIO30LemWEOmt1bHqs4pgicOrg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Aguafina Script" + } + ] + }, + { + "name": "Akaya Kanadaka", + "fontFamily": "Akaya Kanadaka, system-ui", + "slug": "akaya-kanadaka", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/akayakanadaka/v16/N0bM2S5CPO5oOQqvazoRRb-8-PfRS5VBBSSF.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Akaya Kanadaka" + } + ] + }, + { + "name": "Akaya Telivigala", + "fontFamily": "Akaya Telivigala, system-ui", + "slug": "akaya-telivigala", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/akayatelivigala/v22/lJwc-oo_iG9wXqU3rCTD395tp0uifdLdsIH0YH8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Akaya Telivigala" + } + ] + }, + { + "name": "Akronim", + "fontFamily": "Akronim, system-ui", + "slug": "akronim", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/akronim/v23/fdN-9sqWtWZZlHRp-gBxkFYN-a8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Akronim" + } + ] + }, + { + "name": "Akshar", + "fontFamily": "Akshar, sans-serif", + "slug": "akshar", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/akshar/v9/Yq6I-LyHWTfz9rGoqDaUbHvhkAUsSSgFy9CY94XsnPc.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Akshar" + }, + { + "src": "http://fonts.gstatic.com/s/akshar/v9/Yq6I-LyHWTfz9rGoqDaUbHvhkAUsSXYFy9CY94XsnPc.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Akshar" + }, + { + "src": "http://fonts.gstatic.com/s/akshar/v9/Yq6I-LyHWTfz9rGoqDaUbHvhkAUsSUQFy9CY94XsnPc.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Akshar" + }, + { + "src": "http://fonts.gstatic.com/s/akshar/v9/Yq6I-LyHWTfz9rGoqDaUbHvhkAUsSagCy9CY94XsnPc.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Akshar" + }, + { + "src": "http://fonts.gstatic.com/s/akshar/v9/Yq6I-LyHWTfz9rGoqDaUbHvhkAUsSZECy9CY94XsnPc.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Akshar" + } + ] + }, + { + "name": "Aladin", + "fontFamily": "Aladin, cursive", + "slug": "aladin", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/aladin/v19/ZgNSjPJFPrvJV5f16Sf4pGT2Ng.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Aladin" + } + ] + }, + { + "name": "Alata", + "fontFamily": "Alata, sans-serif", + "slug": "alata", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/alata/v9/PbytFmztEwbIofe6xKcRQEOX.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Alata" + } + ] + }, + { + "name": "Alatsi", + "fontFamily": "Alatsi, sans-serif", + "slug": "alatsi", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/alatsi/v11/TK3iWkUJAxQ2nLNGHjUHte5fKg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Alatsi" + } + ] + }, + { + "name": "Albert Sans", + "fontFamily": "Albert Sans, sans-serif", + "slug": "albert-sans", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHq5L_rI32TxAj1g.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Albert Sans" + }, + { + "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHK5P_rI32TxAj1g.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Albert Sans" + }, + { + "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSH9ZP_rI32TxAj1g.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Albert Sans" + }, + { + "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHq5P_rI32TxAj1g.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Albert Sans" + }, + { + "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHmZP_rI32TxAj1g.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Albert Sans" + }, + { + "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHdZT_rI32TxAj1g.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Albert Sans" + }, + { + "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHTJT_rI32TxAj1g.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Albert Sans" + }, + { + "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHK5T_rI32TxAj1g.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Albert Sans" + }, + { + "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHApT_rI32TxAj1g.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Albert Sans" + }, + { + "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9AX7ofybRUz1r5t.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Albert Sans" + }, + { + "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9CX74fybRUz1r5t.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Albert Sans" + }, + { + "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9BJ74fybRUz1r5t.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Albert Sans" + }, + { + "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9AX74fybRUz1r5t.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Albert Sans" + }, + { + "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9Al74fybRUz1r5t.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Albert Sans" + }, + { + "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9DJ6IfybRUz1r5t.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Albert Sans" + }, + { + "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9Dw6IfybRUz1r5t.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Albert Sans" + }, + { + "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9CX6IfybRUz1r5t.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Albert Sans" + }, + { + "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9C-6IfybRUz1r5t.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Albert Sans" + } + ] + }, + { + "name": "Aldrich", + "fontFamily": "Aldrich, sans-serif", + "slug": "aldrich", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/aldrich/v17/MCoTzAn-1s3IGyJMZaAS3pP5H_E.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Aldrich" + } + ] + }, + { + "name": "Alef", + "fontFamily": "Alef, sans-serif", + "slug": "alef", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/alef/v21/FeVfS0NQpLYgrjJbC5FxxbU.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Alef" + }, + { + "src": "http://fonts.gstatic.com/s/alef/v21/FeVQS0NQpLYglo50L5la2bxii28.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Alef" + } + ] + }, + { + "name": "Alegreya", + "fontFamily": "Alegreya, serif", + "slug": "alegreya", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/alegreya/v35/4UacrEBBsBhlBjvfkQjt71kZfyBzPgNG9hUI_KCisSGVrw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Alegreya" + }, + { + "src": "http://fonts.gstatic.com/s/alegreya/v35/4UacrEBBsBhlBjvfkQjt71kZfyBzPgNGxBUI_KCisSGVrw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Alegreya" + }, + { + "src": "http://fonts.gstatic.com/s/alegreya/v35/4UacrEBBsBhlBjvfkQjt71kZfyBzPgNGKBII_KCisSGVrw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Alegreya" + }, + { + "src": "http://fonts.gstatic.com/s/alegreya/v35/4UacrEBBsBhlBjvfkQjt71kZfyBzPgNGERII_KCisSGVrw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Alegreya" + }, + { + "src": "http://fonts.gstatic.com/s/alegreya/v35/4UacrEBBsBhlBjvfkQjt71kZfyBzPgNGdhII_KCisSGVrw.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Alegreya" + }, + { + "src": "http://fonts.gstatic.com/s/alegreya/v35/4UacrEBBsBhlBjvfkQjt71kZfyBzPgNGXxII_KCisSGVrw.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Alegreya" + }, + { + "src": "http://fonts.gstatic.com/s/alegreya/v35/4UaSrEBBsBhlBjvfkSLk3abBFkvpkARTPlbgv6qmkySFr9V9.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Alegreya" + }, + { + "src": "http://fonts.gstatic.com/s/alegreya/v35/4UaSrEBBsBhlBjvfkSLk3abBFkvpkARTPlbSv6qmkySFr9V9.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Alegreya" + }, + { + "src": "http://fonts.gstatic.com/s/alegreya/v35/4UaSrEBBsBhlBjvfkSLk3abBFkvpkARTPlY-uKqmkySFr9V9.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Alegreya" + }, + { + "src": "http://fonts.gstatic.com/s/alegreya/v35/4UaSrEBBsBhlBjvfkSLk3abBFkvpkARTPlYHuKqmkySFr9V9.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Alegreya" + }, + { + "src": "http://fonts.gstatic.com/s/alegreya/v35/4UaSrEBBsBhlBjvfkSLk3abBFkvpkARTPlZguKqmkySFr9V9.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Alegreya" + }, + { + "src": "http://fonts.gstatic.com/s/alegreya/v35/4UaSrEBBsBhlBjvfkSLk3abBFkvpkARTPlZJuKqmkySFr9V9.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Alegreya" + } + ] + }, + { + "name": "Alegreya SC", + "fontFamily": "Alegreya SC, serif", + "slug": "alegreya-sc", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/alegreyasc/v25/taiOGmRtCJ62-O0HhNEa-a6o05E5abe_.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Alegreya SC" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasc/v25/taiMGmRtCJ62-O0HhNEa-Z6q2ZUbbKe_DGs.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Alegreya SC" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasc/v25/taiTGmRtCJ62-O0HhNEa-ZZc-rUxQqu2FXKD.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Alegreya SC" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasc/v25/taiRGmRtCJ62-O0HhNEa-Z6q4WEySK-UEGKDBz4.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Alegreya SC" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasc/v25/taiTGmRtCJ62-O0HhNEa-ZYU_LUxQqu2FXKD.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Alegreya SC" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasc/v25/taiRGmRtCJ62-O0HhNEa-Z6q4Sk0SK-UEGKDBz4.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Alegreya SC" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasc/v25/taiTGmRtCJ62-O0HhNEa-ZYI_7UxQqu2FXKD.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Alegreya SC" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasc/v25/taiRGmRtCJ62-O0HhNEa-Z6q4TU3SK-UEGKDBz4.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Alegreya SC" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasc/v25/taiTGmRtCJ62-O0HhNEa-ZYs_rUxQqu2FXKD.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Alegreya SC" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasc/v25/taiRGmRtCJ62-O0HhNEa-Z6q4RE2SK-UEGKDBz4.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Alegreya SC" + } + ] + }, + { + "name": "Alegreya Sans", + "fontFamily": "Alegreya Sans, sans-serif", + "slug": "alegreya-sans", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/alegreyasans/v24/5aUt9_-1phKLFgshYDvh6Vwt5TltuGdShm5bsg.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Alegreya Sans" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasans/v24/5aUv9_-1phKLFgshYDvh6Vwt7V9V3G1WpGtLsgu7.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Alegreya Sans" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasans/v24/5aUu9_-1phKLFgshYDvh6Vwt5fFPmE18imdCqxI.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Alegreya Sans" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasans/v24/5aUo9_-1phKLFgshYDvh6Vwt7V9VFE92jkVHuxKiBA.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Alegreya Sans" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasans/v24/5aUz9_-1phKLFgshYDvh6Vwt3V1nvEVXlm4.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Alegreya Sans" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasans/v24/5aUt9_-1phKLFgshYDvh6Vwt7V9tuGdShm5bsg.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Alegreya Sans" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasans/v24/5aUu9_-1phKLFgshYDvh6Vwt5alOmE18imdCqxI.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Alegreya Sans" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasans/v24/5aUo9_-1phKLFgshYDvh6Vwt7V9VTE52jkVHuxKiBA.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Alegreya Sans" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasans/v24/5aUu9_-1phKLFgshYDvh6Vwt5eFImE18imdCqxI.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Alegreya Sans" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasans/v24/5aUo9_-1phKLFgshYDvh6Vwt7V9VBEh2jkVHuxKiBA.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Alegreya Sans" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasans/v24/5aUu9_-1phKLFgshYDvh6Vwt5f1LmE18imdCqxI.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Alegreya Sans" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasans/v24/5aUo9_-1phKLFgshYDvh6Vwt7V9VGEt2jkVHuxKiBA.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Alegreya Sans" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasans/v24/5aUu9_-1phKLFgshYDvh6Vwt5dlKmE18imdCqxI.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Alegreya Sans" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasans/v24/5aUo9_-1phKLFgshYDvh6Vwt7V9VPEp2jkVHuxKiBA.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Alegreya Sans" + } + ] + }, + { + "name": "Alegreya Sans SC", + "fontFamily": "Alegreya Sans SC, sans-serif", + "slug": "alegreya-sans-sc", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/alegreyasanssc/v23/mtGn4-RGJqfMvt7P8FUr0Q1j-Hf1Dipl8g5FPYtmMg.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Alegreya Sans SC" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasanssc/v23/mtGl4-RGJqfMvt7P8FUr0Q1j-Hf1BkxdlgRBH452Mvds.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Alegreya Sans SC" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasanssc/v23/mtGm4-RGJqfMvt7P8FUr0Q1j-Hf1DuJH0iRrMYJ_K-4.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Alegreya Sans SC" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasanssc/v23/mtGk4-RGJqfMvt7P8FUr0Q1j-Hf1BkxdXiZhNaB6O-51OA.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Alegreya Sans SC" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasanssc/v23/mtGh4-RGJqfMvt7P8FUr0Q1j-Hf1Nk5v9ixALYs.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Alegreya Sans SC" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasanssc/v23/mtGn4-RGJqfMvt7P8FUr0Q1j-Hf1Bkxl8g5FPYtmMg.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Alegreya Sans SC" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasanssc/v23/mtGm4-RGJqfMvt7P8FUr0Q1j-Hf1DrpG0iRrMYJ_K-4.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Alegreya Sans SC" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasanssc/v23/mtGk4-RGJqfMvt7P8FUr0Q1j-Hf1BkxdBidhNaB6O-51OA.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Alegreya Sans SC" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasanssc/v23/mtGm4-RGJqfMvt7P8FUr0Q1j-Hf1DvJA0iRrMYJ_K-4.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Alegreya Sans SC" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasanssc/v23/mtGk4-RGJqfMvt7P8FUr0Q1j-Hf1BkxdTiFhNaB6O-51OA.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Alegreya Sans SC" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasanssc/v23/mtGm4-RGJqfMvt7P8FUr0Q1j-Hf1Du5D0iRrMYJ_K-4.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Alegreya Sans SC" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasanssc/v23/mtGk4-RGJqfMvt7P8FUr0Q1j-Hf1BkxdUiJhNaB6O-51OA.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Alegreya Sans SC" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasanssc/v23/mtGm4-RGJqfMvt7P8FUr0Q1j-Hf1DspC0iRrMYJ_K-4.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Alegreya Sans SC" + }, + { + "src": "http://fonts.gstatic.com/s/alegreyasanssc/v23/mtGk4-RGJqfMvt7P8FUr0Q1j-Hf1BkxddiNhNaB6O-51OA.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Alegreya Sans SC" + } + ] + }, + { + "name": "Aleo", + "fontFamily": "Aleo, serif", + "slug": "aleo", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/aleo/v11/c4mg1nF8G8_syKbr9DVDno985KM.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Aleo" + }, + { + "src": "http://fonts.gstatic.com/s/aleo/v11/c4mi1nF8G8_swAjxeDdJmq159KOnWA.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Aleo" + }, + { + "src": "http://fonts.gstatic.com/s/aleo/v11/c4mv1nF8G8_s8ArD0D1ogoY.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Aleo" + }, + { + "src": "http://fonts.gstatic.com/s/aleo/v11/c4mh1nF8G8_swAjJ1B9tkoZl_Q.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Aleo" + }, + { + "src": "http://fonts.gstatic.com/s/aleo/v11/c4mg1nF8G8_syLbs9DVDno985KM.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Aleo" + }, + { + "src": "http://fonts.gstatic.com/s/aleo/v11/c4mi1nF8G8_swAjxaDBJmq159KOnWA.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Aleo" + } + ] + }, + { + "name": "Alex Brush", + "fontFamily": "Alex Brush, cursive", + "slug": "alex-brush", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/alexbrush/v22/SZc83FzrJKuqFbwMKk6EtUL57DtOmCc.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Alex Brush" + } + ] + }, + { + "name": "Alexandria", + "fontFamily": "Alexandria, sans-serif", + "slug": "alexandria", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/alexandria/v3/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9r7T6bHHJ8BRq0b.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Alexandria" + }, + { + "src": "http://fonts.gstatic.com/s/alexandria/v3/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9p7TqbHHJ8BRq0b.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Alexandria" + }, + { + "src": "http://fonts.gstatic.com/s/alexandria/v3/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9qlTqbHHJ8BRq0b.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Alexandria" + }, + { + "src": "http://fonts.gstatic.com/s/alexandria/v3/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9r7TqbHHJ8BRq0b.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Alexandria" + }, + { + "src": "http://fonts.gstatic.com/s/alexandria/v3/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9rJTqbHHJ8BRq0b.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Alexandria" + }, + { + "src": "http://fonts.gstatic.com/s/alexandria/v3/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9olSabHHJ8BRq0b.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Alexandria" + }, + { + "src": "http://fonts.gstatic.com/s/alexandria/v3/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9ocSabHHJ8BRq0b.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Alexandria" + }, + { + "src": "http://fonts.gstatic.com/s/alexandria/v3/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9p7SabHHJ8BRq0b.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Alexandria" + }, + { + "src": "http://fonts.gstatic.com/s/alexandria/v3/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9pSSabHHJ8BRq0b.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Alexandria" + } + ] + }, + { + "name": "Alfa Slab One", + "fontFamily": "Alfa Slab One, system-ui", + "slug": "alfa-slab-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/alfaslabone/v17/6NUQ8FmMKwSEKjnm5-4v-4Jh6dVretWvYmE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Alfa Slab One" + } + ] + }, + { + "name": "Alice", + "fontFamily": "Alice, serif", + "slug": "alice", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/alice/v20/OpNCnoEEmtHa6FcJpA_chzJ0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Alice" + } + ] + }, + { + "name": "Alike", + "fontFamily": "Alike, serif", + "slug": "alike", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/alike/v20/HI_EiYEYI6BIoEjBSZXAQ4-d.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Alike" + } + ] + }, + { + "name": "Alike Angular", + "fontFamily": "Alike Angular, serif", + "slug": "alike-angular", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/alikeangular/v20/3qTrojWunjGQtEBlIcwMbSoI3kM6bB7FKjE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Alike Angular" + } + ] + }, + { + "name": "Alkalami", + "fontFamily": "Alkalami, serif", + "slug": "alkalami", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/alkalami/v7/zOL_4pfDmqRL95WXi5eLw8BMuvhH.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Alkalami" + } + ] + }, + { + "name": "Alkatra", + "fontFamily": "Alkatra, system-ui", + "slug": "alkatra", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/alkatra/v3/r05EGLZA5qhCYsyJbuChFuK48Medzngmu7cPrNDVemxE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Alkatra" + }, + { + "src": "http://fonts.gstatic.com/s/alkatra/v3/r05EGLZA5qhCYsyJbuChFuK48MedzngUu7cPrNDVemxE.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Alkatra" + }, + { + "src": "http://fonts.gstatic.com/s/alkatra/v3/r05EGLZA5qhCYsyJbuChFuK48Medznj4vLcPrNDVemxE.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Alkatra" + }, + { + "src": "http://fonts.gstatic.com/s/alkatra/v3/r05EGLZA5qhCYsyJbuChFuK48MedznjBvLcPrNDVemxE.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Alkatra" + } + ] + }, + { + "name": "Allan", + "fontFamily": "Allan, system-ui", + "slug": "allan", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/allan/v21/ea8XadU7WuTxEtb2P9SF8nZE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Allan" + }, + { + "src": "http://fonts.gstatic.com/s/allan/v21/ea8aadU7WuTxEu5KEPCN2WpNgEKU.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Allan" + } + ] + }, + { + "name": "Allerta", + "fontFamily": "Allerta, sans-serif", + "slug": "allerta", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/allerta/v18/TwMO-IAHRlkbx940UnEdSQqO5uY.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Allerta" + } + ] + }, + { + "name": "Allerta Stencil", + "fontFamily": "Allerta Stencil, sans-serif", + "slug": "allerta-stencil", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/allertastencil/v18/HTx0L209KT-LmIE9N7OR6eiycOeF-zz313DuvQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Allerta Stencil" + } + ] + }, + { + "name": "Allison", + "fontFamily": "Allison, cursive", + "slug": "allison", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/allison/v9/X7nl4b88AP2nkbvZOCaQ4MTgAgk.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Allison" + } + ] + }, + { + "name": "Allura", + "fontFamily": "Allura, cursive", + "slug": "allura", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/allura/v19/9oRPNYsQpS4zjuAPjAIXPtrrGA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Allura" + } + ] + }, + { + "name": "Almarai", + "fontFamily": "Almarai, sans-serif", + "slug": "almarai", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/almarai/v12/tssoApxBaigK_hnnS_anhnicoq72sXg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Almarai" + }, + { + "src": "http://fonts.gstatic.com/s/almarai/v12/tsstApxBaigK_hnnc1qPonC3vqc.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Almarai" + }, + { + "src": "http://fonts.gstatic.com/s/almarai/v12/tssoApxBaigK_hnnS-aghnicoq72sXg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Almarai" + }, + { + "src": "http://fonts.gstatic.com/s/almarai/v12/tssoApxBaigK_hnnS_qjhnicoq72sXg.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Almarai" + } + ] + }, + { + "name": "Almendra", + "fontFamily": "Almendra, serif", + "slug": "almendra", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/almendra/v23/H4ckBXKAlMnTn0CskyY6wr-wg763.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Almendra" + }, + { + "src": "http://fonts.gstatic.com/s/almendra/v23/H4ciBXKAlMnTn0CskxY4yLuShq63czE.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Almendra" + }, + { + "src": "http://fonts.gstatic.com/s/almendra/v23/H4cjBXKAlMnTn0Cskx6G7Zu4qKK-aihq.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Almendra" + }, + { + "src": "http://fonts.gstatic.com/s/almendra/v23/H4chBXKAlMnTn0CskxY48Ae9oqacbzhqDtg.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Almendra" + } + ] + }, + { + "name": "Almendra Display", + "fontFamily": "Almendra Display, system-ui", + "slug": "almendra-display", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/almendradisplay/v26/0FlPVOGWl1Sb4O3tETtADHRRlZhzXS_eTyer338.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Almendra Display" + } + ] + }, + { + "name": "Almendra SC", + "fontFamily": "Almendra SC, serif", + "slug": "almendra-sc", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/almendrasc/v25/Iure6Yx284eebowr7hbyTZZJprVA4XQ0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Almendra SC" + } + ] + }, + { + "name": "Alumni Sans", + "fontFamily": "Alumni Sans, sans-serif", + "slug": "alumni-sans", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd9OO5QqFsJ3C8qng.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Alumni Sans" + }, + { + "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd9uO9QqFsJ3C8qng.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Alumni Sans" + }, + { + "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd9Zu9QqFsJ3C8qng.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Alumni Sans" + }, + { + "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd9OO9QqFsJ3C8qng.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Alumni Sans" + }, + { + "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd9Cu9QqFsJ3C8qng.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Alumni Sans" + }, + { + "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd95uhQqFsJ3C8qng.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Alumni Sans" + }, + { + "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd93-hQqFsJ3C8qng.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Alumni Sans" + }, + { + "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd9uOhQqFsJ3C8qng.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Alumni Sans" + }, + { + "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd9kehQqFsJ3C8qng.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Alumni Sans" + }, + { + "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8Ky46lEN_io6npfB.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Alumni Sans" + }, + { + "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8Kw461EN_io6npfB.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Alumni Sans" + }, + { + "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8Kzm61EN_io6npfB.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Alumni Sans" + }, + { + "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8Ky461EN_io6npfB.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Alumni Sans" + }, + { + "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8KyK61EN_io6npfB.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Alumni Sans" + }, + { + "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8Kxm7FEN_io6npfB.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Alumni Sans" + }, + { + "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8Kxf7FEN_io6npfB.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Alumni Sans" + }, + { + "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8Kw47FEN_io6npfB.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Alumni Sans" + }, + { + "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8KwR7FEN_io6npfB.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Alumni Sans" + } + ] + }, + { + "name": "Alumni Sans Collegiate One", + "fontFamily": "Alumni Sans Collegiate One, sans-serif", + "slug": "alumni-sans-collegiate-one", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/alumnisanscollegiateone/v2/MQpB-XChK8G5CtmK_AuGxQrdNvPSXkn0RM-XqjWWhjdayDiPw2ta.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Alumni Sans Collegiate One" + }, + { + "src": "http://fonts.gstatic.com/s/alumnisanscollegiateone/v2/MQpD-XChK8G5CtmK_AuGxQrdNvPSXkn0RM-XqjWWhgdYwjytxntaDFU.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Alumni Sans Collegiate One" + } + ] + }, + { + "name": "Alumni Sans Inline One", + "fontFamily": "Alumni Sans Inline One, system-ui", + "slug": "alumni-sans-inline-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/alumnisansinlineone/v2/RrQBbpJx9zZ3IXTBOASKp5gJAetBdaihcjbpD3AZcr7xbYw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Alumni Sans Inline One" + }, + { + "src": "http://fonts.gstatic.com/s/alumnisansinlineone/v2/RrQDbpJx9zZ3IXTBOASKp5gJAetBdaihcjbpP3ITdpz0fYxcrQ.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Alumni Sans Inline One" + } + ] + }, + { + "name": "Alumni Sans Pinstripe", + "fontFamily": "Alumni Sans Pinstripe, sans-serif", + "slug": "alumni-sans-pinstripe", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/alumnisanspinstripe/v2/ZgNNjOFFPq_AUJD1umyS30W-Xub8zD1ObhezYrVIpcDA5w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Alumni Sans Pinstripe" + }, + { + "src": "http://fonts.gstatic.com/s/alumnisanspinstripe/v2/ZgNDjOFFPq_AUJD1umyS30W-Xub8zD1ObheDYL9Mh8XQ5_cY.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Alumni Sans Pinstripe" + } + ] + }, + { + "name": "Amarante", + "fontFamily": "Amarante, system-ui", + "slug": "amarante", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/amarante/v23/xMQXuF1KTa6EvGx9bq-3C3rAmD-b.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Amarante" + } + ] + }, + { + "name": "Amaranth", + "fontFamily": "Amaranth, sans-serif", + "slug": "amaranth", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/amaranth/v18/KtkuALODe433f0j1zPnCF9GqwnzW.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Amaranth" + }, + { + "src": "http://fonts.gstatic.com/s/amaranth/v18/KtkoALODe433f0j1zMnAHdWIx2zWD4I.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Amaranth" + }, + { + "src": "http://fonts.gstatic.com/s/amaranth/v18/KtkpALODe433f0j1zMF-OPWi6WDfFpuc.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Amaranth" + }, + { + "src": "http://fonts.gstatic.com/s/amaranth/v18/KtkrALODe433f0j1zMnAJWmn42T9E4ucRY8.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Amaranth" + } + ] + }, + { + "name": "Amatic SC", + "fontFamily": "Amatic SC, cursive", + "slug": "amatic-sc", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/amaticsc/v24/TUZyzwprpvBS1izr_vO0De6ecZQf1A.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Amatic SC" + }, + { + "src": "http://fonts.gstatic.com/s/amaticsc/v24/TUZ3zwprpvBS1izr_vOMscG6eb8D3WTy-A.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Amatic SC" + } + ] + }, + { + "name": "Amethysta", + "fontFamily": "Amethysta, serif", + "slug": "amethysta", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/amethysta/v16/rP2Fp2K15kgb_F3ibfWIGDWCBl0O8Q.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Amethysta" + } + ] + }, + { + "name": "Amiko", + "fontFamily": "Amiko, sans-serif", + "slug": "amiko", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/amiko/v12/WwkQxPq1DFK04tqlc17MMZgJ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Amiko" + }, + { + "src": "http://fonts.gstatic.com/s/amiko/v12/WwkdxPq1DFK04uJ9XXrEGoQAUco5.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Amiko" + }, + { + "src": "http://fonts.gstatic.com/s/amiko/v12/WwkdxPq1DFK04uIZXHrEGoQAUco5.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Amiko" + } + ] + }, + { + "name": "Amiri", + "fontFamily": "Amiri, serif", + "slug": "amiri", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/amiri/v27/J7aRnpd8CGxBHqUpvrIw74NL.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Amiri" + }, + { + "src": "http://fonts.gstatic.com/s/amiri/v27/J7afnpd8CGxBHpUrtLYS6pNLAjk.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Amiri" + }, + { + "src": "http://fonts.gstatic.com/s/amiri/v27/J7acnpd8CGxBHp2VkZY4xJ9CGyAa.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Amiri" + }, + { + "src": "http://fonts.gstatic.com/s/amiri/v27/J7aanpd8CGxBHpUrjAo9zptgHjAavCA.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Amiri" + } + ] + }, + { + "name": "Amiri Quran", + "fontFamily": "Amiri Quran, serif", + "slug": "amiri-quran", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/amiriquran/v7/_Xmo-Hk0rD6DbUL4_vH8Zq5t7Cycsu-2.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Amiri Quran" + } + ] + }, + { + "name": "Amita", + "fontFamily": "Amita, cursive", + "slug": "amita", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/amita/v16/HhyaU5si9Om7PQlvAfSKEZZL.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Amita" + }, + { + "src": "http://fonts.gstatic.com/s/amita/v16/HhyXU5si9Om7PTHTLtCCOopCTKkI.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Amita" + } + ] + }, + { + "name": "Anaheim", + "fontFamily": "Anaheim, sans-serif", + "slug": "anaheim", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/anaheim/v14/8vII7w042Wp87g4G0UTUEE5eK_w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Anaheim" + } + ] + }, + { + "name": "Andada Pro", + "fontFamily": "Andada Pro, serif", + "slug": "andada-pro", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/andadapro/v20/HhyEU5Qi9-SuOEhPe4LtKoVCuWGURPcg3DPJBY8cFLzvIt2S.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Andada Pro" + }, + { + "src": "http://fonts.gstatic.com/s/andadapro/v20/HhyEU5Qi9-SuOEhPe4LtKoVCuWGURPcg3DP7BY8cFLzvIt2S.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Andada Pro" + }, + { + "src": "http://fonts.gstatic.com/s/andadapro/v20/HhyEU5Qi9-SuOEhPe4LtKoVCuWGURPcg3DMXAo8cFLzvIt2S.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Andada Pro" + }, + { + "src": "http://fonts.gstatic.com/s/andadapro/v20/HhyEU5Qi9-SuOEhPe4LtKoVCuWGURPcg3DMuAo8cFLzvIt2S.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Andada Pro" + }, + { + "src": "http://fonts.gstatic.com/s/andadapro/v20/HhyEU5Qi9-SuOEhPe4LtKoVCuWGURPcg3DNJAo8cFLzvIt2S.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Andada Pro" + }, + { + "src": "http://fonts.gstatic.com/s/andadapro/v20/HhyGU5Qi9-SuOEhPe4LtAIxwRrn9L22O2yYBRmdfHrjNJ82Stjw.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Andada Pro" + }, + { + "src": "http://fonts.gstatic.com/s/andadapro/v20/HhyGU5Qi9-SuOEhPe4LtAIxwRrn9L22O2yYBRlVfHrjNJ82Stjw.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Andada Pro" + }, + { + "src": "http://fonts.gstatic.com/s/andadapro/v20/HhyGU5Qi9-SuOEhPe4LtAIxwRrn9L22O2yYBRrlYHrjNJ82Stjw.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Andada Pro" + }, + { + "src": "http://fonts.gstatic.com/s/andadapro/v20/HhyGU5Qi9-SuOEhPe4LtAIxwRrn9L22O2yYBRoBYHrjNJ82Stjw.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Andada Pro" + }, + { + "src": "http://fonts.gstatic.com/s/andadapro/v20/HhyGU5Qi9-SuOEhPe4LtAIxwRrn9L22O2yYBRudYHrjNJ82Stjw.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Andada Pro" + } + ] + }, + { + "name": "Andika", + "fontFamily": "Andika, sans-serif", + "slug": "andika", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/andika/v25/mem_Ya6iyW-LwqgAbbwRWrwGVA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Andika" + }, + { + "src": "http://fonts.gstatic.com/s/andika/v25/mem9Ya6iyW-Lwqgwb7YVeLkWVNBt.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Andika" + }, + { + "src": "http://fonts.gstatic.com/s/andika/v25/mem8Ya6iyW-Lwqg40ZM1UpcaXcl0Aw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Andika" + }, + { + "src": "http://fonts.gstatic.com/s/andika/v25/mem6Ya6iyW-Lwqgwb46pV50ef8xkA76a.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Andika" + } + ] + }, + { + "name": "Anek Bangla", + "fontFamily": "Anek Bangla, sans-serif", + "slug": "anek-bangla", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/anekbangla/v4/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3Ofm9YIocg56yyvt0.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Anek Bangla" + }, + { + "src": "http://fonts.gstatic.com/s/anekbangla/v4/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3Ofu9ZIocg56yyvt0.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Anek Bangla" + }, + { + "src": "http://fonts.gstatic.com/s/anekbangla/v4/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3OfjFZIocg56yyvt0.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Anek Bangla" + }, + { + "src": "http://fonts.gstatic.com/s/anekbangla/v4/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3Ofm9ZIocg56yyvt0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Anek Bangla" + }, + { + "src": "http://fonts.gstatic.com/s/anekbangla/v4/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3Ofl1ZIocg56yyvt0.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Anek Bangla" + }, + { + "src": "http://fonts.gstatic.com/s/anekbangla/v4/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3OfrFeIocg56yyvt0.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Anek Bangla" + }, + { + "src": "http://fonts.gstatic.com/s/anekbangla/v4/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3OfoheIocg56yyvt0.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Anek Bangla" + }, + { + "src": "http://fonts.gstatic.com/s/anekbangla/v4/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3Ofu9eIocg56yyvt0.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Anek Bangla" + } + ] + }, + { + "name": "Anek Devanagari", + "fontFamily": "Anek Devanagari, sans-serif", + "slug": "anek-devanagari", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/anekdevanagari/v8/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLDtk-9nFk0LjZ7E.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Anek Devanagari" + }, + { + "src": "http://fonts.gstatic.com/s/anekdevanagari/v8/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLBtku9nFk0LjZ7E.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Anek Devanagari" + }, + { + "src": "http://fonts.gstatic.com/s/anekdevanagari/v8/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLCzku9nFk0LjZ7E.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Anek Devanagari" + }, + { + "src": "http://fonts.gstatic.com/s/anekdevanagari/v8/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLDtku9nFk0LjZ7E.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Anek Devanagari" + }, + { + "src": "http://fonts.gstatic.com/s/anekdevanagari/v8/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLDfku9nFk0LjZ7E.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Anek Devanagari" + }, + { + "src": "http://fonts.gstatic.com/s/anekdevanagari/v8/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLAzle9nFk0LjZ7E.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Anek Devanagari" + }, + { + "src": "http://fonts.gstatic.com/s/anekdevanagari/v8/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLAKle9nFk0LjZ7E.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Anek Devanagari" + }, + { + "src": "http://fonts.gstatic.com/s/anekdevanagari/v8/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLBtle9nFk0LjZ7E.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Anek Devanagari" + } + ] + }, + { + "name": "Anek Gujarati", + "fontFamily": "Anek Gujarati, sans-serif", + "slug": "anek-gujarati", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/anekgujarati/v9/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-0F5G7w0KgB7Lm7g.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Anek Gujarati" + }, + { + "src": "http://fonts.gstatic.com/s/anekgujarati/v9/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-0l5C7w0KgB7Lm7g.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Anek Gujarati" + }, + { + "src": "http://fonts.gstatic.com/s/anekgujarati/v9/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-0SZC7w0KgB7Lm7g.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Anek Gujarati" + }, + { + "src": "http://fonts.gstatic.com/s/anekgujarati/v9/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-0F5C7w0KgB7Lm7g.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Anek Gujarati" + }, + { + "src": "http://fonts.gstatic.com/s/anekgujarati/v9/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-0JZC7w0KgB7Lm7g.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Anek Gujarati" + }, + { + "src": "http://fonts.gstatic.com/s/anekgujarati/v9/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-0yZe7w0KgB7Lm7g.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Anek Gujarati" + }, + { + "src": "http://fonts.gstatic.com/s/anekgujarati/v9/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-08Je7w0KgB7Lm7g.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Anek Gujarati" + }, + { + "src": "http://fonts.gstatic.com/s/anekgujarati/v9/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-0l5e7w0KgB7Lm7g.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Anek Gujarati" + } + ] + }, + { + "name": "Anek Gurmukhi", + "fontFamily": "Anek Gurmukhi, sans-serif", + "slug": "anek-gurmukhi", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/anekgurmukhi/v8/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkbd5ppXK41H6DjbA.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Anek Gurmukhi" + }, + { + "src": "http://fonts.gstatic.com/s/anekgurmukhi/v8/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkb95tpXK41H6DjbA.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Anek Gurmukhi" + }, + { + "src": "http://fonts.gstatic.com/s/anekgurmukhi/v8/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkbKZtpXK41H6DjbA.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Anek Gurmukhi" + }, + { + "src": "http://fonts.gstatic.com/s/anekgurmukhi/v8/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkbd5tpXK41H6DjbA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Anek Gurmukhi" + }, + { + "src": "http://fonts.gstatic.com/s/anekgurmukhi/v8/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkbRZtpXK41H6DjbA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Anek Gurmukhi" + }, + { + "src": "http://fonts.gstatic.com/s/anekgurmukhi/v8/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkbqZxpXK41H6DjbA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Anek Gurmukhi" + }, + { + "src": "http://fonts.gstatic.com/s/anekgurmukhi/v8/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkbkJxpXK41H6DjbA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Anek Gurmukhi" + }, + { + "src": "http://fonts.gstatic.com/s/anekgurmukhi/v8/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkb95xpXK41H6DjbA.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Anek Gurmukhi" + } + ] + }, + { + "name": "Anek Kannada", + "fontFamily": "Anek Kannada, sans-serif", + "slug": "anek-kannada", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/anekkannada/v4/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dFDEAukVReA1oef.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Anek Kannada" + }, + { + "src": "http://fonts.gstatic.com/s/anekkannada/v4/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dHDEQukVReA1oef.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Anek Kannada" + }, + { + "src": "http://fonts.gstatic.com/s/anekkannada/v4/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dEdEQukVReA1oef.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Anek Kannada" + }, + { + "src": "http://fonts.gstatic.com/s/anekkannada/v4/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dFDEQukVReA1oef.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Anek Kannada" + }, + { + "src": "http://fonts.gstatic.com/s/anekkannada/v4/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dFxEQukVReA1oef.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Anek Kannada" + }, + { + "src": "http://fonts.gstatic.com/s/anekkannada/v4/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dGdFgukVReA1oef.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Anek Kannada" + }, + { + "src": "http://fonts.gstatic.com/s/anekkannada/v4/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dGkFgukVReA1oef.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Anek Kannada" + }, + { + "src": "http://fonts.gstatic.com/s/anekkannada/v4/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dHDFgukVReA1oef.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Anek Kannada" + } + ] + }, + { + "name": "Anek Latin", + "fontFamily": "Anek Latin, sans-serif", + "slug": "anek-latin", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/aneklatin/v4/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3PuR7EZKdClWL3kgw.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Anek Latin" + }, + { + "src": "http://fonts.gstatic.com/s/aneklatin/v4/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3Pux7AZKdClWL3kgw.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Anek Latin" + }, + { + "src": "http://fonts.gstatic.com/s/aneklatin/v4/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3PuGbAZKdClWL3kgw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Anek Latin" + }, + { + "src": "http://fonts.gstatic.com/s/aneklatin/v4/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3PuR7AZKdClWL3kgw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Anek Latin" + }, + { + "src": "http://fonts.gstatic.com/s/aneklatin/v4/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3PudbAZKdClWL3kgw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Anek Latin" + }, + { + "src": "http://fonts.gstatic.com/s/aneklatin/v4/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3PumbcZKdClWL3kgw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Anek Latin" + }, + { + "src": "http://fonts.gstatic.com/s/aneklatin/v4/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3PuoLcZKdClWL3kgw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Anek Latin" + }, + { + "src": "http://fonts.gstatic.com/s/aneklatin/v4/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3Pux7cZKdClWL3kgw.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Anek Latin" + } + ] + }, + { + "name": "Anek Malayalam", + "fontFamily": "Anek Malayalam, sans-serif", + "slug": "anek-malayalam", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/anekmalayalam/v5/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTUZu_HMr5PDO71Qs.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Anek Malayalam" + }, + { + "src": "http://fonts.gstatic.com/s/anekmalayalam/v5/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTURu-HMr5PDO71Qs.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Anek Malayalam" + }, + { + "src": "http://fonts.gstatic.com/s/anekmalayalam/v5/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTUcW-HMr5PDO71Qs.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Anek Malayalam" + }, + { + "src": "http://fonts.gstatic.com/s/anekmalayalam/v5/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTUZu-HMr5PDO71Qs.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Anek Malayalam" + }, + { + "src": "http://fonts.gstatic.com/s/anekmalayalam/v5/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTUam-HMr5PDO71Qs.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Anek Malayalam" + }, + { + "src": "http://fonts.gstatic.com/s/anekmalayalam/v5/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTUUW5HMr5PDO71Qs.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Anek Malayalam" + }, + { + "src": "http://fonts.gstatic.com/s/anekmalayalam/v5/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTUXy5HMr5PDO71Qs.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Anek Malayalam" + }, + { + "src": "http://fonts.gstatic.com/s/anekmalayalam/v5/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTURu5HMr5PDO71Qs.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Anek Malayalam" + } + ] + }, + { + "name": "Anek Odia", + "fontFamily": "Anek Odia, sans-serif", + "slug": "anek-odia", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/anekodia/v5/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnmZf63mXZAtm_es.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Anek Odia" + }, + { + "src": "http://fonts.gstatic.com/s/anekodia/v5/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnkZfq3mXZAtm_es.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Anek Odia" + }, + { + "src": "http://fonts.gstatic.com/s/anekodia/v5/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnnHfq3mXZAtm_es.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Anek Odia" + }, + { + "src": "http://fonts.gstatic.com/s/anekodia/v5/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnmZfq3mXZAtm_es.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Anek Odia" + }, + { + "src": "http://fonts.gstatic.com/s/anekodia/v5/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnmrfq3mXZAtm_es.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Anek Odia" + }, + { + "src": "http://fonts.gstatic.com/s/anekodia/v5/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnlHea3mXZAtm_es.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Anek Odia" + }, + { + "src": "http://fonts.gstatic.com/s/anekodia/v5/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnl-ea3mXZAtm_es.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Anek Odia" + }, + { + "src": "http://fonts.gstatic.com/s/anekodia/v5/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnkZea3mXZAtm_es.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Anek Odia" + } + ] + }, + { + "name": "Anek Tamil", + "fontFamily": "Anek Tamil, sans-serif", + "slug": "anek-tamil", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/anektamil/v9/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNQiZ6q4v4oegjOQ.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Anek Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/anektamil/v9/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNwid6q4v4oegjOQ.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Anek Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/anektamil/v9/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNHCd6q4v4oegjOQ.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Anek Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/anektamil/v9/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNQid6q4v4oegjOQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Anek Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/anektamil/v9/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNcCd6q4v4oegjOQ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Anek Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/anektamil/v9/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNnCB6q4v4oegjOQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Anek Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/anektamil/v9/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNpSB6q4v4oegjOQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Anek Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/anektamil/v9/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNwiB6q4v4oegjOQ.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Anek Tamil" + } + ] + }, + { + "name": "Anek Telugu", + "fontFamily": "Anek Telugu, sans-serif", + "slug": "anek-telugu", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/anektelugu/v8/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i13y-_oE2G2ep10_8.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Anek Telugu" + }, + { + "src": "http://fonts.gstatic.com/s/anektelugu/v8/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i136--oE2G2ep10_8.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Anek Telugu" + }, + { + "src": "http://fonts.gstatic.com/s/anektelugu/v8/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i133G-oE2G2ep10_8.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Anek Telugu" + }, + { + "src": "http://fonts.gstatic.com/s/anektelugu/v8/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i13y--oE2G2ep10_8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Anek Telugu" + }, + { + "src": "http://fonts.gstatic.com/s/anektelugu/v8/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i13x2-oE2G2ep10_8.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Anek Telugu" + }, + { + "src": "http://fonts.gstatic.com/s/anektelugu/v8/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i13_G5oE2G2ep10_8.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Anek Telugu" + }, + { + "src": "http://fonts.gstatic.com/s/anektelugu/v8/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i138i5oE2G2ep10_8.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Anek Telugu" + }, + { + "src": "http://fonts.gstatic.com/s/anektelugu/v8/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i136-5oE2G2ep10_8.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Anek Telugu" + } + ] + }, + { + "name": "Angkor", + "fontFamily": "Angkor, system-ui", + "slug": "angkor", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/angkor/v28/H4cmBXyAlsPdnlb-8iw-4Lqggw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Angkor" + } + ] + }, + { + "name": "Annie Use Your Telescope", + "fontFamily": "Annie Use Your Telescope, cursive", + "slug": "annie-use-your-telescope", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/annieuseyourtelescope/v18/daaLSS4tI2qYYl3Jq9s_Hu74xwktnlKxH6osGVGjlDfB3UUVZA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Annie Use Your Telescope" + } + ] + }, + { + "name": "Anonymous Pro", + "fontFamily": "Anonymous Pro, monospace", + "slug": "anonymous-pro", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/anonymouspro/v21/rP2Bp2a15UIB7Un-bOeISG3pLlw89CH98Ko.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Anonymous Pro" + }, + { + "src": "http://fonts.gstatic.com/s/anonymouspro/v21/rP2fp2a15UIB7Un-bOeISG3pHl428AP44Kqr2Q.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Anonymous Pro" + }, + { + "src": "http://fonts.gstatic.com/s/anonymouspro/v21/rP2cp2a15UIB7Un-bOeISG3pFuAT0CnW7KOywKo.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Anonymous Pro" + }, + { + "src": "http://fonts.gstatic.com/s/anonymouspro/v21/rP2ap2a15UIB7Un-bOeISG3pHl4OTCzc6IG30KqB9Q.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Anonymous Pro" + } + ] + }, + { + "name": "Antic", + "fontFamily": "Antic, sans-serif", + "slug": "antic", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/antic/v19/TuGfUVB8XY5DRaZLodgzydtk.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Antic" + } + ] + }, + { + "name": "Antic Didone", + "fontFamily": "Antic Didone, serif", + "slug": "antic-didone", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/anticdidone/v16/RWmPoKKX6u8sp8fIWdnDKqDiqYsGBGBzCw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Antic Didone" + } + ] + }, + { + "name": "Antic Slab", + "fontFamily": "Antic Slab, serif", + "slug": "antic-slab", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/anticslab/v16/bWt97fPFfRzkCa9Jlp6IWcJWXW5p5Qo.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Antic Slab" + } + ] + }, + { + "name": "Anton", + "fontFamily": "Anton, sans-serif", + "slug": "anton", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/anton/v23/1Ptgg87LROyAm0K08i4gS7lu.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Anton" + } + ] + }, + { + "name": "Antonio", + "fontFamily": "Antonio, sans-serif", + "slug": "antonio", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/antonio/v17/gNMbW3NwSYq_9WD34ngK5F8vR8T0PVxx8BtIY2DwSXlM.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Antonio" + }, + { + "src": "http://fonts.gstatic.com/s/antonio/v17/gNMbW3NwSYq_9WD34ngK5F8vR8T0PVzx8RtIY2DwSXlM.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Antonio" + }, + { + "src": "http://fonts.gstatic.com/s/antonio/v17/gNMbW3NwSYq_9WD34ngK5F8vR8T0PVwv8RtIY2DwSXlM.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Antonio" + }, + { + "src": "http://fonts.gstatic.com/s/antonio/v17/gNMbW3NwSYq_9WD34ngK5F8vR8T0PVxx8RtIY2DwSXlM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Antonio" + }, + { + "src": "http://fonts.gstatic.com/s/antonio/v17/gNMbW3NwSYq_9WD34ngK5F8vR8T0PVxD8RtIY2DwSXlM.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Antonio" + }, + { + "src": "http://fonts.gstatic.com/s/antonio/v17/gNMbW3NwSYq_9WD34ngK5F8vR8T0PVyv9htIY2DwSXlM.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Antonio" + }, + { + "src": "http://fonts.gstatic.com/s/antonio/v17/gNMbW3NwSYq_9WD34ngK5F8vR8T0PVyW9htIY2DwSXlM.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Antonio" + } + ] + }, + { + "name": "Anuphan", + "fontFamily": "Anuphan, sans-serif", + "slug": "anuphan", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/anuphan/v3/2sDBZGxYgY7LkLT0s2Yrm5UhuLoIZCkY9A4kGmW927Gu.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Anuphan" + }, + { + "src": "http://fonts.gstatic.com/s/anuphan/v3/2sDBZGxYgY7LkLT0s2Yrm5UhuLoIZCmY9Q4kGmW927Gu.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Anuphan" + }, + { + "src": "http://fonts.gstatic.com/s/anuphan/v3/2sDBZGxYgY7LkLT0s2Yrm5UhuLoIZClG9Q4kGmW927Gu.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Anuphan" + }, + { + "src": "http://fonts.gstatic.com/s/anuphan/v3/2sDBZGxYgY7LkLT0s2Yrm5UhuLoIZCkY9Q4kGmW927Gu.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Anuphan" + }, + { + "src": "http://fonts.gstatic.com/s/anuphan/v3/2sDBZGxYgY7LkLT0s2Yrm5UhuLoIZCkq9Q4kGmW927Gu.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Anuphan" + }, + { + "src": "http://fonts.gstatic.com/s/anuphan/v3/2sDBZGxYgY7LkLT0s2Yrm5UhuLoIZCnG8g4kGmW927Gu.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Anuphan" + }, + { + "src": "http://fonts.gstatic.com/s/anuphan/v3/2sDBZGxYgY7LkLT0s2Yrm5UhuLoIZCn_8g4kGmW927Gu.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Anuphan" + } + ] + }, + { + "name": "Anybody", + "fontFamily": "Anybody, system-ui", + "slug": "anybody", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/anybody/v9/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4J12HPrsXD_nBPpQ.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Anybody" + }, + { + "src": "http://fonts.gstatic.com/s/anybody/v9/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4JV2DPrsXD_nBPpQ.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Anybody" + }, + { + "src": "http://fonts.gstatic.com/s/anybody/v9/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4JiWDPrsXD_nBPpQ.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Anybody" + }, + { + "src": "http://fonts.gstatic.com/s/anybody/v9/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4J12DPrsXD_nBPpQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Anybody" + }, + { + "src": "http://fonts.gstatic.com/s/anybody/v9/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4J5WDPrsXD_nBPpQ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Anybody" + }, + { + "src": "http://fonts.gstatic.com/s/anybody/v9/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4JCWfPrsXD_nBPpQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Anybody" + }, + { + "src": "http://fonts.gstatic.com/s/anybody/v9/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4JMGfPrsXD_nBPpQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Anybody" + }, + { + "src": "http://fonts.gstatic.com/s/anybody/v9/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4JV2fPrsXD_nBPpQ.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Anybody" + }, + { + "src": "http://fonts.gstatic.com/s/anybody/v9/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4JfmfPrsXD_nBPpQ.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Anybody" + }, + { + "src": "http://fonts.gstatic.com/s/anybody/v9/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyMn7M_H3HVfpcHY.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Anybody" + }, + { + "src": "http://fonts.gstatic.com/s/anybody/v9/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyOn7c_H3HVfpcHY.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Anybody" + }, + { + "src": "http://fonts.gstatic.com/s/anybody/v9/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyN57c_H3HVfpcHY.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Anybody" + }, + { + "src": "http://fonts.gstatic.com/s/anybody/v9/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyMn7c_H3HVfpcHY.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Anybody" + }, + { + "src": "http://fonts.gstatic.com/s/anybody/v9/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyMV7c_H3HVfpcHY.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Anybody" + }, + { + "src": "http://fonts.gstatic.com/s/anybody/v9/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyP56s_H3HVfpcHY.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Anybody" + }, + { + "src": "http://fonts.gstatic.com/s/anybody/v9/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyPA6s_H3HVfpcHY.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Anybody" + }, + { + "src": "http://fonts.gstatic.com/s/anybody/v9/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyOn6s_H3HVfpcHY.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Anybody" + }, + { + "src": "http://fonts.gstatic.com/s/anybody/v9/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyOO6s_H3HVfpcHY.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Anybody" + } + ] + }, + { + "name": "Aoboshi One", + "fontFamily": "Aoboshi One, serif", + "slug": "aoboshi-one", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/aoboshione/v10/Gg8xN5kXaAXtHQrFxwl10ysLBmZX_UEg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Aoboshi One" + } + ] + }, + { + "name": "Arapey", + "fontFamily": "Arapey, serif", + "slug": "arapey", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/arapey/v16/-W__XJn-UDDA2RC6Z9AcZkIzeg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Arapey" + }, + { + "src": "http://fonts.gstatic.com/s/arapey/v16/-W_9XJn-UDDA2RCKZdoYREcjeo0k.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Arapey" + } + ] + }, + { + "name": "Arbutus", + "fontFamily": "Arbutus, system-ui", + "slug": "arbutus", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/arbutus/v24/NaPYcZ7dG_5J3poob9JtryO8fMU.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Arbutus" + } + ] + }, + { + "name": "Arbutus Slab", + "fontFamily": "Arbutus Slab, serif", + "slug": "arbutus-slab", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/arbutusslab/v16/oY1Z8e7OuLXkJGbXtr5ba7ZVa68dJlaFAQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Arbutus Slab" + } + ] + }, + { + "name": "Architects Daughter", + "fontFamily": "Architects Daughter, cursive", + "slug": "architects-daughter", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/architectsdaughter/v18/KtkxAKiDZI_td1Lkx62xHZHDtgO_Y-bvfY5q4szgE-Q.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Architects Daughter" + } + ] + }, + { + "name": "Archivo", + "fontFamily": "Archivo, sans-serif", + "slug": "archivo", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/archivo/v18/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTTNDJp8B1oJ0vyVQ.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Archivo" + }, + { + "src": "http://fonts.gstatic.com/s/archivo/v18/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTTtDNp8B1oJ0vyVQ.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Archivo" + }, + { + "src": "http://fonts.gstatic.com/s/archivo/v18/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTTajNp8B1oJ0vyVQ.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Archivo" + }, + { + "src": "http://fonts.gstatic.com/s/archivo/v18/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTTNDNp8B1oJ0vyVQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Archivo" + }, + { + "src": "http://fonts.gstatic.com/s/archivo/v18/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTTBjNp8B1oJ0vyVQ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Archivo" + }, + { + "src": "http://fonts.gstatic.com/s/archivo/v18/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTT6jRp8B1oJ0vyVQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Archivo" + }, + { + "src": "http://fonts.gstatic.com/s/archivo/v18/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTT0zRp8B1oJ0vyVQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Archivo" + }, + { + "src": "http://fonts.gstatic.com/s/archivo/v18/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTTtDRp8B1oJ0vyVQ.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Archivo" + }, + { + "src": "http://fonts.gstatic.com/s/archivo/v18/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTTnTRp8B1oJ0vyVQ.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Archivo" + }, + { + "src": "http://fonts.gstatic.com/s/archivo/v18/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HCBshdsBU7iVdxQ.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Archivo" + }, + { + "src": "http://fonts.gstatic.com/s/archivo/v18/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HABsxdsBU7iVdxQ.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Archivo" + }, + { + "src": "http://fonts.gstatic.com/s/archivo/v18/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HDfsxdsBU7iVdxQ.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Archivo" + }, + { + "src": "http://fonts.gstatic.com/s/archivo/v18/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HCBsxdsBU7iVdxQ.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Archivo" + }, + { + "src": "http://fonts.gstatic.com/s/archivo/v18/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HCzsxdsBU7iVdxQ.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Archivo" + }, + { + "src": "http://fonts.gstatic.com/s/archivo/v18/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HBftBdsBU7iVdxQ.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Archivo" + }, + { + "src": "http://fonts.gstatic.com/s/archivo/v18/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HBmtBdsBU7iVdxQ.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Archivo" + }, + { + "src": "http://fonts.gstatic.com/s/archivo/v18/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HABtBdsBU7iVdxQ.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Archivo" + }, + { + "src": "http://fonts.gstatic.com/s/archivo/v18/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HAotBdsBU7iVdxQ.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Archivo" + } + ] + }, + { + "name": "Archivo Black", + "fontFamily": "Archivo Black, sans-serif", + "slug": "archivo-black", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/archivoblack/v17/HTxqL289NzCGg4MzN6KJ7eW6OYuP_x7yx3A.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Archivo Black" + } + ] + }, + { + "name": "Archivo Narrow", + "fontFamily": "Archivo Narrow, sans-serif", + "slug": "archivo-narrow", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/archivonarrow/v29/tss5ApVBdCYD5Q7hcxTE1ArZ0Zz8oY2KRmwvKhhvLFGKpHOtFCQ76Q.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Archivo Narrow" + }, + { + "src": "http://fonts.gstatic.com/s/archivonarrow/v29/tss5ApVBdCYD5Q7hcxTE1ArZ0Zz8oY2KRmwvKhhvHlGKpHOtFCQ76Q.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Archivo Narrow" + }, + { + "src": "http://fonts.gstatic.com/s/archivonarrow/v29/tss5ApVBdCYD5Q7hcxTE1ArZ0Zz8oY2KRmwvKhhv8laKpHOtFCQ76Q.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Archivo Narrow" + }, + { + "src": "http://fonts.gstatic.com/s/archivonarrow/v29/tss5ApVBdCYD5Q7hcxTE1ArZ0Zz8oY2KRmwvKhhvy1aKpHOtFCQ76Q.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Archivo Narrow" + }, + { + "src": "http://fonts.gstatic.com/s/archivonarrow/v29/tss7ApVBdCYD5Q7hcxTE1ArZ0bb1k3JSLwe1hB965BJi53mpNiEr6T6Y.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Archivo Narrow" + }, + { + "src": "http://fonts.gstatic.com/s/archivonarrow/v29/tss7ApVBdCYD5Q7hcxTE1ArZ0bb1k3JSLwe1hB965BJQ53mpNiEr6T6Y.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Archivo Narrow" + }, + { + "src": "http://fonts.gstatic.com/s/archivonarrow/v29/tss7ApVBdCYD5Q7hcxTE1ArZ0bb1k3JSLwe1hB965BK84HmpNiEr6T6Y.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Archivo Narrow" + }, + { + "src": "http://fonts.gstatic.com/s/archivonarrow/v29/tss7ApVBdCYD5Q7hcxTE1ArZ0bb1k3JSLwe1hB965BKF4HmpNiEr6T6Y.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Archivo Narrow" + } + ] + }, + { + "name": "Are You Serious", + "fontFamily": "Are You Serious, cursive", + "slug": "are-you-serious", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/areyouserious/v10/ll8kK2GVSSr-PtjQ5nONVcNn4306hT9nCGRayg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Are You Serious" + } + ] + }, + { + "name": "Aref Ruqaa", + "fontFamily": "Aref Ruqaa, serif", + "slug": "aref-ruqaa", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/arefruqaa/v25/WwkbxPW1E165rajQKDulEIAiVNo5xNY.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Aref Ruqaa" + }, + { + "src": "http://fonts.gstatic.com/s/arefruqaa/v25/WwkYxPW1E165rajQKDulKDwNcNIS2N_7Bdk.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Aref Ruqaa" + } + ] + }, + { + "name": "Aref Ruqaa Ink", + "fontFamily": "Aref Ruqaa Ink, serif", + "slug": "aref-ruqaa-ink", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/arefruqaaink/v8/1q2fY5WOGUFlt84GTOkP6Kdx72ThVIGpgnxL.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Aref Ruqaa Ink" + }, + { + "src": "http://fonts.gstatic.com/s/arefruqaaink/v8/1q2cY5WOGUFlt84GTOkP6Kdx71xde6WhqWBCyxWn.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Aref Ruqaa Ink" + } + ] + }, + { + "name": "Arima", + "fontFamily": "Arima, system-ui", + "slug": "arima", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/arima/v5/neIWzCqmt4Aup_qE1nFWqxI1RZX1YTE-pQGOyYw2fw.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Arima" + }, + { + "src": "http://fonts.gstatic.com/s/arima/v5/neIWzCqmt4Aup_qE1nFWqxI1RZX14TA-pQGOyYw2fw.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Arima" + }, + { + "src": "http://fonts.gstatic.com/s/arima/v5/neIWzCqmt4Aup_qE1nFWqxI1RZX1PzA-pQGOyYw2fw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Arima" + }, + { + "src": "http://fonts.gstatic.com/s/arima/v5/neIWzCqmt4Aup_qE1nFWqxI1RZX1YTA-pQGOyYw2fw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Arima" + }, + { + "src": "http://fonts.gstatic.com/s/arima/v5/neIWzCqmt4Aup_qE1nFWqxI1RZX1UzA-pQGOyYw2fw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Arima" + }, + { + "src": "http://fonts.gstatic.com/s/arima/v5/neIWzCqmt4Aup_qE1nFWqxI1RZX1vzc-pQGOyYw2fw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Arima" + }, + { + "src": "http://fonts.gstatic.com/s/arima/v5/neIWzCqmt4Aup_qE1nFWqxI1RZX1hjc-pQGOyYw2fw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Arima" + } + ] + }, + { + "name": "Arimo", + "fontFamily": "Arimo, sans-serif", + "slug": "arimo", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/arimo/v28/P5sfzZCDf9_T_3cV7NCUECyoxNk37cxsBxDAVQI4aA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Arimo" + }, + { + "src": "http://fonts.gstatic.com/s/arimo/v28/P5sfzZCDf9_T_3cV7NCUECyoxNk338xsBxDAVQI4aA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Arimo" + }, + { + "src": "http://fonts.gstatic.com/s/arimo/v28/P5sfzZCDf9_T_3cV7NCUECyoxNk3M8tsBxDAVQI4aA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Arimo" + }, + { + "src": "http://fonts.gstatic.com/s/arimo/v28/P5sfzZCDf9_T_3cV7NCUECyoxNk3CstsBxDAVQI4aA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Arimo" + }, + { + "src": "http://fonts.gstatic.com/s/arimo/v28/P5sdzZCDf9_T_10c3i9MeUcyat4iJY-ERBrEdwcoaKww.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Arimo" + }, + { + "src": "http://fonts.gstatic.com/s/arimo/v28/P5sdzZCDf9_T_10c3i9MeUcyat4iJY-2RBrEdwcoaKww.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Arimo" + }, + { + "src": "http://fonts.gstatic.com/s/arimo/v28/P5sdzZCDf9_T_10c3i9MeUcyat4iJY9aQxrEdwcoaKww.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Arimo" + }, + { + "src": "http://fonts.gstatic.com/s/arimo/v28/P5sdzZCDf9_T_10c3i9MeUcyat4iJY9jQxrEdwcoaKww.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Arimo" + } + ] + }, + { + "name": "Arizonia", + "fontFamily": "Arizonia, cursive", + "slug": "arizonia", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/arizonia/v19/neIIzCemt4A5qa7mv6WGHK06UY30.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Arizonia" + } + ] + }, + { + "name": "Armata", + "fontFamily": "Armata, sans-serif", + "slug": "armata", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/armata/v20/gokvH63_HV5jQ-E9lD53Q2u_mQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Armata" + } + ] + }, + { + "name": "Arsenal", + "fontFamily": "Arsenal, sans-serif", + "slug": "arsenal", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/arsenal/v12/wXKrE3kQtZQ4pF3D11_WAewrhXY.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Arsenal" + }, + { + "src": "http://fonts.gstatic.com/s/arsenal/v12/wXKpE3kQtZQ4pF3D513cBc4ulXYrtA.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Arsenal" + }, + { + "src": "http://fonts.gstatic.com/s/arsenal/v12/wXKuE3kQtZQ4pF3D7-P5JeQAmX8yrdk.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Arsenal" + }, + { + "src": "http://fonts.gstatic.com/s/arsenal/v12/wXKsE3kQtZQ4pF3D513kueEKnV03vdnKjw.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Arsenal" + } + ] + }, + { + "name": "Artifika", + "fontFamily": "Artifika, serif", + "slug": "artifika", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/artifika/v21/VEMyRoxzronptCuxu6Wt5jDtreOL.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Artifika" + } + ] + }, + { + "name": "Arvo", + "fontFamily": "Arvo, serif", + "slug": "arvo", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/arvo/v20/tDbD2oWUg0MKmSAa7Lzr7vs.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Arvo" + }, + { + "src": "http://fonts.gstatic.com/s/arvo/v20/tDbN2oWUg0MKqSIQ6J7u_vvijQ.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Arvo" + }, + { + "src": "http://fonts.gstatic.com/s/arvo/v20/tDbM2oWUg0MKoZw1yLTA8vL7lAE.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Arvo" + }, + { + "src": "http://fonts.gstatic.com/s/arvo/v20/tDbO2oWUg0MKqSIoVLHK9tD-hAHkGg.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Arvo" + } + ] + }, + { + "name": "Arya", + "fontFamily": "Arya, sans-serif", + "slug": "arya", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/arya/v19/ga6CawNG-HJd9Ub1-beqdFE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Arya" + }, + { + "src": "http://fonts.gstatic.com/s/arya/v19/ga6NawNG-HJdzfra3b-BaFg3dRE.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Arya" + } + ] + }, + { + "name": "Asap", + "fontFamily": "Asap, sans-serif", + "slug": "asap", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/asap/v26/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYkqQsLmOXoA7Glw.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Asap" + }, + { + "src": "http://fonts.gstatic.com/s/asap/v26/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYEqUsLmOXoA7Glw.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Asap" + }, + { + "src": "http://fonts.gstatic.com/s/asap/v26/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYzKUsLmOXoA7Glw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Asap" + }, + { + "src": "http://fonts.gstatic.com/s/asap/v26/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYkqUsLmOXoA7Glw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Asap" + }, + { + "src": "http://fonts.gstatic.com/s/asap/v26/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYoKUsLmOXoA7Glw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Asap" + }, + { + "src": "http://fonts.gstatic.com/s/asap/v26/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYTKIsLmOXoA7Glw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Asap" + }, + { + "src": "http://fonts.gstatic.com/s/asap/v26/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYdaIsLmOXoA7Glw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Asap" + }, + { + "src": "http://fonts.gstatic.com/s/asap/v26/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYEqIsLmOXoA7Glw.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Asap" + }, + { + "src": "http://fonts.gstatic.com/s/asap/v26/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYO6IsLmOXoA7Glw.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Asap" + }, + { + "src": "http://fonts.gstatic.com/s/asap/v26/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWubEbGmTggvWl0Qn.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Asap" + }, + { + "src": "http://fonts.gstatic.com/s/asap/v26/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWuZEbWmTggvWl0Qn.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Asap" + }, + { + "src": "http://fonts.gstatic.com/s/asap/v26/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWuaabWmTggvWl0Qn.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Asap" + }, + { + "src": "http://fonts.gstatic.com/s/asap/v26/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWubEbWmTggvWl0Qn.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Asap" + }, + { + "src": "http://fonts.gstatic.com/s/asap/v26/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWub2bWmTggvWl0Qn.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Asap" + }, + { + "src": "http://fonts.gstatic.com/s/asap/v26/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWuYaammTggvWl0Qn.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Asap" + }, + { + "src": "http://fonts.gstatic.com/s/asap/v26/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWuYjammTggvWl0Qn.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Asap" + }, + { + "src": "http://fonts.gstatic.com/s/asap/v26/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWuZEammTggvWl0Qn.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Asap" + }, + { + "src": "http://fonts.gstatic.com/s/asap/v26/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWuZtammTggvWl0Qn.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Asap" + } + ] + }, + { + "name": "Asap Condensed", + "fontFamily": "Asap Condensed, sans-serif", + "slug": "asap-condensed", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/asapcondensed/v17/pxieypY1o9NHyXh3WvSbGSggdO9DSWlEgGqgp-pO.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Asap Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/asapcondensed/v17/pxiYypY1o9NHyXh3WvSbGSggdOeJUIFFim6CovpOkXA.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Asap Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/asapcondensed/v17/pxieypY1o9NHyXh3WvSbGSggdO8nSmlEgGqgp-pO.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Asap Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/asapcondensed/v17/pxiYypY1o9NHyXh3WvSbGSggdOeJUOVGim6CovpOkXA.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Asap Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/asapcondensed/v17/pxidypY1o9NHyXh3WvSbGSggdNeLYk1Mq3ap.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Asap Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/asapcondensed/v17/pxifypY1o9NHyXh3WvSbGSggdOeJaElurmapvvM.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Asap Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/asapcondensed/v17/pxieypY1o9NHyXh3WvSbGSggdO9_S2lEgGqgp-pO.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Asap Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/asapcondensed/v17/pxiYypY1o9NHyXh3WvSbGSggdOeJUL1Him6CovpOkXA.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Asap Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/asapcondensed/v17/pxieypY1o9NHyXh3WvSbGSggdO9TTGlEgGqgp-pO.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Asap Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/asapcondensed/v17/pxiYypY1o9NHyXh3WvSbGSggdOeJUJFAim6CovpOkXA.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Asap Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/asapcondensed/v17/pxieypY1o9NHyXh3WvSbGSggdO83TWlEgGqgp-pO.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Asap Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/asapcondensed/v17/pxiYypY1o9NHyXh3WvSbGSggdOeJUPVBim6CovpOkXA.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Asap Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/asapcondensed/v17/pxieypY1o9NHyXh3WvSbGSggdO8rTmlEgGqgp-pO.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Asap Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/asapcondensed/v17/pxiYypY1o9NHyXh3WvSbGSggdOeJUOlCim6CovpOkXA.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Asap Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/asapcondensed/v17/pxieypY1o9NHyXh3WvSbGSggdO8PT2lEgGqgp-pO.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Asap Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/asapcondensed/v17/pxiYypY1o9NHyXh3WvSbGSggdOeJUM1Dim6CovpOkXA.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Asap Condensed" + } + ] + }, + { + "name": "Asar", + "fontFamily": "Asar, serif", + "slug": "asar", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/asar/v22/sZlLdRyI6TBIXkYQDLlTW6E.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Asar" + } + ] + }, + { + "name": "Asset", + "fontFamily": "Asset, system-ui", + "slug": "asset", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/asset/v24/SLXGc1na-mM4cWImRJqExst1.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Asset" + } + ] + }, + { + "name": "Assistant", + "fontFamily": "Assistant, sans-serif", + "slug": "assistant", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/assistant/v18/2sDPZGJYnIjSi6H75xkZZE1I0yCmYzzQtmZnEGGf3qGuvM4.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Assistant" + }, + { + "src": "http://fonts.gstatic.com/s/assistant/v18/2sDPZGJYnIjSi6H75xkZZE1I0yCmYzzQtrhnEGGf3qGuvM4.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Assistant" + }, + { + "src": "http://fonts.gstatic.com/s/assistant/v18/2sDPZGJYnIjSi6H75xkZZE1I0yCmYzzQtuZnEGGf3qGuvM4.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Assistant" + }, + { + "src": "http://fonts.gstatic.com/s/assistant/v18/2sDPZGJYnIjSi6H75xkZZE1I0yCmYzzQttRnEGGf3qGuvM4.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Assistant" + }, + { + "src": "http://fonts.gstatic.com/s/assistant/v18/2sDPZGJYnIjSi6H75xkZZE1I0yCmYzzQtjhgEGGf3qGuvM4.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Assistant" + }, + { + "src": "http://fonts.gstatic.com/s/assistant/v18/2sDPZGJYnIjSi6H75xkZZE1I0yCmYzzQtgFgEGGf3qGuvM4.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Assistant" + }, + { + "src": "http://fonts.gstatic.com/s/assistant/v18/2sDPZGJYnIjSi6H75xkZZE1I0yCmYzzQtmZgEGGf3qGuvM4.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Assistant" + } + ] + }, + { + "name": "Astloch", + "fontFamily": "Astloch, system-ui", + "slug": "astloch", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/astloch/v26/TuGRUVJ8QI5GSeUjq9wRzMtkH1Q.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Astloch" + }, + { + "src": "http://fonts.gstatic.com/s/astloch/v26/TuGUUVJ8QI5GSeUjk2A-6MNPA10xLMQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Astloch" + } + ] + }, + { + "name": "Asul", + "fontFamily": "Asul, sans-serif", + "slug": "asul", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/asul/v19/VuJ-dNjKxYr46fMFXK78JIg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Asul" + }, + { + "src": "http://fonts.gstatic.com/s/asul/v19/VuJxdNjKxYr40U8qeKbXOIFneRo.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Asul" + } + ] + }, + { + "name": "Athiti", + "fontFamily": "Athiti, sans-serif", + "slug": "athiti", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/athiti/v12/pe0sMISdLIZIv1wAxDNyAv2-C99ycg.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Athiti" + }, + { + "src": "http://fonts.gstatic.com/s/athiti/v12/pe0sMISdLIZIv1wAoDByAv2-C99ycg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Athiti" + }, + { + "src": "http://fonts.gstatic.com/s/athiti/v12/pe0vMISdLIZIv1w4DBhWCtaiAg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Athiti" + }, + { + "src": "http://fonts.gstatic.com/s/athiti/v12/pe0sMISdLIZIv1wA-DFyAv2-C99ycg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Athiti" + }, + { + "src": "http://fonts.gstatic.com/s/athiti/v12/pe0sMISdLIZIv1wA1DZyAv2-C99ycg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Athiti" + }, + { + "src": "http://fonts.gstatic.com/s/athiti/v12/pe0sMISdLIZIv1wAsDdyAv2-C99ycg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Athiti" + } + ] + }, + { + "name": "Atkinson Hyperlegible", + "fontFamily": "Atkinson Hyperlegible, sans-serif", + "slug": "atkinson-hyperlegible", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/atkinsonhyperlegible/v11/9Bt23C1KxNDXMspQ1lPyU89-1h6ONRlW45GE5ZgpewSSbQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Atkinson Hyperlegible" + }, + { + "src": "http://fonts.gstatic.com/s/atkinsonhyperlegible/v11/9Bt43C1KxNDXMspQ1lPyU89-1h6ONRlW45G055ItWQGCbUWn.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Atkinson Hyperlegible" + }, + { + "src": "http://fonts.gstatic.com/s/atkinsonhyperlegible/v11/9Bt73C1KxNDXMspQ1lPyU89-1h6ONRlW45G8WbcNcy-OZFy-FA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Atkinson Hyperlegible" + }, + { + "src": "http://fonts.gstatic.com/s/atkinsonhyperlegible/v11/9Bt93C1KxNDXMspQ1lPyU89-1h6ONRlW45G056qRdiWKRlmuFH24.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Atkinson Hyperlegible" + } + ] + }, + { + "name": "Atma", + "fontFamily": "Atma, system-ui", + "slug": "atma", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/atma/v16/uK_z4rqWc-Eoo8JzKjc9PvedRkM.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Atma" + }, + { + "src": "http://fonts.gstatic.com/s/atma/v16/uK_84rqWc-Eom25bDj8WIv4.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Atma" + }, + { + "src": "http://fonts.gstatic.com/s/atma/v16/uK_z4rqWc-Eoo5pyKjc9PvedRkM.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Atma" + }, + { + "src": "http://fonts.gstatic.com/s/atma/v16/uK_z4rqWc-Eoo7Z1Kjc9PvedRkM.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Atma" + }, + { + "src": "http://fonts.gstatic.com/s/atma/v16/uK_z4rqWc-Eoo9J0Kjc9PvedRkM.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Atma" + } + ] + }, + { + "name": "Atomic Age", + "fontFamily": "Atomic Age, system-ui", + "slug": "atomic-age", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/atomicage/v27/f0Xz0eug6sdmRFkYZZGL58Ht9a8GYeA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Atomic Age" + } + ] + }, + { + "name": "Aubrey", + "fontFamily": "Aubrey, system-ui", + "slug": "aubrey", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/aubrey/v28/q5uGsou7NPBw-p7vugNsCxVEgA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Aubrey" + } + ] + }, + { + "name": "Audiowide", + "fontFamily": "Audiowide, system-ui", + "slug": "audiowide", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/audiowide/v16/l7gdbjpo0cum0ckerWCtkQXPExpQBw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Audiowide" + } + ] + }, + { + "name": "Autour One", + "fontFamily": "Autour One, system-ui", + "slug": "autour-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/autourone/v24/UqyVK80cP25l3fJgbdfbk5lWVscxdKE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Autour One" + } + ] + }, + { + "name": "Average", + "fontFamily": "Average, serif", + "slug": "average", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/average/v18/fC1hPYBHe23MxA7rIeJwVWytTyk.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Average" + } + ] + }, + { + "name": "Average Sans", + "fontFamily": "Average Sans, sans-serif", + "slug": "average-sans", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/averagesans/v16/1Ptpg8fLXP2dlAXR-HlJJNJPBdqazVoK4A.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Average Sans" + } + ] + }, + { + "name": "Averia Gruesa Libre", + "fontFamily": "Averia Gruesa Libre, system-ui", + "slug": "averia-gruesa-libre", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/averiagruesalibre/v22/NGSov4nEGEktOaDRKsY-1dhh8eEtIx3ZUmmJw0SLRA8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Averia Gruesa Libre" + } + ] + }, + { + "name": "Averia Libre", + "fontFamily": "Averia Libre, system-ui", + "slug": "averia-libre", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/averialibre/v16/2V0FKIcMGZEnV6xygz7eNjEarovtb07t-pQgTw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Averia Libre" + }, + { + "src": "http://fonts.gstatic.com/s/averialibre/v16/2V0HKIcMGZEnV6xygz7eNjESAJFhbUTp2JEwT4Sk.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Averia Libre" + }, + { + "src": "http://fonts.gstatic.com/s/averialibre/v16/2V0aKIcMGZEnV6xygz7eNjEiAqPJZ2Xx8w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Averia Libre" + }, + { + "src": "http://fonts.gstatic.com/s/averialibre/v16/2V0EKIcMGZEnV6xygz7eNjESAKnNRWDh8405.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Averia Libre" + }, + { + "src": "http://fonts.gstatic.com/s/averialibre/v16/2V0FKIcMGZEnV6xygz7eNjEavoztb07t-pQgTw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Averia Libre" + }, + { + "src": "http://fonts.gstatic.com/s/averialibre/v16/2V0HKIcMGZEnV6xygz7eNjESAJFxakTp2JEwT4Sk.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Averia Libre" + } + ] + }, + { + "name": "Averia Sans Libre", + "fontFamily": "Averia Sans Libre, system-ui", + "slug": "averia-sans-libre", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/averiasanslibre/v17/ga6SaxZG_G5OvCf_rt7FH3B6BHLMEd3lMKcQJZP1LmD9.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Averia Sans Libre" + }, + { + "src": "http://fonts.gstatic.com/s/averiasanslibre/v17/ga6caxZG_G5OvCf_rt7FH3B6BHLMEdVLKisSL5fXK3D9qtg.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Averia Sans Libre" + }, + { + "src": "http://fonts.gstatic.com/s/averiasanslibre/v17/ga6XaxZG_G5OvCf_rt7FH3B6BHLMEeVJGIMYDo_8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Averia Sans Libre" + }, + { + "src": "http://fonts.gstatic.com/s/averiasanslibre/v17/ga6RaxZG_G5OvCf_rt7FH3B6BHLMEdVLEoc6C5_8N3k.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Averia Sans Libre" + }, + { + "src": "http://fonts.gstatic.com/s/averiasanslibre/v17/ga6SaxZG_G5OvCf_rt7FH3B6BHLMEd31N6cQJZP1LmD9.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Averia Sans Libre" + }, + { + "src": "http://fonts.gstatic.com/s/averiasanslibre/v17/ga6caxZG_G5OvCf_rt7FH3B6BHLMEdVLKjsVL5fXK3D9qtg.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Averia Sans Libre" + } + ] + }, + { + "name": "Averia Serif Libre", + "fontFamily": "Averia Serif Libre, system-ui", + "slug": "averia-serif-libre", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/averiaseriflibre/v16/neIVzD2ms4wxr6GvjeD0X88SHPyX2xYGCSmqwacqdrKvbQ.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Averia Serif Libre" + }, + { + "src": "http://fonts.gstatic.com/s/averiaseriflibre/v16/neIbzD2ms4wxr6GvjeD0X88SHPyX2xYOpzMmw60uVLe_bXHq.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Averia Serif Libre" + }, + { + "src": "http://fonts.gstatic.com/s/averiaseriflibre/v16/neIWzD2ms4wxr6GvjeD0X88SHPyX2xY-pQGOyYw2fw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Averia Serif Libre" + }, + { + "src": "http://fonts.gstatic.com/s/averiaseriflibre/v16/neIUzD2ms4wxr6GvjeD0X88SHPyX2xYOpwuK64kmf6u2.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Averia Serif Libre" + }, + { + "src": "http://fonts.gstatic.com/s/averiaseriflibre/v16/neIVzD2ms4wxr6GvjeD0X88SHPyX2xYGGS6qwacqdrKvbQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Averia Serif Libre" + }, + { + "src": "http://fonts.gstatic.com/s/averiaseriflibre/v16/neIbzD2ms4wxr6GvjeD0X88SHPyX2xYOpzM2xK0uVLe_bXHq.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Averia Serif Libre" + } + ] + }, + { + "name": "Azeret Mono", + "fontFamily": "Azeret Mono, monospace", + "slug": "azeret-mono", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfnPRh0raa-5s3AA.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Azeret Mono" + }, + { + "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfHPVh0raa-5s3AA.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Azeret Mono" + }, + { + "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfwvVh0raa-5s3AA.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Azeret Mono" + }, + { + "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfnPVh0raa-5s3AA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Azeret Mono" + }, + { + "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfrvVh0raa-5s3AA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Azeret Mono" + }, + { + "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfQvJh0raa-5s3AA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Azeret Mono" + }, + { + "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfe_Jh0raa-5s3AA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Azeret Mono" + }, + { + "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfHPJh0raa-5s3AA.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Azeret Mono" + }, + { + "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfNfJh0raa-5s3AA.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Azeret Mono" + }, + { + "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLaJkLye2Z4nAN7J.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Azeret Mono" + }, + { + "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLYJkbye2Z4nAN7J.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Azeret Mono" + }, + { + "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLbXkbye2Z4nAN7J.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Azeret Mono" + }, + { + "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLaJkbye2Z4nAN7J.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Azeret Mono" + }, + { + "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLa7kbye2Z4nAN7J.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Azeret Mono" + }, + { + "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLZXlrye2Z4nAN7J.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Azeret Mono" + }, + { + "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLZulrye2Z4nAN7J.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Azeret Mono" + }, + { + "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLYJlrye2Z4nAN7J.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Azeret Mono" + }, + { + "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLYglrye2Z4nAN7J.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Azeret Mono" + } + ] + }, + { + "name": "B612", + "fontFamily": "B612, sans-serif", + "slug": "b612", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/b612/v12/3JnySDDxiSz32jm4GDigUXw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "B612" + }, + { + "src": "http://fonts.gstatic.com/s/b612/v12/3Jn8SDDxiSz36juyHBqlQXwdVw.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "B612" + }, + { + "src": "http://fonts.gstatic.com/s/b612/v12/3Jn9SDDxiSz34oWXPDCLTXUETuE.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "B612" + }, + { + "src": "http://fonts.gstatic.com/s/b612/v12/3Jn_SDDxiSz36juKoDWBSVcBXuFb0Q.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "B612" + } + ] + }, + { + "name": "B612 Mono", + "fontFamily": "B612 Mono, monospace", + "slug": "b612-mono", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/b612mono/v12/kmK_Zq85QVWbN1eW6lJl1wTcquRTtg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "B612 Mono" + }, + { + "src": "http://fonts.gstatic.com/s/b612mono/v12/kmK5Zq85QVWbN1eW6lJV1Q7YiOFDtqtf.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "B612 Mono" + }, + { + "src": "http://fonts.gstatic.com/s/b612mono/v12/kmK6Zq85QVWbN1eW6lJdayv4os9Pv7JGSg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "B612 Mono" + }, + { + "src": "http://fonts.gstatic.com/s/b612mono/v12/kmKkZq85QVWbN1eW6lJV1TZkp8VLnbdWSg4x.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "B612 Mono" + } + ] + }, + { + "name": "BIZ UDGothic", + "fontFamily": "BIZ UDGothic, sans-serif", + "slug": "biz-udgothic", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bizudgothic/v9/daafSTouBF7RUjnbt8p3LuKttQN98z_MbQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "BIZ UDGothic" + }, + { + "src": "http://fonts.gstatic.com/s/bizudgothic/v9/daaASTouBF7RUjnbt8p3LuKVCSxZ-xTQZMhbaA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "BIZ UDGothic" + } + ] + }, + { + "name": "BIZ UDMincho", + "fontFamily": "BIZ UDMincho, serif", + "slug": "biz-udmincho", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bizudmincho/v9/EJRRQgI6eOxFjBdKs38yhtW1dwT7rcpY8Q.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "BIZ UDMincho" + }, + { + "src": "http://fonts.gstatic.com/s/bizudmincho/v9/EJROQgI6eOxFjBdKs38yhtWNyyvfpeFE-IyCrw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "BIZ UDMincho" + } + ] + }, + { + "name": "BIZ UDPGothic", + "fontFamily": "BIZ UDPGothic, sans-serif", + "slug": "biz-udpgothic", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bizudpgothic/v9/hES36X5pHAIBjmS84VL0Bue83nUMQWkMUAk.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "BIZ UDPGothic" + }, + { + "src": "http://fonts.gstatic.com/s/bizudpgothic/v9/hESq6X5pHAIBjmS84VL0Bue85skjZWEnTABCSQo.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "BIZ UDPGothic" + } + ] + }, + { + "name": "BIZ UDPMincho", + "fontFamily": "BIZ UDPMincho, serif", + "slug": "biz-udpmincho", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bizudpmincho/v9/ypvfbXOBrmYppy7oWWTg1_58nhhYtUb0gZk.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "BIZ UDPMincho" + }, + { + "src": "http://fonts.gstatic.com/s/bizudpmincho/v9/ypvCbXOBrmYppy7oWWTg1_58pqR3kU7fnZAy57k.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "BIZ UDPMincho" + } + ] + }, + { + "name": "Babylonica", + "fontFamily": "Babylonica, cursive", + "slug": "babylonica", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/babylonica/v2/5aUw9_i2qxWVCAE2aHjTqDJ0-VVMoEw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Babylonica" + } + ] + }, + { + "name": "Bad Script", + "fontFamily": "Bad Script, cursive", + "slug": "bad-script", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/badscript/v16/6NUT8F6PJgbFWQn47_x7lOwuzd1AZtw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bad Script" + } + ] + }, + { + "name": "Bahiana", + "fontFamily": "Bahiana, system-ui", + "slug": "bahiana", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bahiana/v19/uU9PCBUV4YenPWJU7xPb3vyHmlI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bahiana" + } + ] + }, + { + "name": "Bahianita", + "fontFamily": "Bahianita, system-ui", + "slug": "bahianita", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bahianita/v18/yYLr0hTb3vuqqsBUgxWtxTvV2NJPcA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bahianita" + } + ] + }, + { + "name": "Bai Jamjuree", + "fontFamily": "Bai Jamjuree, sans-serif", + "slug": "bai-jamjuree", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/baijamjuree/v11/LDIqapSCOBt_aeQQ7ftydoa0kePuk5A1-yiSgA.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Bai Jamjuree" + }, + { + "src": "http://fonts.gstatic.com/s/baijamjuree/v11/LDIoapSCOBt_aeQQ7ftydoa8W_oGkpox2S2CgOva.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Bai Jamjuree" + }, + { + "src": "http://fonts.gstatic.com/s/baijamjuree/v11/LDIqapSCOBt_aeQQ7ftydoa09eDuk5A1-yiSgA.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Bai Jamjuree" + }, + { + "src": "http://fonts.gstatic.com/s/baijamjuree/v11/LDIoapSCOBt_aeQQ7ftydoa8W_pikZox2S2CgOva.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Bai Jamjuree" + }, + { + "src": "http://fonts.gstatic.com/s/baijamjuree/v11/LDI1apSCOBt_aeQQ7ftydoaMWcjKm7sp8g.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bai Jamjuree" + }, + { + "src": "http://fonts.gstatic.com/s/baijamjuree/v11/LDIrapSCOBt_aeQQ7ftydoa8W8LOub458jGL.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Bai Jamjuree" + }, + { + "src": "http://fonts.gstatic.com/s/baijamjuree/v11/LDIqapSCOBt_aeQQ7ftydoa0reHuk5A1-yiSgA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Bai Jamjuree" + }, + { + "src": "http://fonts.gstatic.com/s/baijamjuree/v11/LDIoapSCOBt_aeQQ7ftydoa8W_o6kJox2S2CgOva.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Bai Jamjuree" + }, + { + "src": "http://fonts.gstatic.com/s/baijamjuree/v11/LDIqapSCOBt_aeQQ7ftydoa0gebuk5A1-yiSgA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Bai Jamjuree" + }, + { + "src": "http://fonts.gstatic.com/s/baijamjuree/v11/LDIoapSCOBt_aeQQ7ftydoa8W_oWl5ox2S2CgOva.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Bai Jamjuree" + }, + { + "src": "http://fonts.gstatic.com/s/baijamjuree/v11/LDIqapSCOBt_aeQQ7ftydoa05efuk5A1-yiSgA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Bai Jamjuree" + }, + { + "src": "http://fonts.gstatic.com/s/baijamjuree/v11/LDIoapSCOBt_aeQQ7ftydoa8W_pylpox2S2CgOva.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Bai Jamjuree" + } + ] + }, + { + "name": "Bakbak One", + "fontFamily": "Bakbak One, system-ui", + "slug": "bakbak-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bakbakone/v6/zOL54pXAl6RI-p_ardnuycRuv-hHkOs.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bakbak One" + } + ] + }, + { + "name": "Ballet", + "fontFamily": "Ballet, cursive", + "slug": "ballet", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ballet/v25/QGYyz_MYZA-HM4NjuGOVnUEXme1I4Xi3C4G-EiAou6Y.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Ballet" + } + ] + }, + { + "name": "Baloo 2", + "fontFamily": "Baloo 2, system-ui", + "slug": "baloo-2", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/baloo2/v16/wXK0E3kTposypRydzVT08TS3JnAmtdgazapv9Fat7WcN.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Baloo 2" + }, + { + "src": "http://fonts.gstatic.com/s/baloo2/v16/wXK0E3kTposypRydzVT08TS3JnAmtdgozapv9Fat7WcN.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Baloo 2" + }, + { + "src": "http://fonts.gstatic.com/s/baloo2/v16/wXK0E3kTposypRydzVT08TS3JnAmtdjEyqpv9Fat7WcN.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Baloo 2" + }, + { + "src": "http://fonts.gstatic.com/s/baloo2/v16/wXK0E3kTposypRydzVT08TS3JnAmtdj9yqpv9Fat7WcN.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Baloo 2" + }, + { + "src": "http://fonts.gstatic.com/s/baloo2/v16/wXK0E3kTposypRydzVT08TS3JnAmtdiayqpv9Fat7WcN.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Baloo 2" + } + ] + }, + { + "name": "Baloo Bhai 2", + "fontFamily": "Baloo Bhai 2, system-ui", + "slug": "baloo-bhai-2", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/baloobhai2/v22/sZlWdRSL-z1VEWZ4YNA7Y5ItevYWUOHDE8FvNighMXeCo-jsZzo.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Baloo Bhai 2" + }, + { + "src": "http://fonts.gstatic.com/s/baloobhai2/v22/sZlWdRSL-z1VEWZ4YNA7Y5ItevYWUOHDE8FvNhohMXeCo-jsZzo.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Baloo Bhai 2" + }, + { + "src": "http://fonts.gstatic.com/s/baloobhai2/v22/sZlWdRSL-z1VEWZ4YNA7Y5ItevYWUOHDE8FvNvYmMXeCo-jsZzo.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Baloo Bhai 2" + }, + { + "src": "http://fonts.gstatic.com/s/baloobhai2/v22/sZlWdRSL-z1VEWZ4YNA7Y5ItevYWUOHDE8FvNs8mMXeCo-jsZzo.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Baloo Bhai 2" + }, + { + "src": "http://fonts.gstatic.com/s/baloobhai2/v22/sZlWdRSL-z1VEWZ4YNA7Y5ItevYWUOHDE8FvNqgmMXeCo-jsZzo.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Baloo Bhai 2" + } + ] + }, + { + "name": "Baloo Bhaijaan 2", + "fontFamily": "Baloo Bhaijaan 2, system-ui", + "slug": "baloo-bhaijaan-2", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/baloobhaijaan2/v14/zYXwKUwuEqdVGqM8tPDdAA_Y-_bMKo1EhQd2tWxo8TyRSqP4L4ppfcyC.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Baloo Bhaijaan 2" + }, + { + "src": "http://fonts.gstatic.com/s/baloobhaijaan2/v14/zYXwKUwuEqdVGqM8tPDdAA_Y-_bMKo1EhQd2tWxo8TyjSqP4L4ppfcyC.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Baloo Bhaijaan 2" + }, + { + "src": "http://fonts.gstatic.com/s/baloobhaijaan2/v14/zYXwKUwuEqdVGqM8tPDdAA_Y-_bMKo1EhQd2tWxo8TxPTaP4L4ppfcyC.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Baloo Bhaijaan 2" + }, + { + "src": "http://fonts.gstatic.com/s/baloobhaijaan2/v14/zYXwKUwuEqdVGqM8tPDdAA_Y-_bMKo1EhQd2tWxo8Tx2TaP4L4ppfcyC.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Baloo Bhaijaan 2" + }, + { + "src": "http://fonts.gstatic.com/s/baloobhaijaan2/v14/zYXwKUwuEqdVGqM8tPDdAA_Y-_bMKo1EhQd2tWxo8TwRTaP4L4ppfcyC.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Baloo Bhaijaan 2" + } + ] + }, + { + "name": "Baloo Bhaina 2", + "fontFamily": "Baloo Bhaina 2, system-ui", + "slug": "baloo-bhaina-2", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/baloobhaina2/v22/qWc-B6yyq4P9Adr3RtoX1q6ySgbwusXwJjkOS-XEssPvRfRLYWmZSA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Baloo Bhaina 2" + }, + { + "src": "http://fonts.gstatic.com/s/baloobhaina2/v22/qWc-B6yyq4P9Adr3RtoX1q6ySgbwusXwJjkOS-XEgMPvRfRLYWmZSA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Baloo Bhaina 2" + }, + { + "src": "http://fonts.gstatic.com/s/baloobhaina2/v22/qWc-B6yyq4P9Adr3RtoX1q6ySgbwusXwJjkOS-XEbMTvRfRLYWmZSA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Baloo Bhaina 2" + }, + { + "src": "http://fonts.gstatic.com/s/baloobhaina2/v22/qWc-B6yyq4P9Adr3RtoX1q6ySgbwusXwJjkOS-XEVcTvRfRLYWmZSA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Baloo Bhaina 2" + }, + { + "src": "http://fonts.gstatic.com/s/baloobhaina2/v22/qWc-B6yyq4P9Adr3RtoX1q6ySgbwusXwJjkOS-XEMsTvRfRLYWmZSA.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Baloo Bhaina 2" + } + ] + }, + { + "name": "Baloo Chettan 2", + "fontFamily": "Baloo Chettan 2, system-ui", + "slug": "baloo-chettan-2", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/baloochettan2/v16/vm8hdRbmXEva26PK-NtuX4ynWEzF69-L4gqgkIL5CeKTO1oeH9xI2gc.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Baloo Chettan 2" + }, + { + "src": "http://fonts.gstatic.com/s/baloochettan2/v16/vm8hdRbmXEva26PK-NtuX4ynWEzF69-L4gqgkIL5CdCTO1oeH9xI2gc.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Baloo Chettan 2" + }, + { + "src": "http://fonts.gstatic.com/s/baloochettan2/v16/vm8hdRbmXEva26PK-NtuX4ynWEzF69-L4gqgkIL5CTyUO1oeH9xI2gc.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Baloo Chettan 2" + }, + { + "src": "http://fonts.gstatic.com/s/baloochettan2/v16/vm8hdRbmXEva26PK-NtuX4ynWEzF69-L4gqgkIL5CQWUO1oeH9xI2gc.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Baloo Chettan 2" + }, + { + "src": "http://fonts.gstatic.com/s/baloochettan2/v16/vm8hdRbmXEva26PK-NtuX4ynWEzF69-L4gqgkIL5CWKUO1oeH9xI2gc.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Baloo Chettan 2" + } + ] + }, + { + "name": "Baloo Da 2", + "fontFamily": "Baloo Da 2, system-ui", + "slug": "baloo-da-2", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/balooda2/v17/2-c39J9j0IaUMQZwAJyJaOX1UUnf3GLnYjALsTNe55aRa7UE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Baloo Da 2" + }, + { + "src": "http://fonts.gstatic.com/s/balooda2/v17/2-c39J9j0IaUMQZwAJyJaOX1UUnf3GLnYjA5sTNe55aRa7UE.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Baloo Da 2" + }, + { + "src": "http://fonts.gstatic.com/s/balooda2/v17/2-c39J9j0IaUMQZwAJyJaOX1UUnf3GLnYjDVtjNe55aRa7UE.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Baloo Da 2" + }, + { + "src": "http://fonts.gstatic.com/s/balooda2/v17/2-c39J9j0IaUMQZwAJyJaOX1UUnf3GLnYjDstjNe55aRa7UE.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Baloo Da 2" + }, + { + "src": "http://fonts.gstatic.com/s/balooda2/v17/2-c39J9j0IaUMQZwAJyJaOX1UUnf3GLnYjCLtjNe55aRa7UE.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Baloo Da 2" + } + ] + }, + { + "name": "Baloo Paaji 2", + "fontFamily": "Baloo Paaji 2, system-ui", + "slug": "baloo-paaji-2", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/baloopaaji2/v22/i7dfIFFzbz-QHZUdV9_UGWZuelmy79QJ1HOSY9AX74fybRUz1r5t.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Baloo Paaji 2" + }, + { + "src": "http://fonts.gstatic.com/s/baloopaaji2/v22/i7dfIFFzbz-QHZUdV9_UGWZuelmy79QJ1HOSY9Al74fybRUz1r5t.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Baloo Paaji 2" + }, + { + "src": "http://fonts.gstatic.com/s/baloopaaji2/v22/i7dfIFFzbz-QHZUdV9_UGWZuelmy79QJ1HOSY9DJ6IfybRUz1r5t.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Baloo Paaji 2" + }, + { + "src": "http://fonts.gstatic.com/s/baloopaaji2/v22/i7dfIFFzbz-QHZUdV9_UGWZuelmy79QJ1HOSY9Dw6IfybRUz1r5t.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Baloo Paaji 2" + }, + { + "src": "http://fonts.gstatic.com/s/baloopaaji2/v22/i7dfIFFzbz-QHZUdV9_UGWZuelmy79QJ1HOSY9CX6IfybRUz1r5t.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Baloo Paaji 2" + } + ] + }, + { + "name": "Baloo Tamma 2", + "fontFamily": "Baloo Tamma 2, system-ui", + "slug": "baloo-tamma-2", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/balootamma2/v15/vEFE2_hCAgcR46PaajtrYlBbVUMUJgIC5LHTrMscPp-0IF71SGC5.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Baloo Tamma 2" + }, + { + "src": "http://fonts.gstatic.com/s/balootamma2/v15/vEFE2_hCAgcR46PaajtrYlBbVUMUJgIC5LHTrMsuPp-0IF71SGC5.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Baloo Tamma 2" + }, + { + "src": "http://fonts.gstatic.com/s/balootamma2/v15/vEFE2_hCAgcR46PaajtrYlBbVUMUJgIC5LHTrMvCOZ-0IF71SGC5.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Baloo Tamma 2" + }, + { + "src": "http://fonts.gstatic.com/s/balootamma2/v15/vEFE2_hCAgcR46PaajtrYlBbVUMUJgIC5LHTrMv7OZ-0IF71SGC5.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Baloo Tamma 2" + }, + { + "src": "http://fonts.gstatic.com/s/balootamma2/v15/vEFE2_hCAgcR46PaajtrYlBbVUMUJgIC5LHTrMucOZ-0IF71SGC5.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Baloo Tamma 2" + } + ] + }, + { + "name": "Baloo Tammudu 2", + "fontFamily": "Baloo Tammudu 2, system-ui", + "slug": "baloo-tammudu-2", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/balootammudu2/v22/1Pt5g8TIS_SAmkLguUdFP8UaJcKkzlPmMT00GaE_Jf8e4c6PZSlGmAA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Baloo Tammudu 2" + }, + { + "src": "http://fonts.gstatic.com/s/balootammudu2/v22/1Pt5g8TIS_SAmkLguUdFP8UaJcKkzlPmMT00GaE_Jc0e4c6PZSlGmAA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Baloo Tammudu 2" + }, + { + "src": "http://fonts.gstatic.com/s/balootammudu2/v22/1Pt5g8TIS_SAmkLguUdFP8UaJcKkzlPmMT00GaE_JSEZ4c6PZSlGmAA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Baloo Tammudu 2" + }, + { + "src": "http://fonts.gstatic.com/s/balootammudu2/v22/1Pt5g8TIS_SAmkLguUdFP8UaJcKkzlPmMT00GaE_JRgZ4c6PZSlGmAA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Baloo Tammudu 2" + }, + { + "src": "http://fonts.gstatic.com/s/balootammudu2/v22/1Pt5g8TIS_SAmkLguUdFP8UaJcKkzlPmMT00GaE_JX8Z4c6PZSlGmAA.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Baloo Tammudu 2" + } + ] + }, + { + "name": "Baloo Thambi 2", + "fontFamily": "Baloo Thambi 2, system-ui", + "slug": "baloo-thambi-2", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/baloothambi2/v16/cY9RfjeOW0NHpmOQXranrbDyu5JMJmNp-aDvUBbKzcIzaQRG_n4osQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Baloo Thambi 2" + }, + { + "src": "http://fonts.gstatic.com/s/baloothambi2/v16/cY9RfjeOW0NHpmOQXranrbDyu5JMJmNp-aDvUBbK_8IzaQRG_n4osQ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Baloo Thambi 2" + }, + { + "src": "http://fonts.gstatic.com/s/baloothambi2/v16/cY9RfjeOW0NHpmOQXranrbDyu5JMJmNp-aDvUBbKE8UzaQRG_n4osQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Baloo Thambi 2" + }, + { + "src": "http://fonts.gstatic.com/s/baloothambi2/v16/cY9RfjeOW0NHpmOQXranrbDyu5JMJmNp-aDvUBbKKsUzaQRG_n4osQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Baloo Thambi 2" + }, + { + "src": "http://fonts.gstatic.com/s/baloothambi2/v16/cY9RfjeOW0NHpmOQXranrbDyu5JMJmNp-aDvUBbKTcUzaQRG_n4osQ.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Baloo Thambi 2" + } + ] + }, + { + "name": "Balsamiq Sans", + "fontFamily": "Balsamiq Sans, system-ui", + "slug": "balsamiq-sans", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/balsamiqsans/v12/P5sEzZiAbNrN8SB3lQQX7Pnc8dkdIYdNHzs.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Balsamiq Sans" + }, + { + "src": "http://fonts.gstatic.com/s/balsamiqsans/v12/P5sazZiAbNrN8SB3lQQX7PncwdsXJaVIDzvcXA.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Balsamiq Sans" + }, + { + "src": "http://fonts.gstatic.com/s/balsamiqsans/v12/P5sZzZiAbNrN8SB3lQQX7PncyWUyBY9mAzLFRQI.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Balsamiq Sans" + }, + { + "src": "http://fonts.gstatic.com/s/balsamiqsans/v12/P5sfzZiAbNrN8SB3lQQX7PncwdsvmYpsBxDAVQI4aA.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Balsamiq Sans" + } + ] + }, + { + "name": "Balthazar", + "fontFamily": "Balthazar, serif", + "slug": "balthazar", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/balthazar/v17/d6lKkaajS8Gm4CVQjFEvyRTo39l8hw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Balthazar" + } + ] + }, + { + "name": "Bangers", + "fontFamily": "Bangers, system-ui", + "slug": "bangers", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bangers/v21/FeVQS0BTqb0h60ACL5la2bxii28.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bangers" + } + ] + }, + { + "name": "Barlow", + "fontFamily": "Barlow, sans-serif", + "slug": "barlow", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/barlow/v12/7cHrv4kjgoGqM7E3b8s8yn4hnCci.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Barlow" + }, + { + "src": "http://fonts.gstatic.com/s/barlow/v12/7cHtv4kjgoGqM7E_CfNYwHoDmTcibrA.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Barlow" + }, + { + "src": "http://fonts.gstatic.com/s/barlow/v12/7cHqv4kjgoGqM7E3w-oc4FAtlT47dw.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Barlow" + }, + { + "src": "http://fonts.gstatic.com/s/barlow/v12/7cHsv4kjgoGqM7E_CfP04Voptzsrd6m9.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Barlow" + }, + { + "src": "http://fonts.gstatic.com/s/barlow/v12/7cHqv4kjgoGqM7E3p-kc4FAtlT47dw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Barlow" + }, + { + "src": "http://fonts.gstatic.com/s/barlow/v12/7cHsv4kjgoGqM7E_CfOQ4loptzsrd6m9.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Barlow" + }, + { + "src": "http://fonts.gstatic.com/s/barlow/v12/7cHpv4kjgoGqM7EPC8E46HsxnA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Barlow" + }, + { + "src": "http://fonts.gstatic.com/s/barlow/v12/7cHrv4kjgoGqM7E_Ccs8yn4hnCci.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Barlow" + }, + { + "src": "http://fonts.gstatic.com/s/barlow/v12/7cHqv4kjgoGqM7E3_-gc4FAtlT47dw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Barlow" + }, + { + "src": "http://fonts.gstatic.com/s/barlow/v12/7cHsv4kjgoGqM7E_CfPI41optzsrd6m9.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Barlow" + }, + { + "src": "http://fonts.gstatic.com/s/barlow/v12/7cHqv4kjgoGqM7E30-8c4FAtlT47dw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Barlow" + }, + { + "src": "http://fonts.gstatic.com/s/barlow/v12/7cHsv4kjgoGqM7E_CfPk5Foptzsrd6m9.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Barlow" + }, + { + "src": "http://fonts.gstatic.com/s/barlow/v12/7cHqv4kjgoGqM7E3t-4c4FAtlT47dw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Barlow" + }, + { + "src": "http://fonts.gstatic.com/s/barlow/v12/7cHsv4kjgoGqM7E_CfOA5Voptzsrd6m9.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Barlow" + }, + { + "src": "http://fonts.gstatic.com/s/barlow/v12/7cHqv4kjgoGqM7E3q-0c4FAtlT47dw.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Barlow" + }, + { + "src": "http://fonts.gstatic.com/s/barlow/v12/7cHsv4kjgoGqM7E_CfOc5loptzsrd6m9.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Barlow" + }, + { + "src": "http://fonts.gstatic.com/s/barlow/v12/7cHqv4kjgoGqM7E3j-wc4FAtlT47dw.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Barlow" + }, + { + "src": "http://fonts.gstatic.com/s/barlow/v12/7cHsv4kjgoGqM7E_CfO451optzsrd6m9.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Barlow" + } + ] + }, + { + "name": "Barlow Condensed", + "fontFamily": "Barlow Condensed, sans-serif", + "slug": "barlow-condensed", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxxL3I-JCGChYJ8VI-L6OO_au7B43LT31vytKgbaw.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Barlow Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxzL3I-JCGChYJ8VI-L6OO_au7B6xTru1H2lq0La6JN.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Barlow Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxwL3I-JCGChYJ8VI-L6OO_au7B497y_3HcuKECcrs.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Barlow Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxyL3I-JCGChYJ8VI-L6OO_au7B6xTrF3DWvIMHYrtUxg.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Barlow Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxwL3I-JCGChYJ8VI-L6OO_au7B47rx_3HcuKECcrs.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Barlow Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxyL3I-JCGChYJ8VI-L6OO_au7B6xTrc3PWvIMHYrtUxg.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Barlow Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTx3L3I-JCGChYJ8VI-L6OO_au7B2xbZ23n3pKg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Barlow Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxxL3I-JCGChYJ8VI-L6OO_au7B6xTT31vytKgbaw.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Barlow Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxwL3I-JCGChYJ8VI-L6OO_au7B4-Lw_3HcuKECcrs.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Barlow Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxyL3I-JCGChYJ8VI-L6OO_au7B6xTrK3LWvIMHYrtUxg.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Barlow Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxwL3I-JCGChYJ8VI-L6OO_au7B4873_3HcuKECcrs.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Barlow Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxyL3I-JCGChYJ8VI-L6OO_au7B6xTrB3XWvIMHYrtUxg.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Barlow Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxwL3I-JCGChYJ8VI-L6OO_au7B46r2_3HcuKECcrs.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Barlow Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxyL3I-JCGChYJ8VI-L6OO_au7B6xTrY3TWvIMHYrtUxg.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Barlow Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxwL3I-JCGChYJ8VI-L6OO_au7B47b1_3HcuKECcrs.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Barlow Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxyL3I-JCGChYJ8VI-L6OO_au7B6xTrf3fWvIMHYrtUxg.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Barlow Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxwL3I-JCGChYJ8VI-L6OO_au7B45L0_3HcuKECcrs.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Barlow Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxyL3I-JCGChYJ8VI-L6OO_au7B6xTrW3bWvIMHYrtUxg.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Barlow Condensed" + } + ] + }, + { + "name": "Barlow Semi Condensed", + "fontFamily": "Barlow Semi Condensed, sans-serif", + "slug": "barlow-semi-condensed", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlphgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRfG4qvKk8ogoSP.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Barlow Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpjgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfbLLIEsKh5SPZWs.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Barlow Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpigxjLBV1hqnzfr-F8sEYMB0Yybp0mudRft6uPAGEki52WfA.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Barlow Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpkgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfbJnAWsgqZiGfHK5.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Barlow Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpigxjLBV1hqnzfr-F8sEYMB0Yybp0mudRf06iPAGEki52WfA.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Barlow Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpkgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfbIDAmsgqZiGfHK5.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Barlow Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpvgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRnf4CrCEo4gg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Barlow Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlphgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfYqvKk8ogoSP.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Barlow Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpigxjLBV1hqnzfr-F8sEYMB0Yybp0mudRfi6mPAGEki52WfA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Barlow Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpkgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfbJbA2sgqZiGfHK5.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Barlow Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpigxjLBV1hqnzfr-F8sEYMB0Yybp0mudRfp66PAGEki52WfA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Barlow Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpkgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfbJ3BGsgqZiGfHK5.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Barlow Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpigxjLBV1hqnzfr-F8sEYMB0Yybp0mudRfw6-PAGEki52WfA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Barlow Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpkgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfbITBWsgqZiGfHK5.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Barlow Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpigxjLBV1hqnzfr-F8sEYMB0Yybp0mudRf36yPAGEki52WfA.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Barlow Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpkgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfbIPBmsgqZiGfHK5.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Barlow Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpigxjLBV1hqnzfr-F8sEYMB0Yybp0mudRf-62PAGEki52WfA.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Barlow Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpkgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfbIrB2sgqZiGfHK5.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Barlow Semi Condensed" + } + ] + }, + { + "name": "Barriecito", + "fontFamily": "Barriecito, system-ui", + "slug": "barriecito", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/barriecito/v17/WWXXlj-CbBOSLY2QTuY_KdUiYwTO0MU.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Barriecito" + } + ] + }, + { + "name": "Barrio", + "fontFamily": "Barrio, system-ui", + "slug": "barrio", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/barrio/v19/wEO8EBXBk8hBIDiEdQYhWdsX1Q.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Barrio" + } + ] + }, + { + "name": "Basic", + "fontFamily": "Basic, sans-serif", + "slug": "basic", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/basic/v17/xfu_0WLxV2_XKQN34lDVyR7D.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Basic" + } + ] + }, + { + "name": "Baskervville", + "fontFamily": "Baskervville, serif", + "slug": "baskervville", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/baskervville/v14/YA9Ur0yU4l_XOrogbkun3kQgt5OohvbJ9A.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Baskervville" + }, + { + "src": "http://fonts.gstatic.com/s/baskervville/v14/YA9Kr0yU4l_XOrogbkun3kQQtZmspPPZ9Mlt.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Baskervville" + } + ] + }, + { + "name": "Battambang", + "fontFamily": "Battambang, system-ui", + "slug": "battambang", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/battambang/v24/uk-kEGe7raEw-HjkzZabNhGp5w50_o9T7Q.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Battambang" + }, + { + "src": "http://fonts.gstatic.com/s/battambang/v24/uk-lEGe7raEw-HjkzZabNtmLxyRa8oZK9I0.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Battambang" + }, + { + "src": "http://fonts.gstatic.com/s/battambang/v24/uk-mEGe7raEw-HjkzZabDnWj4yxx7o8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Battambang" + }, + { + "src": "http://fonts.gstatic.com/s/battambang/v24/uk-lEGe7raEw-HjkzZabNsmMxyRa8oZK9I0.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Battambang" + }, + { + "src": "http://fonts.gstatic.com/s/battambang/v24/uk-lEGe7raEw-HjkzZabNvGOxyRa8oZK9I0.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Battambang" + } + ] + }, + { + "name": "Baumans", + "fontFamily": "Baumans, system-ui", + "slug": "baumans", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/baumans/v17/-W_-XJj9QyTd3QfpR_oyaksqY5Q.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Baumans" + } + ] + }, + { + "name": "Bayon", + "fontFamily": "Bayon, sans-serif", + "slug": "bayon", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bayon/v29/9XUrlJNmn0LPFl-pOhYEd2NJ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bayon" + } + ] + }, + { + "name": "Be Vietnam Pro", + "fontFamily": "Be Vietnam Pro, sans-serif", + "slug": "be-vietnam-pro", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVNSTAyLFyeg_IDWvOJmVES_HRUBX8YYbAiah8.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Be Vietnam Pro" + }, + { + "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVLSTAyLFyeg_IDWvOJmVES_HwyPRsSZZIneh-waA.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Be Vietnam Pro" + }, + { + "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVMSTAyLFyeg_IDWvOJmVES_HT4JF8yT7wrcwap.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Be Vietnam Pro" + }, + { + "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVKSTAyLFyeg_IDWvOJmVES_HwyPbczRbgJdhapcUU.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Be Vietnam Pro" + }, + { + "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVMSTAyLFyeg_IDWvOJmVES_HScJ18yT7wrcwap.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Be Vietnam Pro" + }, + { + "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVKSTAyLFyeg_IDWvOJmVES_HwyPdMwRbgJdhapcUU.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Be Vietnam Pro" + }, + { + "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVPSTAyLFyeg_IDWvOJmVES_EwwD3s6ZKAi.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Be Vietnam Pro" + }, + { + "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVNSTAyLFyeg_IDWvOJmVES_HwyBX8YYbAiah8.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Be Vietnam Pro" + }, + { + "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVMSTAyLFyeg_IDWvOJmVES_HTEJl8yT7wrcwap.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Be Vietnam Pro" + }, + { + "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVKSTAyLFyeg_IDWvOJmVES_HwyPYsxRbgJdhapcUU.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Be Vietnam Pro" + }, + { + "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVMSTAyLFyeg_IDWvOJmVES_HToIV8yT7wrcwap.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Be Vietnam Pro" + }, + { + "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVKSTAyLFyeg_IDWvOJmVES_HwyPac2RbgJdhapcUU.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Be Vietnam Pro" + }, + { + "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVMSTAyLFyeg_IDWvOJmVES_HSMIF8yT7wrcwap.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Be Vietnam Pro" + }, + { + "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVKSTAyLFyeg_IDWvOJmVES_HwyPcM3RbgJdhapcUU.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Be Vietnam Pro" + }, + { + "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVMSTAyLFyeg_IDWvOJmVES_HSQI18yT7wrcwap.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Be Vietnam Pro" + }, + { + "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVKSTAyLFyeg_IDWvOJmVES_HwyPd80RbgJdhapcUU.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Be Vietnam Pro" + }, + { + "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVMSTAyLFyeg_IDWvOJmVES_HS0Il8yT7wrcwap.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Be Vietnam Pro" + }, + { + "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVKSTAyLFyeg_IDWvOJmVES_HwyPfs1RbgJdhapcUU.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Be Vietnam Pro" + } + ] + }, + { + "name": "Beau Rivage", + "fontFamily": "Beau Rivage, cursive", + "slug": "beau-rivage", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/beaurivage/v2/UcCi3FIgIG2bH4mMNWJUlmg3NZp8K2sL.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Beau Rivage" + } + ] + }, + { + "name": "Bebas Neue", + "fontFamily": "Bebas Neue, sans-serif", + "slug": "bebas-neue", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bebasneue/v10/JTUSjIg69CK48gW7PXooxW5rygbi49c.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bebas Neue" + } + ] + }, + { + "name": "Belgrano", + "fontFamily": "Belgrano, serif", + "slug": "belgrano", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/belgrano/v18/55xvey5tM9rwKWrJZcMFirl08KDJ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Belgrano" + } + ] + }, + { + "name": "Bellefair", + "fontFamily": "Bellefair, serif", + "slug": "bellefair", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bellefair/v14/kJExBuYY6AAuhiXUxG19__A2pOdvDA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bellefair" + } + ] + }, + { + "name": "Belleza", + "fontFamily": "Belleza, sans-serif", + "slug": "belleza", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/belleza/v17/0nkoC9_pNeMfhX4BtcbyawzruP8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Belleza" + } + ] + }, + { + "name": "Bellota", + "fontFamily": "Bellota, system-ui", + "slug": "bellota", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bellota/v16/MwQzbhXl3_qEpiwAID55kGMViblPtXs.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Bellota" + }, + { + "src": "http://fonts.gstatic.com/s/bellota/v16/MwQxbhXl3_qEpiwAKJBjHGEfjZtKpXulTQ.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Bellota" + }, + { + "src": "http://fonts.gstatic.com/s/bellota/v16/MwQ2bhXl3_qEpiwAGJJRtGs-lbA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bellota" + }, + { + "src": "http://fonts.gstatic.com/s/bellota/v16/MwQ0bhXl3_qEpiwAKJBbsEk7hbBWrA.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Bellota" + }, + { + "src": "http://fonts.gstatic.com/s/bellota/v16/MwQzbhXl3_qEpiwAIC5-kGMViblPtXs.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Bellota" + }, + { + "src": "http://fonts.gstatic.com/s/bellota/v16/MwQxbhXl3_qEpiwAKJBjDGYfjZtKpXulTQ.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Bellota" + } + ] + }, + { + "name": "Bellota Text", + "fontFamily": "Bellota Text, system-ui", + "slug": "bellota-text", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bellotatext/v16/0FlMVP2VnlWS4f3-UE9hHXM5VfsqfQXwQy6yxg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Bellota Text" + }, + { + "src": "http://fonts.gstatic.com/s/bellotatext/v16/0FlOVP2VnlWS4f3-UE9hHXMx--Gmfw_0YSuixmYK.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Bellota Text" + }, + { + "src": "http://fonts.gstatic.com/s/bellotatext/v16/0FlTVP2VnlWS4f3-UE9hHXMB-dMOdS7sSg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bellota Text" + }, + { + "src": "http://fonts.gstatic.com/s/bellotatext/v16/0FlNVP2VnlWS4f3-UE9hHXMx-9kKVyv8Sjer.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Bellota Text" + }, + { + "src": "http://fonts.gstatic.com/s/bellotatext/v16/0FlMVP2VnlWS4f3-UE9hHXM5RfwqfQXwQy6yxg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Bellota Text" + }, + { + "src": "http://fonts.gstatic.com/s/bellotatext/v16/0FlOVP2VnlWS4f3-UE9hHXMx--G2eA_0YSuixmYK.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Bellota Text" + } + ] + }, + { + "name": "BenchNine", + "fontFamily": "BenchNine, sans-serif", + "slug": "benchnine", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/benchnine/v16/ahcev8612zF4jxrwMosT--tRhWa8q0v8ag.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "BenchNine" + }, + { + "src": "http://fonts.gstatic.com/s/benchnine/v16/ahcbv8612zF4jxrwMosrV8N1jU2gog.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "BenchNine" + }, + { + "src": "http://fonts.gstatic.com/s/benchnine/v16/ahcev8612zF4jxrwMosT6-xRhWa8q0v8ag.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "BenchNine" + } + ] + }, + { + "name": "Benne", + "fontFamily": "Benne, serif", + "slug": "benne", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/benne/v22/L0xzDFAhn18E6Vjxlt6qTDBN.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Benne" + } + ] + }, + { + "name": "Bentham", + "fontFamily": "Bentham, serif", + "slug": "bentham", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bentham/v18/VdGeAZQPEpYfmHglKWw7CJaK_y4.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bentham" + } + ] + }, + { + "name": "Berkshire Swash", + "fontFamily": "Berkshire Swash, cursive", + "slug": "berkshire-swash", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/berkshireswash/v16/ptRRTi-cavZOGqCvnNJDl5m5XmNPrcQybX4pQA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Berkshire Swash" + } + ] + }, + { + "name": "Besley", + "fontFamily": "Besley, serif", + "slug": "besley", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/besley/v17/PlIhFlO1MaNwaNGWUC92IOH_mtG4fbbBSdRoFPOl8-E.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Besley" + }, + { + "src": "http://fonts.gstatic.com/s/besley/v17/PlIhFlO1MaNwaNGWUC92IOH_mtG4fYTBSdRoFPOl8-E.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Besley" + }, + { + "src": "http://fonts.gstatic.com/s/besley/v17/PlIhFlO1MaNwaNGWUC92IOH_mtG4fWjGSdRoFPOl8-E.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Besley" + }, + { + "src": "http://fonts.gstatic.com/s/besley/v17/PlIhFlO1MaNwaNGWUC92IOH_mtG4fVHGSdRoFPOl8-E.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Besley" + }, + { + "src": "http://fonts.gstatic.com/s/besley/v17/PlIhFlO1MaNwaNGWUC92IOH_mtG4fTbGSdRoFPOl8-E.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Besley" + }, + { + "src": "http://fonts.gstatic.com/s/besley/v17/PlIhFlO1MaNwaNGWUC92IOH_mtG4fR_GSdRoFPOl8-E.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Besley" + }, + { + "src": "http://fonts.gstatic.com/s/besley/v17/PlIjFlO1MaNwaNG8WR2J-IiUAH-_aH6CoZdiENGg4-E04A.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Besley" + }, + { + "src": "http://fonts.gstatic.com/s/besley/v17/PlIjFlO1MaNwaNG8WR2J-IiUAH-_aH6Ck5diENGg4-E04A.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Besley" + }, + { + "src": "http://fonts.gstatic.com/s/besley/v17/PlIjFlO1MaNwaNG8WR2J-IiUAH-_aH6Cf5BiENGg4-E04A.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Besley" + }, + { + "src": "http://fonts.gstatic.com/s/besley/v17/PlIjFlO1MaNwaNG8WR2J-IiUAH-_aH6CRpBiENGg4-E04A.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Besley" + }, + { + "src": "http://fonts.gstatic.com/s/besley/v17/PlIjFlO1MaNwaNG8WR2J-IiUAH-_aH6CIZBiENGg4-E04A.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Besley" + }, + { + "src": "http://fonts.gstatic.com/s/besley/v17/PlIjFlO1MaNwaNG8WR2J-IiUAH-_aH6CCJBiENGg4-E04A.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Besley" + } + ] + }, + { + "name": "Beth Ellen", + "fontFamily": "Beth Ellen, cursive", + "slug": "beth-ellen", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bethellen/v17/WwkbxPW2BE-3rb_JNT-qEIAiVNo5xNY.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Beth Ellen" + } + ] + }, + { + "name": "Bevan", + "fontFamily": "Bevan, system-ui", + "slug": "bevan", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bevan/v21/4iCj6KZ0a9NXjF8aUir7tlSJ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bevan" + }, + { + "src": "http://fonts.gstatic.com/s/bevan/v21/4iCt6KZ0a9NXjG8YWC7Zs0SJD4U.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Bevan" + } + ] + }, + { + "name": "BhuTuka Expanded One", + "fontFamily": "BhuTuka Expanded One, system-ui", + "slug": "bhutuka-expanded-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bhutukaexpandedone/v3/SLXXc0jZ4WUJcClHTtv0t7IaDRsBsWRiJCyX8pg_RVH1.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "BhuTuka Expanded One" + } + ] + }, + { + "name": "Big Shoulders Display", + "fontFamily": "Big Shoulders Display, system-ui", + "slug": "big-shoulders-display", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bigshouldersdisplay/v19/fC1MPZJEZG-e9gHhdI4-NBbfd2ys3SjJCx12wPgf9g-_3F0YdY86JF46SRP4yZQ.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Display" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersdisplay/v19/fC1MPZJEZG-e9gHhdI4-NBbfd2ys3SjJCx12wPgf9g-_3F0YdQ87JF46SRP4yZQ.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Display" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersdisplay/v19/fC1MPZJEZG-e9gHhdI4-NBbfd2ys3SjJCx12wPgf9g-_3F0YddE7JF46SRP4yZQ.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Display" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersdisplay/v19/fC1MPZJEZG-e9gHhdI4-NBbfd2ys3SjJCx12wPgf9g-_3F0YdY87JF46SRP4yZQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Display" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersdisplay/v19/fC1MPZJEZG-e9gHhdI4-NBbfd2ys3SjJCx12wPgf9g-_3F0Ydb07JF46SRP4yZQ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Display" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersdisplay/v19/fC1MPZJEZG-e9gHhdI4-NBbfd2ys3SjJCx12wPgf9g-_3F0YdVE8JF46SRP4yZQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Display" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersdisplay/v19/fC1MPZJEZG-e9gHhdI4-NBbfd2ys3SjJCx12wPgf9g-_3F0YdWg8JF46SRP4yZQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Display" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersdisplay/v19/fC1MPZJEZG-e9gHhdI4-NBbfd2ys3SjJCx12wPgf9g-_3F0YdQ88JF46SRP4yZQ.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Display" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersdisplay/v19/fC1MPZJEZG-e9gHhdI4-NBbfd2ys3SjJCx12wPgf9g-_3F0YdSY8JF46SRP4yZQ.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Display" + } + ] + }, + { + "name": "Big Shoulders Inline Display", + "fontFamily": "Big Shoulders Inline Display, system-ui", + "slug": "big-shoulders-inline-display", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bigshouldersinlinedisplay/v25/_LOumyfF4eSU_SCrJc9OI24U7siGvBGcZqmqV9-ZZ85CGNOFeNLxoYMPJ0nBEnR5yPc2Huux.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Inline Display" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersinlinedisplay/v25/_LOumyfF4eSU_SCrJc9OI24U7siGvBGcZqmqV9-ZZ85CGNOFeNLxoYMPJ0lBE3R5yPc2Huux.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Inline Display" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersinlinedisplay/v25/_LOumyfF4eSU_SCrJc9OI24U7siGvBGcZqmqV9-ZZ85CGNOFeNLxoYMPJ0mfE3R5yPc2Huux.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Inline Display" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersinlinedisplay/v25/_LOumyfF4eSU_SCrJc9OI24U7siGvBGcZqmqV9-ZZ85CGNOFeNLxoYMPJ0nBE3R5yPc2Huux.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Inline Display" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersinlinedisplay/v25/_LOumyfF4eSU_SCrJc9OI24U7siGvBGcZqmqV9-ZZ85CGNOFeNLxoYMPJ0nzE3R5yPc2Huux.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Inline Display" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersinlinedisplay/v25/_LOumyfF4eSU_SCrJc9OI24U7siGvBGcZqmqV9-ZZ85CGNOFeNLxoYMPJ0kfFHR5yPc2Huux.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Inline Display" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersinlinedisplay/v25/_LOumyfF4eSU_SCrJc9OI24U7siGvBGcZqmqV9-ZZ85CGNOFeNLxoYMPJ0kmFHR5yPc2Huux.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Inline Display" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersinlinedisplay/v25/_LOumyfF4eSU_SCrJc9OI24U7siGvBGcZqmqV9-ZZ85CGNOFeNLxoYMPJ0lBFHR5yPc2Huux.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Inline Display" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersinlinedisplay/v25/_LOumyfF4eSU_SCrJc9OI24U7siGvBGcZqmqV9-ZZ85CGNOFeNLxoYMPJ0loFHR5yPc2Huux.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Inline Display" + } + ] + }, + { + "name": "Big Shoulders Inline Text", + "fontFamily": "Big Shoulders Inline Text, system-ui", + "slug": "big-shoulders-inline-text", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bigshouldersinlinetext/v24/vm8XdQDmVECV5-vm5dJ-Tp-6WDeRjL4RV7dP8u-NMyHY74qpoNNcwga0yqGN7Y6Jsc8c.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Inline Text" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersinlinetext/v24/vm8XdQDmVECV5-vm5dJ-Tp-6WDeRjL4RV7dP8u-NMyHY74qpoNNcwgY0y6GN7Y6Jsc8c.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Inline Text" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersinlinetext/v24/vm8XdQDmVECV5-vm5dJ-Tp-6WDeRjL4RV7dP8u-NMyHY74qpoNNcwgbqy6GN7Y6Jsc8c.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Inline Text" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersinlinetext/v24/vm8XdQDmVECV5-vm5dJ-Tp-6WDeRjL4RV7dP8u-NMyHY74qpoNNcwga0y6GN7Y6Jsc8c.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Inline Text" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersinlinetext/v24/vm8XdQDmVECV5-vm5dJ-Tp-6WDeRjL4RV7dP8u-NMyHY74qpoNNcwgaGy6GN7Y6Jsc8c.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Inline Text" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersinlinetext/v24/vm8XdQDmVECV5-vm5dJ-Tp-6WDeRjL4RV7dP8u-NMyHY74qpoNNcwgZqzKGN7Y6Jsc8c.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Inline Text" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersinlinetext/v24/vm8XdQDmVECV5-vm5dJ-Tp-6WDeRjL4RV7dP8u-NMyHY74qpoNNcwgZTzKGN7Y6Jsc8c.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Inline Text" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersinlinetext/v24/vm8XdQDmVECV5-vm5dJ-Tp-6WDeRjL4RV7dP8u-NMyHY74qpoNNcwgY0zKGN7Y6Jsc8c.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Inline Text" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersinlinetext/v24/vm8XdQDmVECV5-vm5dJ-Tp-6WDeRjL4RV7dP8u-NMyHY74qpoNNcwgYdzKGN7Y6Jsc8c.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Inline Text" + } + ] + }, + { + "name": "Big Shoulders Stencil Display", + "fontFamily": "Big Shoulders Stencil Display, system-ui", + "slug": "big-shoulders-stencil-display", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bigshouldersstencildisplay/v22/6aeZ4LS6U6pR_bp5b_t2ugOhHWFcxSGP9ttD96KCb8xPytKb-oPRU-vkuLm_O0nPKHznJucP9w.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Stencil Display" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersstencildisplay/v22/6aeZ4LS6U6pR_bp5b_t2ugOhHWFcxSGP9ttD96KCb8xPytKb-oPRU-vkuLm_u0jPKHznJucP9w.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Stencil Display" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersstencildisplay/v22/6aeZ4LS6U6pR_bp5b_t2ugOhHWFcxSGP9ttD96KCb8xPytKb-oPRU-vkuLm_ZUjPKHznJucP9w.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Stencil Display" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersstencildisplay/v22/6aeZ4LS6U6pR_bp5b_t2ugOhHWFcxSGP9ttD96KCb8xPytKb-oPRU-vkuLm_O0jPKHznJucP9w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Stencil Display" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersstencildisplay/v22/6aeZ4LS6U6pR_bp5b_t2ugOhHWFcxSGP9ttD96KCb8xPytKb-oPRU-vkuLm_CUjPKHznJucP9w.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Stencil Display" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersstencildisplay/v22/6aeZ4LS6U6pR_bp5b_t2ugOhHWFcxSGP9ttD96KCb8xPytKb-oPRU-vkuLm_5U_PKHznJucP9w.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Stencil Display" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersstencildisplay/v22/6aeZ4LS6U6pR_bp5b_t2ugOhHWFcxSGP9ttD96KCb8xPytKb-oPRU-vkuLm_3E_PKHznJucP9w.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Stencil Display" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersstencildisplay/v22/6aeZ4LS6U6pR_bp5b_t2ugOhHWFcxSGP9ttD96KCb8xPytKb-oPRU-vkuLm_u0_PKHznJucP9w.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Stencil Display" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersstencildisplay/v22/6aeZ4LS6U6pR_bp5b_t2ugOhHWFcxSGP9ttD96KCb8xPytKb-oPRU-vkuLm_kk_PKHznJucP9w.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Stencil Display" + } + ] + }, + { + "name": "Big Shoulders Stencil Text", + "fontFamily": "Big Shoulders Stencil Text, system-ui", + "slug": "big-shoulders-stencil-text", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bigshouldersstenciltext/v21/5aUV9-i2oxDMNwY3dHfW7UAt3Q453SM15wNj53bCcab2SJYLLUtk1OGR04XIGS_Py_AWbQ.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Stencil Text" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersstenciltext/v21/5aUV9-i2oxDMNwY3dHfW7UAt3Q453SM15wNj53bCcab2SJYLLUtk1OGRU4TIGS_Py_AWbQ.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Stencil Text" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersstenciltext/v21/5aUV9-i2oxDMNwY3dHfW7UAt3Q453SM15wNj53bCcab2SJYLLUtk1OGRjYTIGS_Py_AWbQ.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Stencil Text" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersstenciltext/v21/5aUV9-i2oxDMNwY3dHfW7UAt3Q453SM15wNj53bCcab2SJYLLUtk1OGR04TIGS_Py_AWbQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Stencil Text" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersstenciltext/v21/5aUV9-i2oxDMNwY3dHfW7UAt3Q453SM15wNj53bCcab2SJYLLUtk1OGR4YTIGS_Py_AWbQ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Stencil Text" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersstenciltext/v21/5aUV9-i2oxDMNwY3dHfW7UAt3Q453SM15wNj53bCcab2SJYLLUtk1OGRDYPIGS_Py_AWbQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Stencil Text" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersstenciltext/v21/5aUV9-i2oxDMNwY3dHfW7UAt3Q453SM15wNj53bCcab2SJYLLUtk1OGRNIPIGS_Py_AWbQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Stencil Text" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersstenciltext/v21/5aUV9-i2oxDMNwY3dHfW7UAt3Q453SM15wNj53bCcab2SJYLLUtk1OGRU4PIGS_Py_AWbQ.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Stencil Text" + }, + { + "src": "http://fonts.gstatic.com/s/bigshouldersstenciltext/v21/5aUV9-i2oxDMNwY3dHfW7UAt3Q453SM15wNj53bCcab2SJYLLUtk1OGReoPIGS_Py_AWbQ.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Stencil Text" + } + ] + }, + { + "name": "Big Shoulders Text", + "fontFamily": "Big Shoulders Text, system-ui", + "slug": "big-shoulders-text", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bigshoulderstext/v22/55xEezRtP9G3CGPIf49hxc8P0eytUxB2l66LmF6xc3kA3Y-r3TIPNl6P2pc.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Text" + }, + { + "src": "http://fonts.gstatic.com/s/bigshoulderstext/v22/55xEezRtP9G3CGPIf49hxc8P0eytUxB2l66LmF6xc3kA3Q-q3TIPNl6P2pc.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Text" + }, + { + "src": "http://fonts.gstatic.com/s/bigshoulderstext/v22/55xEezRtP9G3CGPIf49hxc8P0eytUxB2l66LmF6xc3kA3dGq3TIPNl6P2pc.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Text" + }, + { + "src": "http://fonts.gstatic.com/s/bigshoulderstext/v22/55xEezRtP9G3CGPIf49hxc8P0eytUxB2l66LmF6xc3kA3Y-q3TIPNl6P2pc.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Text" + }, + { + "src": "http://fonts.gstatic.com/s/bigshoulderstext/v22/55xEezRtP9G3CGPIf49hxc8P0eytUxB2l66LmF6xc3kA3b2q3TIPNl6P2pc.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Text" + }, + { + "src": "http://fonts.gstatic.com/s/bigshoulderstext/v22/55xEezRtP9G3CGPIf49hxc8P0eytUxB2l66LmF6xc3kA3VGt3TIPNl6P2pc.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Text" + }, + { + "src": "http://fonts.gstatic.com/s/bigshoulderstext/v22/55xEezRtP9G3CGPIf49hxc8P0eytUxB2l66LmF6xc3kA3Wit3TIPNl6P2pc.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Text" + }, + { + "src": "http://fonts.gstatic.com/s/bigshoulderstext/v22/55xEezRtP9G3CGPIf49hxc8P0eytUxB2l66LmF6xc3kA3Q-t3TIPNl6P2pc.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Text" + }, + { + "src": "http://fonts.gstatic.com/s/bigshoulderstext/v22/55xEezRtP9G3CGPIf49hxc8P0eytUxB2l66LmF6xc3kA3Sat3TIPNl6P2pc.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Big Shoulders Text" + } + ] + }, + { + "name": "Bigelow Rules", + "fontFamily": "Bigelow Rules, system-ui", + "slug": "bigelow-rules", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bigelowrules/v24/RrQWboly8iR_I3KWSzeRuN0zT4cCH8WAJVk.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bigelow Rules" + } + ] + }, + { + "name": "Bigshot One", + "fontFamily": "Bigshot One, system-ui", + "slug": "bigshot-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bigshotone/v25/u-470qukhRkkO6BD_7cM_gxuUQJBXv_-.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bigshot One" + } + ] + }, + { + "name": "Bilbo", + "fontFamily": "Bilbo, cursive", + "slug": "bilbo", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bilbo/v20/o-0EIpgpwWwZ210hpIRz4wxE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bilbo" + } + ] + }, + { + "name": "Bilbo Swash Caps", + "fontFamily": "Bilbo Swash Caps, cursive", + "slug": "bilbo-swash-caps", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bilboswashcaps/v22/zrf-0GXbz-H3Wb4XBsGrTgq2PVmdqAPopiRfKp8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bilbo Swash Caps" + } + ] + }, + { + "name": "BioRhyme", + "fontFamily": "BioRhyme, serif", + "slug": "biorhyme", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/biorhyme/v13/1cX3aULHBpDMsHYW_ESOjnGAq8Sk1PoH.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "BioRhyme" + }, + { + "src": "http://fonts.gstatic.com/s/biorhyme/v13/1cX3aULHBpDMsHYW_ETqjXGAq8Sk1PoH.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "BioRhyme" + }, + { + "src": "http://fonts.gstatic.com/s/biorhyme/v13/1cXwaULHBpDMsHYW_HxGpVWIgNit.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "BioRhyme" + }, + { + "src": "http://fonts.gstatic.com/s/biorhyme/v13/1cX3aULHBpDMsHYW_ET6inGAq8Sk1PoH.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "BioRhyme" + }, + { + "src": "http://fonts.gstatic.com/s/biorhyme/v13/1cX3aULHBpDMsHYW_ETmiXGAq8Sk1PoH.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "BioRhyme" + } + ] + }, + { + "name": "BioRhyme Expanded", + "fontFamily": "BioRhyme Expanded, serif", + "slug": "biorhyme-expanded", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/biorhymeexpanded/v19/i7dVIE1zZzytGswgU577CDY9LjbffxxcblSHSdTXrb_z.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "BioRhyme Expanded" + }, + { + "src": "http://fonts.gstatic.com/s/biorhymeexpanded/v19/i7dVIE1zZzytGswgU577CDY9Ljbffxw4bVSHSdTXrb_z.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "BioRhyme Expanded" + }, + { + "src": "http://fonts.gstatic.com/s/biorhymeexpanded/v19/i7dQIE1zZzytGswgU577CDY9LjbffySURXCPYsje.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "BioRhyme Expanded" + }, + { + "src": "http://fonts.gstatic.com/s/biorhymeexpanded/v19/i7dVIE1zZzytGswgU577CDY9LjbffxwoalSHSdTXrb_z.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "BioRhyme Expanded" + }, + { + "src": "http://fonts.gstatic.com/s/biorhymeexpanded/v19/i7dVIE1zZzytGswgU577CDY9Ljbffxw0aVSHSdTXrb_z.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "BioRhyme Expanded" + } + ] + }, + { + "name": "Birthstone", + "fontFamily": "Birthstone, cursive", + "slug": "birthstone", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/birthstone/v11/8AtsGs2xO4yLRhy87sv_HLn5jRfZHzM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Birthstone" + } + ] + }, + { + "name": "Birthstone Bounce", + "fontFamily": "Birthstone Bounce, cursive", + "slug": "birthstone-bounce", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/birthstonebounce/v9/ga6XaxZF43lIvTWrktHOTBJZGH7dEeVJGIMYDo_8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Birthstone Bounce" + }, + { + "src": "http://fonts.gstatic.com/s/birthstonebounce/v9/ga6SaxZF43lIvTWrktHOTBJZGH7dEd29MacQJZP1LmD9.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Birthstone Bounce" + } + ] + }, + { + "name": "Biryani", + "fontFamily": "Biryani, sans-serif", + "slug": "biryani", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/biryani/v13/hv-TlzNxIFoO84YddYQyGTBSU-J-RxQ.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Biryani" + }, + { + "src": "http://fonts.gstatic.com/s/biryani/v13/hv-TlzNxIFoO84YddeAxGTBSU-J-RxQ.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Biryani" + }, + { + "src": "http://fonts.gstatic.com/s/biryani/v13/hv-WlzNxIFoO84YdTUwZPTh5T-s.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Biryani" + }, + { + "src": "http://fonts.gstatic.com/s/biryani/v13/hv-TlzNxIFoO84YddZQ3GTBSU-J-RxQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Biryani" + }, + { + "src": "http://fonts.gstatic.com/s/biryani/v13/hv-TlzNxIFoO84YddfA2GTBSU-J-RxQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Biryani" + }, + { + "src": "http://fonts.gstatic.com/s/biryani/v13/hv-TlzNxIFoO84Yddew1GTBSU-J-RxQ.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Biryani" + }, + { + "src": "http://fonts.gstatic.com/s/biryani/v13/hv-TlzNxIFoO84Yddcg0GTBSU-J-RxQ.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Biryani" + } + ] + }, + { + "name": "Bitter", + "fontFamily": "Bitter, serif", + "slug": "bitter", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bitter/v32/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8fbeCL_EXFh2reU.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Bitter" + }, + { + "src": "http://fonts.gstatic.com/s/bitter/v32/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8XbfCL_EXFh2reU.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Bitter" + }, + { + "src": "http://fonts.gstatic.com/s/bitter/v32/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8ajfCL_EXFh2reU.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Bitter" + }, + { + "src": "http://fonts.gstatic.com/s/bitter/v32/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8fbfCL_EXFh2reU.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bitter" + }, + { + "src": "http://fonts.gstatic.com/s/bitter/v32/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8cTfCL_EXFh2reU.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Bitter" + }, + { + "src": "http://fonts.gstatic.com/s/bitter/v32/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8SjYCL_EXFh2reU.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Bitter" + }, + { + "src": "http://fonts.gstatic.com/s/bitter/v32/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8RHYCL_EXFh2reU.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Bitter" + }, + { + "src": "http://fonts.gstatic.com/s/bitter/v32/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8XbYCL_EXFh2reU.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Bitter" + }, + { + "src": "http://fonts.gstatic.com/s/bitter/v32/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8V_YCL_EXFh2reU.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Bitter" + }, + { + "src": "http://fonts.gstatic.com/s/bitter/v32/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6c4P3OWHpzveWxBw.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Bitter" + }, + { + "src": "http://fonts.gstatic.com/s/bitter/v32/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6cYPzOWHpzveWxBw.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Bitter" + }, + { + "src": "http://fonts.gstatic.com/s/bitter/v32/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6cvvzOWHpzveWxBw.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Bitter" + }, + { + "src": "http://fonts.gstatic.com/s/bitter/v32/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6c4PzOWHpzveWxBw.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Bitter" + }, + { + "src": "http://fonts.gstatic.com/s/bitter/v32/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6c0vzOWHpzveWxBw.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Bitter" + }, + { + "src": "http://fonts.gstatic.com/s/bitter/v32/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6cPvvOWHpzveWxBw.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Bitter" + }, + { + "src": "http://fonts.gstatic.com/s/bitter/v32/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6cB_vOWHpzveWxBw.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Bitter" + }, + { + "src": "http://fonts.gstatic.com/s/bitter/v32/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6cYPvOWHpzveWxBw.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Bitter" + }, + { + "src": "http://fonts.gstatic.com/s/bitter/v32/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6cSfvOWHpzveWxBw.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Bitter" + } + ] + }, + { + "name": "Black And White Picture", + "fontFamily": "Black And White Picture, sans-serif", + "slug": "black-and-white-picture", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/blackandwhitepicture/v22/TwMe-JAERlQd3ooUHBUXGmrmioKjjnRSFO-NqI5HbcMi-yWY.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Black And White Picture" + } + ] + }, + { + "name": "Black Han Sans", + "fontFamily": "Black Han Sans, sans-serif", + "slug": "black-han-sans", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/blackhansans/v15/ea8Aad44WunzF9a-dL6toA8r8nqVIXSkH-Hc.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Black Han Sans" + } + ] + }, + { + "name": "Black Ops One", + "fontFamily": "Black Ops One, system-ui", + "slug": "black-ops-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/blackopsone/v20/qWcsB6-ypo7xBdr6Xshe96H3WDzRtjkho4M.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Black Ops One" + } + ] + }, + { + "name": "Blaka", + "fontFamily": "Blaka, system-ui", + "slug": "blaka", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/blaka/v5/8vIG7w8722p_6kdr20D2FV5e.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Blaka" + } + ] + }, + { + "name": "Blaka Hollow", + "fontFamily": "Blaka Hollow, system-ui", + "slug": "blaka-hollow", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/blakahollow/v5/MCoUzAL91sjRE2FsKsxUtezYB9oFyW_-oA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Blaka Hollow" + } + ] + }, + { + "name": "Blaka Ink", + "fontFamily": "Blaka Ink, system-ui", + "slug": "blaka-ink", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/blakaink/v7/AlZy_zVVtpj22Znag2chdXf4XB0Tow.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Blaka Ink" + } + ] + }, + { + "name": "Blinker", + "fontFamily": "Blinker, sans-serif", + "slug": "blinker", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/blinker/v13/cIf_MaFatEE-VTaP_E2hZEsCkIt9QQ.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Blinker" + }, + { + "src": "http://fonts.gstatic.com/s/blinker/v13/cIf4MaFatEE-VTaP_OGARGEsnIJkWL4.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Blinker" + }, + { + "src": "http://fonts.gstatic.com/s/blinker/v13/cIf4MaFatEE-VTaP_IWDRGEsnIJkWL4.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Blinker" + }, + { + "src": "http://fonts.gstatic.com/s/blinker/v13/cIf9MaFatEE-VTaPxCmrYGkHgIs.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Blinker" + }, + { + "src": "http://fonts.gstatic.com/s/blinker/v13/cIf4MaFatEE-VTaP_PGFRGEsnIJkWL4.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Blinker" + }, + { + "src": "http://fonts.gstatic.com/s/blinker/v13/cIf4MaFatEE-VTaP_JWERGEsnIJkWL4.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Blinker" + }, + { + "src": "http://fonts.gstatic.com/s/blinker/v13/cIf4MaFatEE-VTaP_ImHRGEsnIJkWL4.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Blinker" + }, + { + "src": "http://fonts.gstatic.com/s/blinker/v13/cIf4MaFatEE-VTaP_K2GRGEsnIJkWL4.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Blinker" + } + ] + }, + { + "name": "Bodoni Moda", + "fontFamily": "Bodoni Moda, serif", + "slug": "bodoni-moda", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bodonimoda/v23/aFT67PxzY382XsXX63LUYL6GYFcan6NJrKp-VPjfJMShrpsGFUt8oU7awIBytVjMYwE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bodoni Moda" + }, + { + "src": "http://fonts.gstatic.com/s/bodonimoda/v23/aFT67PxzY382XsXX63LUYL6GYFcan6NJrKp-VPjfJMShrpsGFUt8oXzawIBytVjMYwE.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Bodoni Moda" + }, + { + "src": "http://fonts.gstatic.com/s/bodonimoda/v23/aFT67PxzY382XsXX63LUYL6GYFcan6NJrKp-VPjfJMShrpsGFUt8oZDdwIBytVjMYwE.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Bodoni Moda" + }, + { + "src": "http://fonts.gstatic.com/s/bodonimoda/v23/aFT67PxzY382XsXX63LUYL6GYFcan6NJrKp-VPjfJMShrpsGFUt8oandwIBytVjMYwE.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Bodoni Moda" + }, + { + "src": "http://fonts.gstatic.com/s/bodonimoda/v23/aFT67PxzY382XsXX63LUYL6GYFcan6NJrKp-VPjfJMShrpsGFUt8oc7dwIBytVjMYwE.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Bodoni Moda" + }, + { + "src": "http://fonts.gstatic.com/s/bodonimoda/v23/aFT67PxzY382XsXX63LUYL6GYFcan6NJrKp-VPjfJMShrpsGFUt8oefdwIBytVjMYwE.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Bodoni Moda" + }, + { + "src": "http://fonts.gstatic.com/s/bodonimoda/v23/aFT07PxzY382XsXX63LUYJSPUqb0pL6OQqxrZLnVbvZedvJtj-V7tIaZKMN4sXrJcwHqoQ.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Bodoni Moda" + }, + { + "src": "http://fonts.gstatic.com/s/bodonimoda/v23/aFT07PxzY382XsXX63LUYJSPUqb0pL6OQqxrZLnVbvZedvJtj-V7tIaZGsN4sXrJcwHqoQ.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Bodoni Moda" + }, + { + "src": "http://fonts.gstatic.com/s/bodonimoda/v23/aFT07PxzY382XsXX63LUYJSPUqb0pL6OQqxrZLnVbvZedvJtj-V7tIaZ9sR4sXrJcwHqoQ.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Bodoni Moda" + }, + { + "src": "http://fonts.gstatic.com/s/bodonimoda/v23/aFT07PxzY382XsXX63LUYJSPUqb0pL6OQqxrZLnVbvZedvJtj-V7tIaZz8R4sXrJcwHqoQ.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Bodoni Moda" + }, + { + "src": "http://fonts.gstatic.com/s/bodonimoda/v23/aFT07PxzY382XsXX63LUYJSPUqb0pL6OQqxrZLnVbvZedvJtj-V7tIaZqMR4sXrJcwHqoQ.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Bodoni Moda" + }, + { + "src": "http://fonts.gstatic.com/s/bodonimoda/v23/aFT07PxzY382XsXX63LUYJSPUqb0pL6OQqxrZLnVbvZedvJtj-V7tIaZgcR4sXrJcwHqoQ.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Bodoni Moda" + } + ] + }, + { + "name": "Bokor", + "fontFamily": "Bokor, system-ui", + "slug": "bokor", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bokor/v30/m8JcjfpeeaqTiR2WdInbcaxE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bokor" + } + ] + }, + { + "name": "Bona Nova", + "fontFamily": "Bona Nova, serif", + "slug": "bona-nova", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bonanova/v10/B50NF7ZCpX7fcHfvIUBJi6hqHK-CLA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bona Nova" + }, + { + "src": "http://fonts.gstatic.com/s/bonanova/v10/B50LF7ZCpX7fcHfvIUB5iaJuPqqSLJYf.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Bona Nova" + }, + { + "src": "http://fonts.gstatic.com/s/bonanova/v10/B50IF7ZCpX7fcHfvIUBxN4dOFISeJY8GgQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Bona Nova" + } + ] + }, + { + "name": "Bonbon", + "fontFamily": "Bonbon, cursive", + "slug": "bonbon", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bonbon/v26/0FlVVPeVlFec4ee_cDEAbQY5-A.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bonbon" + } + ] + }, + { + "name": "Bonheur Royale", + "fontFamily": "Bonheur Royale, cursive", + "slug": "bonheur-royale", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bonheurroyale/v10/c4m51nt_GMTrtX-b9GcG4-YRmYK_c0f1N5Ij.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bonheur Royale" + } + ] + }, + { + "name": "Boogaloo", + "fontFamily": "Boogaloo, system-ui", + "slug": "boogaloo", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/boogaloo/v19/kmK-Zq45GAvOdnaW6x1F_SrQo_1K.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Boogaloo" + } + ] + }, + { + "name": "Bowlby One", + "fontFamily": "Bowlby One, system-ui", + "slug": "bowlby-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bowlbyone/v19/taiPGmVuC4y96PFeqp8smo6C_Z0wcK4.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bowlby One" + } + ] + }, + { + "name": "Bowlby One SC", + "fontFamily": "Bowlby One SC, system-ui", + "slug": "bowlby-one-sc", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bowlbyonesc/v20/DtVlJxerQqQm37tzN3wMug9Pzgj8owhNjuE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bowlby One SC" + } + ] + }, + { + "name": "Braah One", + "fontFamily": "Braah One, sans-serif", + "slug": "braah-one", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/braahone/v2/KFOlCnWUpt6LsxxxiylvAx05IsDqlA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Braah One" + } + ] + }, + { + "name": "Brawler", + "fontFamily": "Brawler, serif", + "slug": "brawler", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/brawler/v19/xn7gYHE3xXewAscGsgC7S9XdZN8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Brawler" + }, + { + "src": "http://fonts.gstatic.com/s/brawler/v19/xn7lYHE3xXewAscGiryUb932eNaPfk8.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Brawler" + } + ] + }, + { + "name": "Bree Serif", + "fontFamily": "Bree Serif, serif", + "slug": "bree-serif", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/breeserif/v17/4UaHrEJCrhhnVA3DgluAx63j5pN1MwI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bree Serif" + } + ] + }, + { + "name": "Bruno Ace", + "fontFamily": "Bruno Ace, system-ui", + "slug": "bruno-ace", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/brunoace/v1/WwkcxPa2E06x4trkOj_kMKoMWNMg3Q.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bruno Ace" + } + ] + }, + { + "name": "Bruno Ace SC", + "fontFamily": "Bruno Ace SC, system-ui", + "slug": "bruno-ace-sc", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/brunoacesc/v1/ptROTiycffFLBuiHjdJDl634LSFrpe8uZA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bruno Ace SC" + } + ] + }, + { + "name": "Brygada 1918", + "fontFamily": "Brygada 1918, serif", + "slug": "brygada-1918", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/brygada1918/v21/pe08MI6eKpdGqlF5LANrM--ACNaeo8mTUIR_y2-f-V8Wu5O3gbo.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Brygada 1918" + }, + { + "src": "http://fonts.gstatic.com/s/brygada1918/v21/pe08MI6eKpdGqlF5LANrM--ACNaeo8mTUIR_y12f-V8Wu5O3gbo.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Brygada 1918" + }, + { + "src": "http://fonts.gstatic.com/s/brygada1918/v21/pe08MI6eKpdGqlF5LANrM--ACNaeo8mTUIR_y7GY-V8Wu5O3gbo.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Brygada 1918" + }, + { + "src": "http://fonts.gstatic.com/s/brygada1918/v21/pe08MI6eKpdGqlF5LANrM--ACNaeo8mTUIR_y4iY-V8Wu5O3gbo.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Brygada 1918" + }, + { + "src": "http://fonts.gstatic.com/s/brygada1918/v21/pe06MI6eKpdGqlF5LANrM--qAeRhe6D4yip43qfcERwcv7GykboaLg.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Brygada 1918" + }, + { + "src": "http://fonts.gstatic.com/s/brygada1918/v21/pe06MI6eKpdGqlF5LANrM--qAeRhe6D4yip43qfcIxwcv7GykboaLg.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Brygada 1918" + }, + { + "src": "http://fonts.gstatic.com/s/brygada1918/v21/pe06MI6eKpdGqlF5LANrM--qAeRhe6D4yip43qfczxscv7GykboaLg.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Brygada 1918" + }, + { + "src": "http://fonts.gstatic.com/s/brygada1918/v21/pe06MI6eKpdGqlF5LANrM--qAeRhe6D4yip43qfc9hscv7GykboaLg.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Brygada 1918" + } + ] + }, + { + "name": "Bubblegum Sans", + "fontFamily": "Bubblegum Sans, system-ui", + "slug": "bubblegum-sans", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bubblegumsans/v16/AYCSpXb_Z9EORv1M5QTjEzMEtdaHzoPPb7R4.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bubblegum Sans" + } + ] + }, + { + "name": "Bubbler One", + "fontFamily": "Bubbler One, sans-serif", + "slug": "bubbler-one", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bubblerone/v20/f0Xy0eqj68ppQV9KBLmAouHH26MPePkt.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bubbler One" + } + ] + }, + { + "name": "Buda", + "fontFamily": "Buda, system-ui", + "slug": "buda", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/buda/v25/GFDqWAN8mnyIJSSrG7UBr7pZKA0.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Buda" + } + ] + }, + { + "name": "Buenard", + "fontFamily": "Buenard, serif", + "slug": "buenard", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/buenard/v17/OD5DuM6Cyma8FnnsPzf9qGi9HL4.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Buenard" + }, + { + "src": "http://fonts.gstatic.com/s/buenard/v17/OD5GuM6Cyma8FnnsB4vSjGCWALepwss.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Buenard" + } + ] + }, + { + "name": "Bungee", + "fontFamily": "Bungee, system-ui", + "slug": "bungee", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bungee/v11/N0bU2SZBIuF2PU_ECn50Kd_PmA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bungee" + } + ] + }, + { + "name": "Bungee Hairline", + "fontFamily": "Bungee Hairline, system-ui", + "slug": "bungee-hairline", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bungeehairline/v19/snfys0G548t04270a_ljTLUVrv-7YB2dQ5ZPqQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bungee Hairline" + } + ] + }, + { + "name": "Bungee Inline", + "fontFamily": "Bungee Inline, system-ui", + "slug": "bungee-inline", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bungeeinline/v12/Gg8zN58UcgnlCweMrih332VuDGJ1-FEglsc.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bungee Inline" + } + ] + }, + { + "name": "Bungee Outline", + "fontFamily": "Bungee Outline, system-ui", + "slug": "bungee-outline", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bungeeoutline/v18/_6_mEDvmVP24UvU2MyiGDslL3Qg3YhJqPXxo.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bungee Outline" + } + ] + }, + { + "name": "Bungee Shade", + "fontFamily": "Bungee Shade, system-ui", + "slug": "bungee-shade", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bungeeshade/v11/DtVkJxarWL0t2KdzK3oI_jks7iLSrwFUlw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bungee Shade" + } + ] + }, + { + "name": "Bungee Spice", + "fontFamily": "Bungee Spice, system-ui", + "slug": "bungee-spice", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/bungeespice/v9/nwpTtK2nIhxE0q-IwgSpZBqCzyI-aMPF7Q.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Bungee Spice" + } + ] + }, + { + "name": "Butcherman", + "fontFamily": "Butcherman, system-ui", + "slug": "butcherman", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/butcherman/v24/2EbiL-thF0loflXUBOdb1zWzq_5uT84.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Butcherman" + } + ] + }, + { + "name": "Butterfly Kids", + "fontFamily": "Butterfly Kids, cursive", + "slug": "butterfly-kids", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/butterflykids/v21/ll8lK2CWTjuqAsXDqlnIbMNs5S4arxFrAX1D.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Butterfly Kids" + } + ] + }, + { + "name": "Cabin", + "fontFamily": "Cabin, sans-serif", + "slug": "cabin", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/cabin/v26/u-4X0qWljRw-PfU81xCKCpdpbgZJl6XFpfEd7eA9BIxxkV2EL7Gvxm7rE_s.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Cabin" + }, + { + "src": "http://fonts.gstatic.com/s/cabin/v26/u-4X0qWljRw-PfU81xCKCpdpbgZJl6XFpfEd7eA9BIxxkW-EL7Gvxm7rE_s.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Cabin" + }, + { + "src": "http://fonts.gstatic.com/s/cabin/v26/u-4X0qWljRw-PfU81xCKCpdpbgZJl6XFpfEd7eA9BIxxkYODL7Gvxm7rE_s.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Cabin" + }, + { + "src": "http://fonts.gstatic.com/s/cabin/v26/u-4X0qWljRw-PfU81xCKCpdpbgZJl6XFpfEd7eA9BIxxkbqDL7Gvxm7rE_s.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Cabin" + }, + { + "src": "http://fonts.gstatic.com/s/cabin/v26/u-4V0qWljRw-Pd815fNqc8T_wAFcX-c37MPiNYlWniJ2hJXHx_KlwkzuA_u1Bg.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Cabin" + }, + { + "src": "http://fonts.gstatic.com/s/cabin/v26/u-4V0qWljRw-Pd815fNqc8T_wAFcX-c37MPiNYlWniJ2hJXH9fKlwkzuA_u1Bg.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Cabin" + }, + { + "src": "http://fonts.gstatic.com/s/cabin/v26/u-4V0qWljRw-Pd815fNqc8T_wAFcX-c37MPiNYlWniJ2hJXHGfWlwkzuA_u1Bg.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Cabin" + }, + { + "src": "http://fonts.gstatic.com/s/cabin/v26/u-4V0qWljRw-Pd815fNqc8T_wAFcX-c37MPiNYlWniJ2hJXHIPWlwkzuA_u1Bg.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Cabin" + } + ] + }, + { + "name": "Cabin Condensed", + "fontFamily": "Cabin Condensed, sans-serif", + "slug": "cabin-condensed", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/cabincondensed/v20/nwpMtK6mNhBK2err_hqkYhHRqmwaYOjZ5HZl8Q.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Cabin Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/cabincondensed/v20/nwpJtK6mNhBK2err_hqkYhHRqmwilMH97F15-K1oqQ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Cabin Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/cabincondensed/v20/nwpJtK6mNhBK2err_hqkYhHRqmwiuMb97F15-K1oqQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Cabin Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/cabincondensed/v20/nwpJtK6mNhBK2err_hqkYhHRqmwi3Mf97F15-K1oqQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Cabin Condensed" + } + ] + }, + { + "name": "Cabin Sketch", + "fontFamily": "Cabin Sketch, system-ui", + "slug": "cabin-sketch", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/cabinsketch/v19/QGYpz_kZZAGCONcK2A4bGOjMn9JM6fnuKg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Cabin Sketch" + }, + { + "src": "http://fonts.gstatic.com/s/cabinsketch/v19/QGY2z_kZZAGCONcK2A4bGOj0I_1o4dLyI4CMFw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Cabin Sketch" + } + ] + }, + { + "name": "Caesar Dressing", + "fontFamily": "Caesar Dressing, system-ui", + "slug": "caesar-dressing", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/caesardressing/v21/yYLx0hLa3vawqtwdswbotmK4vrR3cbb6LZttyg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Caesar Dressing" + } + ] + }, + { + "name": "Cagliostro", + "fontFamily": "Cagliostro, sans-serif", + "slug": "cagliostro", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/cagliostro/v21/ZgNWjP5HM73BV5amnX-TjGXEM4COoE4.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Cagliostro" + } + ] + }, + { + "name": "Cairo", + "fontFamily": "Cairo, sans-serif", + "slug": "cairo", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/cairo/v28/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hGA-W1ToLQ-HmkA.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Cairo" + }, + { + "src": "http://fonts.gstatic.com/s/cairo/v28/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hL4-W1ToLQ-HmkA.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Cairo" + }, + { + "src": "http://fonts.gstatic.com/s/cairo/v28/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hOA-W1ToLQ-HmkA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Cairo" + }, + { + "src": "http://fonts.gstatic.com/s/cairo/v28/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hNI-W1ToLQ-HmkA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Cairo" + }, + { + "src": "http://fonts.gstatic.com/s/cairo/v28/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hD45W1ToLQ-HmkA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Cairo" + }, + { + "src": "http://fonts.gstatic.com/s/cairo/v28/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hAc5W1ToLQ-HmkA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Cairo" + }, + { + "src": "http://fonts.gstatic.com/s/cairo/v28/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hGA5W1ToLQ-HmkA.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Cairo" + }, + { + "src": "http://fonts.gstatic.com/s/cairo/v28/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hEk5W1ToLQ-HmkA.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Cairo" + } + ] + }, + { + "name": "Cairo Play", + "fontFamily": "Cairo Play, sans-serif", + "slug": "cairo-play", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/cairoplay/v7/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1EnYq9yXa8GvzaA.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Cairo Play" + }, + { + "src": "http://fonts.gstatic.com/s/cairoplay/v7/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1zHYq9yXa8GvzaA.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Cairo Play" + }, + { + "src": "http://fonts.gstatic.com/s/cairoplay/v7/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1knYq9yXa8GvzaA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Cairo Play" + }, + { + "src": "http://fonts.gstatic.com/s/cairoplay/v7/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1oHYq9yXa8GvzaA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Cairo Play" + }, + { + "src": "http://fonts.gstatic.com/s/cairoplay/v7/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1THEq9yXa8GvzaA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Cairo Play" + }, + { + "src": "http://fonts.gstatic.com/s/cairoplay/v7/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1dXEq9yXa8GvzaA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Cairo Play" + }, + { + "src": "http://fonts.gstatic.com/s/cairoplay/v7/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1EnEq9yXa8GvzaA.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Cairo Play" + }, + { + "src": "http://fonts.gstatic.com/s/cairoplay/v7/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1O3Eq9yXa8GvzaA.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Cairo Play" + } + ] + }, + { + "name": "Caladea", + "fontFamily": "Caladea, serif", + "slug": "caladea", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/caladea/v7/kJEzBugZ7AAjhybUjR93-9IztOc.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Caladea" + }, + { + "src": "http://fonts.gstatic.com/s/caladea/v7/kJExBugZ7AAjhybUvR19__A2pOdvDA.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Caladea" + }, + { + "src": "http://fonts.gstatic.com/s/caladea/v7/kJE2BugZ7AAjhybUtaNY39oYqO52FZ0.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Caladea" + }, + { + "src": "http://fonts.gstatic.com/s/caladea/v7/kJE0BugZ7AAjhybUvR1FQ98SrMxzBZ2lDA.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Caladea" + } + ] + }, + { + "name": "Calistoga", + "fontFamily": "Calistoga, system-ui", + "slug": "calistoga", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/calistoga/v13/6NUU8F2OJg6MeR7l4e0vtMYAwdRZfw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Calistoga" + } + ] + }, + { + "name": "Calligraffitti", + "fontFamily": "Calligraffitti, cursive", + "slug": "calligraffitti", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/calligraffitti/v19/46k2lbT3XjDVqJw3DCmCFjE0vnFZM5ZBpYN-.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Calligraffitti" + } + ] + }, + { + "name": "Cambay", + "fontFamily": "Cambay, sans-serif", + "slug": "cambay", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/cambay/v12/SLXJc1rY6H0_ZDsGbrSIz9JsaA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Cambay" + }, + { + "src": "http://fonts.gstatic.com/s/cambay/v12/SLXLc1rY6H0_ZDs2bL6M7dd8aGZk.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Cambay" + }, + { + "src": "http://fonts.gstatic.com/s/cambay/v12/SLXKc1rY6H0_ZDs-0pusx_lwYX99kA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Cambay" + }, + { + "src": "http://fonts.gstatic.com/s/cambay/v12/SLXMc1rY6H0_ZDs2bIYwwvN0Q3ptkDMN.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Cambay" + } + ] + }, + { + "name": "Cambo", + "fontFamily": "Cambo, serif", + "slug": "cambo", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/cambo/v17/IFSqHeNEk8FJk416ok7xkPm8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Cambo" + } + ] + }, + { + "name": "Candal", + "fontFamily": "Candal, sans-serif", + "slug": "candal", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/candal/v15/XoHn2YH6T7-t_8cNAR4Jt9Yxlw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Candal" + } + ] + }, + { + "name": "Cantarell", + "fontFamily": "Cantarell, sans-serif", + "slug": "cantarell", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/cantarell/v17/B50NF7ZDq37KMUvlO01Ji6hqHK-CLA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Cantarell" + }, + { + "src": "http://fonts.gstatic.com/s/cantarell/v17/B50LF7ZDq37KMUvlO015iaJuPqqSLJYf.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Cantarell" + }, + { + "src": "http://fonts.gstatic.com/s/cantarell/v17/B50IF7ZDq37KMUvlO01xN4dOFISeJY8GgQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Cantarell" + }, + { + "src": "http://fonts.gstatic.com/s/cantarell/v17/B50WF7ZDq37KMUvlO015iZrSEY6aB4oWgWHB.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Cantarell" + } + ] + }, + { + "name": "Cantata One", + "fontFamily": "Cantata One, serif", + "slug": "cantata-one", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/cantataone/v15/PlI5Fl60Nb5obNzNe2jslVxEt8CwfGaD.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Cantata One" + } + ] + }, + { + "name": "Cantora One", + "fontFamily": "Cantora One, sans-serif", + "slug": "cantora-one", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/cantoraone/v19/gyB4hws1JdgnKy56GB_JX6zdZ4vZVbgZ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Cantora One" + } + ] + }, + { + "name": "Capriola", + "fontFamily": "Capriola, sans-serif", + "slug": "capriola", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/capriola/v14/wXKoE3YSppcvo1PDln_8L-AinG8y.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Capriola" + } + ] + }, + { + "name": "Caramel", + "fontFamily": "Caramel, cursive", + "slug": "caramel", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/caramel/v7/P5sCzZKBbMTf_ShyxCRuiZ-uydg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Caramel" + } + ] + }, + { + "name": "Carattere", + "fontFamily": "Carattere, cursive", + "slug": "carattere", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/carattere/v7/4iCv6Kp1b9dXlgt_CkvTt2aMH4V_gg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Carattere" + } + ] + }, + { + "name": "Cardo", + "fontFamily": "Cardo, serif", + "slug": "cardo", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/cardo/v19/wlp_gwjKBV1pqiv_1oAZ2H5O.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Cardo" + }, + { + "src": "http://fonts.gstatic.com/s/cardo/v19/wlpxgwjKBV1pqhv93IQ73W5OcCk.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Cardo" + }, + { + "src": "http://fonts.gstatic.com/s/cardo/v19/wlpygwjKBV1pqhND-aQR82JHaTBX.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Cardo" + } + ] + }, + { + "name": "Carlito", + "fontFamily": "Carlito, sans-serif", + "slug": "carlito", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/carlito/v3/3Jn9SDPw3m-pk039PDCLTXUETuE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Carlito" + }, + { + "src": "http://fonts.gstatic.com/s/carlito/v3/3Jn_SDPw3m-pk039DDKBSVcBXuFb0Q.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Carlito" + }, + { + "src": "http://fonts.gstatic.com/s/carlito/v3/3Jn4SDPw3m-pk039BIykaX0vUuhCyOo.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Carlito" + }, + { + "src": "http://fonts.gstatic.com/s/carlito/v3/3Jn6SDPw3m-pk039DDK59XglVspH2OprMQ.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Carlito" + } + ] + }, + { + "name": "Carme", + "fontFamily": "Carme, sans-serif", + "slug": "carme", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/carme/v16/ptRHTiWdbvZIDOjGxLNrxfbZ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Carme" + } + ] + }, + { + "name": "Carrois Gothic", + "fontFamily": "Carrois Gothic, sans-serif", + "slug": "carrois-gothic", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/carroisgothic/v16/Z9XPDmFATg-N1PLtLOOxvIHl9ZmD3i7ajcJ-.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Carrois Gothic" + } + ] + }, + { + "name": "Carrois Gothic SC", + "fontFamily": "Carrois Gothic SC, sans-serif", + "slug": "carrois-gothic-sc", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/carroisgothicsc/v15/ZgNJjOVHM6jfUZCmyUqT2A2HVKjc-28nNHabY4dN.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Carrois Gothic SC" + } + ] + }, + { + "name": "Carter One", + "fontFamily": "Carter One, system-ui", + "slug": "carter-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/carterone/v17/q5uCsoe5IOB2-pXv9UcNIxR2hYxREMs.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Carter One" + } + ] + }, + { + "name": "Castoro", + "fontFamily": "Castoro, serif", + "slug": "castoro", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/castoro/v19/1q2GY5yMCld3-O4cHYhEzOYenEU.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Castoro" + }, + { + "src": "http://fonts.gstatic.com/s/castoro/v19/1q2EY5yMCld3-O4cLYpOyMQbjEX5fw.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Castoro" + } + ] + }, + { + "name": "Castoro Titling", + "fontFamily": "Castoro Titling, system-ui", + "slug": "castoro-titling", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/castorotitling/v3/buEupouwccj03leTfjUAhEZWlrNqYgckeo9RMw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Castoro Titling" + } + ] + }, + { + "name": "Catamaran", + "fontFamily": "Catamaran, sans-serif", + "slug": "catamaran", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/catamaran/v18/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPHjc1anXuluiLyw.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Catamaran" + }, + { + "src": "http://fonts.gstatic.com/s/catamaran/v18/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPPjd1anXuluiLyw.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Catamaran" + }, + { + "src": "http://fonts.gstatic.com/s/catamaran/v18/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPCbd1anXuluiLyw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Catamaran" + }, + { + "src": "http://fonts.gstatic.com/s/catamaran/v18/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPHjd1anXuluiLyw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Catamaran" + }, + { + "src": "http://fonts.gstatic.com/s/catamaran/v18/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPErd1anXuluiLyw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Catamaran" + }, + { + "src": "http://fonts.gstatic.com/s/catamaran/v18/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPKba1anXuluiLyw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Catamaran" + }, + { + "src": "http://fonts.gstatic.com/s/catamaran/v18/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPJ_a1anXuluiLyw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Catamaran" + }, + { + "src": "http://fonts.gstatic.com/s/catamaran/v18/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPPja1anXuluiLyw.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Catamaran" + }, + { + "src": "http://fonts.gstatic.com/s/catamaran/v18/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPNHa1anXuluiLyw.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Catamaran" + } + ] + }, + { + "name": "Caudex", + "fontFamily": "Caudex, serif", + "slug": "caudex", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/caudex/v15/esDQ311QOP6BJUrIyviAnb4eEw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Caudex" + }, + { + "src": "http://fonts.gstatic.com/s/caudex/v15/esDS311QOP6BJUr4yPKEv7sOE4in.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Caudex" + }, + { + "src": "http://fonts.gstatic.com/s/caudex/v15/esDT311QOP6BJUrwdteklZUCGpG-GQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Caudex" + }, + { + "src": "http://fonts.gstatic.com/s/caudex/v15/esDV311QOP6BJUr4yMo4kJ8GOJSuGdLB.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Caudex" + } + ] + }, + { + "name": "Caveat", + "fontFamily": "Caveat, cursive", + "slug": "caveat", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/caveat/v17/WnznHAc5bAfYB2QRah7pcpNvOx-pjfJ9SIKjYBxPigs.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Caveat" + }, + { + "src": "http://fonts.gstatic.com/s/caveat/v17/WnznHAc5bAfYB2QRah7pcpNvOx-pjcB9SIKjYBxPigs.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Caveat" + }, + { + "src": "http://fonts.gstatic.com/s/caveat/v17/WnznHAc5bAfYB2QRah7pcpNvOx-pjSx6SIKjYBxPigs.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Caveat" + }, + { + "src": "http://fonts.gstatic.com/s/caveat/v17/WnznHAc5bAfYB2QRah7pcpNvOx-pjRV6SIKjYBxPigs.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Caveat" + } + ] + }, + { + "name": "Caveat Brush", + "fontFamily": "Caveat Brush, cursive", + "slug": "caveat-brush", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/caveatbrush/v11/EYq0maZfwr9S9-ETZc3fKXtMW7mT03pdQw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Caveat Brush" + } + ] + }, + { + "name": "Cedarville Cursive", + "fontFamily": "Cedarville Cursive, cursive", + "slug": "cedarville-cursive", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/cedarvillecursive/v17/yYL00g_a2veiudhUmxjo5VKkoqA-B_neJbBxw8BeTg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Cedarville Cursive" + } + ] + }, + { + "name": "Ceviche One", + "fontFamily": "Ceviche One, system-ui", + "slug": "ceviche-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/cevicheone/v16/gyB4hws1IcA6JzR-GB_JX6zdZ4vZVbgZ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Ceviche One" + } + ] + }, + { + "name": "Chakra Petch", + "fontFamily": "Chakra Petch, sans-serif", + "slug": "chakra-petch", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/chakrapetch/v9/cIflMapbsEk7TDLdtEz1BwkeNIhFQJXE3AY00g.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Chakra Petch" + }, + { + "src": "http://fonts.gstatic.com/s/chakrapetch/v9/cIfnMapbsEk7TDLdtEz1BwkWmpLJQp_A_gMk0izH.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Chakra Petch" + }, + { + "src": "http://fonts.gstatic.com/s/chakrapetch/v9/cIf6MapbsEk7TDLdtEz1BwkmmKBhSL7Y1Q.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Chakra Petch" + }, + { + "src": "http://fonts.gstatic.com/s/chakrapetch/v9/cIfkMapbsEk7TDLdtEz1BwkWmqplarvI1R8t.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Chakra Petch" + }, + { + "src": "http://fonts.gstatic.com/s/chakrapetch/v9/cIflMapbsEk7TDLdtEz1BwkebIlFQJXE3AY00g.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Chakra Petch" + }, + { + "src": "http://fonts.gstatic.com/s/chakrapetch/v9/cIfnMapbsEk7TDLdtEz1BwkWmpKRQ5_A_gMk0izH.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Chakra Petch" + }, + { + "src": "http://fonts.gstatic.com/s/chakrapetch/v9/cIflMapbsEk7TDLdtEz1BwkeQI5FQJXE3AY00g.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Chakra Petch" + }, + { + "src": "http://fonts.gstatic.com/s/chakrapetch/v9/cIfnMapbsEk7TDLdtEz1BwkWmpK9RJ_A_gMk0izH.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Chakra Petch" + }, + { + "src": "http://fonts.gstatic.com/s/chakrapetch/v9/cIflMapbsEk7TDLdtEz1BwkeJI9FQJXE3AY00g.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Chakra Petch" + }, + { + "src": "http://fonts.gstatic.com/s/chakrapetch/v9/cIfnMapbsEk7TDLdtEz1BwkWmpLZRZ_A_gMk0izH.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Chakra Petch" + } + ] + }, + { + "name": "Changa", + "fontFamily": "Changa, sans-serif", + "slug": "changa", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/changa/v22/2-c79JNi2YuVOUcOarRPgnNGooxCZy2xQjDp9htf1ZM.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Changa" + }, + { + "src": "http://fonts.gstatic.com/s/changa/v22/2-c79JNi2YuVOUcOarRPgnNGooxCZ_OxQjDp9htf1ZM.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Changa" + }, + { + "src": "http://fonts.gstatic.com/s/changa/v22/2-c79JNi2YuVOUcOarRPgnNGooxCZ62xQjDp9htf1ZM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Changa" + }, + { + "src": "http://fonts.gstatic.com/s/changa/v22/2-c79JNi2YuVOUcOarRPgnNGooxCZ5-xQjDp9htf1ZM.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Changa" + }, + { + "src": "http://fonts.gstatic.com/s/changa/v22/2-c79JNi2YuVOUcOarRPgnNGooxCZ3O2QjDp9htf1ZM.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Changa" + }, + { + "src": "http://fonts.gstatic.com/s/changa/v22/2-c79JNi2YuVOUcOarRPgnNGooxCZ0q2QjDp9htf1ZM.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Changa" + }, + { + "src": "http://fonts.gstatic.com/s/changa/v22/2-c79JNi2YuVOUcOarRPgnNGooxCZy22QjDp9htf1ZM.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Changa" + } + ] + }, + { + "name": "Changa One", + "fontFamily": "Changa One, system-ui", + "slug": "changa-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/changaone/v18/xfu00W3wXn3QLUJXhzq46AbouLfbK64.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Changa One" + }, + { + "src": "http://fonts.gstatic.com/s/changaone/v18/xfu20W3wXn3QLUJXhzq42ATivJXeO67ISw.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Changa One" + } + ] + }, + { + "name": "Chango", + "fontFamily": "Chango, system-ui", + "slug": "chango", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/chango/v22/2V0cKI0OB5U7WaJyz324TFUaAw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Chango" + } + ] + }, + { + "name": "Charis SIL", + "fontFamily": "Charis SIL, serif", + "slug": "charis-sil", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/charissil/v2/oPWK_kV3l-s-Q8govXvKrPrmYjZ2Xn0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Charis SIL" + }, + { + "src": "http://fonts.gstatic.com/s/charissil/v2/oPWI_kV3l-s-Q8govXvKnPjsZhRzTn2Ozw.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Charis SIL" + }, + { + "src": "http://fonts.gstatic.com/s/charissil/v2/oPWJ_kV3l-s-Q8govXvKlEbJRj5dQnSX1ko.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Charis SIL" + }, + { + "src": "http://fonts.gstatic.com/s/charissil/v2/oPWX_kV3l-s-Q8govXvKnPjU2jtXRlaSxkrMCQ.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Charis SIL" + } + ] + }, + { + "name": "Charm", + "fontFamily": "Charm, cursive", + "slug": "charm", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/charm/v11/7cHmv4oii5K0MeYvIe804WIo.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Charm" + }, + { + "src": "http://fonts.gstatic.com/s/charm/v11/7cHrv4oii5K0Md6TDss8yn4hnCci.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Charm" + } + ] + }, + { + "name": "Charmonman", + "fontFamily": "Charmonman, cursive", + "slug": "charmonman", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/charmonman/v18/MjQDmiR3vP_nuxDv47jiWJGovLdh6OE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Charmonman" + }, + { + "src": "http://fonts.gstatic.com/s/charmonman/v18/MjQAmiR3vP_nuxDv47jiYC2HmL9K9OhmGnY.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Charmonman" + } + ] + }, + { + "name": "Chathura", + "fontFamily": "Chathura, sans-serif", + "slug": "chathura", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/chathura/v20/_gP91R7-rzUuVjim42dEq0SbTvZyuDo.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Chathura" + }, + { + "src": "http://fonts.gstatic.com/s/chathura/v20/_gP81R7-rzUuVjim42eMiWSxYPp7oSNy.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Chathura" + }, + { + "src": "http://fonts.gstatic.com/s/chathura/v20/_gP71R7-rzUuVjim418goUC5S-Zy.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Chathura" + }, + { + "src": "http://fonts.gstatic.com/s/chathura/v20/_gP81R7-rzUuVjim42ecjmSxYPp7oSNy.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Chathura" + }, + { + "src": "http://fonts.gstatic.com/s/chathura/v20/_gP81R7-rzUuVjim42eAjWSxYPp7oSNy.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Chathura" + } + ] + }, + { + "name": "Chau Philomene One", + "fontFamily": "Chau Philomene One, sans-serif", + "slug": "chau-philomene-one", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/chauphilomeneone/v15/55xxezRsPtfie1vPY49qzdgSlJiHRQFsnIx7QMISdQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Chau Philomene One" + }, + { + "src": "http://fonts.gstatic.com/s/chauphilomeneone/v15/55xzezRsPtfie1vPY49qzdgSlJiHRQFcnoZ_YscCdXQB.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Chau Philomene One" + } + ] + }, + { + "name": "Chela One", + "fontFamily": "Chela One, system-ui", + "slug": "chela-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/chelaone/v21/6ae-4KC7Uqgdz_JZdPIy31vWNTMwoQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Chela One" + } + ] + }, + { + "name": "Chelsea Market", + "fontFamily": "Chelsea Market, system-ui", + "slug": "chelsea-market", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/chelseamarket/v13/BCawqZsHqfr89WNP_IApC8tzKBhlLA4uKkWk.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Chelsea Market" + } + ] + }, + { + "name": "Chenla", + "fontFamily": "Chenla, system-ui", + "slug": "chenla", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/chenla/v25/SZc43FDpIKu8WZ9eXxfonUPL6Q.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Chenla" + } + ] + }, + { + "name": "Cherish", + "fontFamily": "Cherish, cursive", + "slug": "cherish", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/cherish/v8/ll88K2mXUyqsDsTN5iDCI6IJjg8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Cherish" + } + ] + }, + { + "name": "Cherry Bomb One", + "fontFamily": "Cherry Bomb One, system-ui", + "slug": "cherry-bomb-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/cherrybombone/v8/y83DW4od1h6KlV3c6JJhRhGOdhrKDNpF41fr-w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Cherry Bomb One" + } + ] + }, + { + "name": "Cherry Cream Soda", + "fontFamily": "Cherry Cream Soda, system-ui", + "slug": "cherry-cream-soda", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/cherrycreamsoda/v21/UMBIrOxBrW6w2FFyi9paG0fdVdRciTd6Cd47DJ7G.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Cherry Cream Soda" + } + ] + }, + { + "name": "Cherry Swash", + "fontFamily": "Cherry Swash, system-ui", + "slug": "cherry-swash", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/cherryswash/v18/i7dNIFByZjaNAMxtZcnfAy58QHi-EwWMbg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Cherry Swash" + }, + { + "src": "http://fonts.gstatic.com/s/cherryswash/v18/i7dSIFByZjaNAMxtZcnfAy5E_FeaGy6QZ3WfYg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Cherry Swash" + } + ] + }, + { + "name": "Chewy", + "fontFamily": "Chewy, system-ui", + "slug": "chewy", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/chewy/v18/uK_94ruUb-k-wk5xIDMfO-ed.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Chewy" + } + ] + }, + { + "name": "Chicle", + "fontFamily": "Chicle, system-ui", + "slug": "chicle", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/chicle/v21/lJwG-pw9i2dqU-BDyWKuobYSxw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Chicle" + } + ] + }, + { + "name": "Chilanka", + "fontFamily": "Chilanka, cursive", + "slug": "chilanka", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/chilanka/v20/WWXRlj2DZQiMJYaYRrJQI9EAZhTO.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Chilanka" + } + ] + }, + { + "name": "Chivo", + "fontFamily": "Chivo, sans-serif", + "slug": "chivo", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/chivo/v18/va9b4kzIxd1KFppkaRKvDRPJVDf_vB7ul2DSFXjQiQ.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Chivo" + }, + { + "src": "http://fonts.gstatic.com/s/chivo/v18/va9b4kzIxd1KFppkaRKvDRPJVDf_PB_ul2DSFXjQiQ.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Chivo" + }, + { + "src": "http://fonts.gstatic.com/s/chivo/v18/va9b4kzIxd1KFppkaRKvDRPJVDf_4h_ul2DSFXjQiQ.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Chivo" + }, + { + "src": "http://fonts.gstatic.com/s/chivo/v18/va9b4kzIxd1KFppkaRKvDRPJVDf_vB_ul2DSFXjQiQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Chivo" + }, + { + "src": "http://fonts.gstatic.com/s/chivo/v18/va9b4kzIxd1KFppkaRKvDRPJVDf_jh_ul2DSFXjQiQ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Chivo" + }, + { + "src": "http://fonts.gstatic.com/s/chivo/v18/va9b4kzIxd1KFppkaRKvDRPJVDf_Yhjul2DSFXjQiQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Chivo" + }, + { + "src": "http://fonts.gstatic.com/s/chivo/v18/va9b4kzIxd1KFppkaRKvDRPJVDf_Wxjul2DSFXjQiQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Chivo" + }, + { + "src": "http://fonts.gstatic.com/s/chivo/v18/va9b4kzIxd1KFppkaRKvDRPJVDf_PBjul2DSFXjQiQ.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Chivo" + }, + { + "src": "http://fonts.gstatic.com/s/chivo/v18/va9b4kzIxd1KFppkaRKvDRPJVDf_FRjul2DSFXjQiQ.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Chivo" + }, + { + "src": "http://fonts.gstatic.com/s/chivo/v18/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFwG1WrWN33AiasJ.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Chivo" + }, + { + "src": "http://fonts.gstatic.com/s/chivo/v18/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFyG1GrWN33AiasJ.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Chivo" + }, + { + "src": "http://fonts.gstatic.com/s/chivo/v18/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFxY1GrWN33AiasJ.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Chivo" + }, + { + "src": "http://fonts.gstatic.com/s/chivo/v18/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFwG1GrWN33AiasJ.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Chivo" + }, + { + "src": "http://fonts.gstatic.com/s/chivo/v18/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFw01GrWN33AiasJ.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Chivo" + }, + { + "src": "http://fonts.gstatic.com/s/chivo/v18/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFzY02rWN33AiasJ.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Chivo" + }, + { + "src": "http://fonts.gstatic.com/s/chivo/v18/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFzh02rWN33AiasJ.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Chivo" + }, + { + "src": "http://fonts.gstatic.com/s/chivo/v18/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFyG02rWN33AiasJ.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Chivo" + }, + { + "src": "http://fonts.gstatic.com/s/chivo/v18/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFyv02rWN33AiasJ.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Chivo" + } + ] + }, + { + "name": "Chivo Mono", + "fontFamily": "Chivo Mono, monospace", + "slug": "chivo-mono", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/chivomono/v6/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D7hrqfVKphL03l4.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Chivo Mono" + }, + { + "src": "http://fonts.gstatic.com/s/chivomono/v6/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D5hr6fVKphL03l4.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Chivo Mono" + }, + { + "src": "http://fonts.gstatic.com/s/chivomono/v6/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D6_r6fVKphL03l4.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Chivo Mono" + }, + { + "src": "http://fonts.gstatic.com/s/chivomono/v6/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D7hr6fVKphL03l4.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Chivo Mono" + }, + { + "src": "http://fonts.gstatic.com/s/chivomono/v6/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D7Tr6fVKphL03l4.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Chivo Mono" + }, + { + "src": "http://fonts.gstatic.com/s/chivomono/v6/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D4_qKfVKphL03l4.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Chivo Mono" + }, + { + "src": "http://fonts.gstatic.com/s/chivomono/v6/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D4GqKfVKphL03l4.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Chivo Mono" + }, + { + "src": "http://fonts.gstatic.com/s/chivomono/v6/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D5hqKfVKphL03l4.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Chivo Mono" + }, + { + "src": "http://fonts.gstatic.com/s/chivomono/v6/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D5IqKfVKphL03l4.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Chivo Mono" + }, + { + "src": "http://fonts.gstatic.com/s/chivomono/v6/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7E-XIJxp1ml4imo.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Chivo Mono" + }, + { + "src": "http://fonts.gstatic.com/s/chivomono/v6/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7M-WIJxp1ml4imo.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Chivo Mono" + }, + { + "src": "http://fonts.gstatic.com/s/chivomono/v6/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7BGWIJxp1ml4imo.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Chivo Mono" + }, + { + "src": "http://fonts.gstatic.com/s/chivomono/v6/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7E-WIJxp1ml4imo.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Chivo Mono" + }, + { + "src": "http://fonts.gstatic.com/s/chivomono/v6/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7H2WIJxp1ml4imo.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Chivo Mono" + }, + { + "src": "http://fonts.gstatic.com/s/chivomono/v6/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7JGRIJxp1ml4imo.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Chivo Mono" + }, + { + "src": "http://fonts.gstatic.com/s/chivomono/v6/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7KiRIJxp1ml4imo.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Chivo Mono" + }, + { + "src": "http://fonts.gstatic.com/s/chivomono/v6/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7M-RIJxp1ml4imo.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Chivo Mono" + }, + { + "src": "http://fonts.gstatic.com/s/chivomono/v6/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7OaRIJxp1ml4imo.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Chivo Mono" + } + ] + }, + { + "name": "Chokokutai", + "fontFamily": "Chokokutai, system-ui", + "slug": "chokokutai", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/chokokutai/v9/kmK4Zqw4HwvCeHGM8Fws9y7ypu1Kr7I.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Chokokutai" + } + ] + }, + { + "name": "Chonburi", + "fontFamily": "Chonburi, system-ui", + "slug": "chonburi", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/chonburi/v10/8AtqGs-wOpGRTBq66IWaFr3biAfZ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Chonburi" + } + ] + }, + { + "name": "Cinzel", + "fontFamily": "Cinzel, serif", + "slug": "cinzel", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/cinzel/v23/8vIU7ww63mVu7gtR-kwKxNvkNOjw-tbnTYrvDE5ZdqU.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Cinzel" + }, + { + "src": "http://fonts.gstatic.com/s/cinzel/v23/8vIU7ww63mVu7gtR-kwKxNvkNOjw-uTnTYrvDE5ZdqU.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Cinzel" + }, + { + "src": "http://fonts.gstatic.com/s/cinzel/v23/8vIU7ww63mVu7gtR-kwKxNvkNOjw-gjgTYrvDE5ZdqU.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Cinzel" + }, + { + "src": "http://fonts.gstatic.com/s/cinzel/v23/8vIU7ww63mVu7gtR-kwKxNvkNOjw-jHgTYrvDE5ZdqU.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Cinzel" + }, + { + "src": "http://fonts.gstatic.com/s/cinzel/v23/8vIU7ww63mVu7gtR-kwKxNvkNOjw-lbgTYrvDE5ZdqU.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Cinzel" + }, + { + "src": "http://fonts.gstatic.com/s/cinzel/v23/8vIU7ww63mVu7gtR-kwKxNvkNOjw-n_gTYrvDE5ZdqU.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Cinzel" + } + ] + }, + { + "name": "Cinzel Decorative", + "fontFamily": "Cinzel Decorative, system-ui", + "slug": "cinzel-decorative", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/cinzeldecorative/v14/daaCSScvJGqLYhG8nNt8KPPswUAPnh7URs1LaCyC.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Cinzel Decorative" + }, + { + "src": "http://fonts.gstatic.com/s/cinzeldecorative/v14/daaHSScvJGqLYhG8nNt8KPPswUAPniZoaelDQzCLlQXE.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Cinzel Decorative" + }, + { + "src": "http://fonts.gstatic.com/s/cinzeldecorative/v14/daaHSScvJGqLYhG8nNt8KPPswUAPniZQa-lDQzCLlQXE.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Cinzel Decorative" + } + ] + }, + { + "name": "Clicker Script", + "fontFamily": "Clicker Script, cursive", + "slug": "clicker-script", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/clickerscript/v13/raxkHiKPvt8CMH6ZWP8PdlEq72rY2zqUKafv.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Clicker Script" + } + ] + }, + { + "name": "Climate Crisis", + "fontFamily": "Climate Crisis, system-ui", + "slug": "climate-crisis", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/climatecrisis/v5/wEOpEB3AntNeKCPBVW9XOKlmp3AUgWFN1DvIvcM0gFp6jaUrGb7PsQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Climate Crisis" + } + ] + }, + { + "name": "Coda", + "fontFamily": "Coda, system-ui", + "slug": "coda", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/coda/v21/SLXHc1jY5nQ8JUIMapaN39I.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Coda" + }, + { + "src": "http://fonts.gstatic.com/s/coda/v21/SLXIc1jY5nQ8HeIgTp6mw9t1cX8.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Coda" + } + ] + }, + { + "name": "Coda Caption", + "fontFamily": "Coda Caption, sans-serif", + "slug": "coda-caption", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/codacaption/v19/ieVm2YRII2GMY7SyXSoDRiQGqcx6x_-fACIgaw.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Coda Caption" + } + ] + }, + { + "name": "Codystar", + "fontFamily": "Codystar, system-ui", + "slug": "codystar", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/codystar/v15/FwZf7-Q1xVk-40qxOuYsyuyrj0e29bfC.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Codystar" + }, + { + "src": "http://fonts.gstatic.com/s/codystar/v15/FwZY7-Q1xVk-40qxOt6A4sijpFu_.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Codystar" + } + ] + }, + { + "name": "Coiny", + "fontFamily": "Coiny, system-ui", + "slug": "coiny", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/coiny/v16/gyByhwU1K989PXwbElSvO5Tc.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Coiny" + } + ] + }, + { + "name": "Combo", + "fontFamily": "Combo, system-ui", + "slug": "combo", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/combo/v21/BXRlvF3Jh_fIhg0iBu9y8Hf0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Combo" + } + ] + }, + { + "name": "Comfortaa", + "fontFamily": "Comfortaa, system-ui", + "slug": "comfortaa", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/comfortaa/v40/1Pt_g8LJRfWJmhDAuUsSQamb1W0lwk4S4TbMPrQVIT9c2c8.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Comfortaa" + }, + { + "src": "http://fonts.gstatic.com/s/comfortaa/v40/1Pt_g8LJRfWJmhDAuUsSQamb1W0lwk4S4WjMPrQVIT9c2c8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Comfortaa" + }, + { + "src": "http://fonts.gstatic.com/s/comfortaa/v40/1Pt_g8LJRfWJmhDAuUsSQamb1W0lwk4S4VrMPrQVIT9c2c8.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Comfortaa" + }, + { + "src": "http://fonts.gstatic.com/s/comfortaa/v40/1Pt_g8LJRfWJmhDAuUsSQamb1W0lwk4S4bbLPrQVIT9c2c8.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Comfortaa" + }, + { + "src": "http://fonts.gstatic.com/s/comfortaa/v40/1Pt_g8LJRfWJmhDAuUsSQamb1W0lwk4S4Y_LPrQVIT9c2c8.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Comfortaa" + } + ] + }, + { + "name": "Comforter", + "fontFamily": "Comforter, cursive", + "slug": "comforter", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/comforter/v5/H4clBXOCl8nQnlaql3Qa6JG8iqeuag.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Comforter" + } + ] + }, + { + "name": "Comforter Brush", + "fontFamily": "Comforter Brush, cursive", + "slug": "comforter-brush", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/comforterbrush/v5/Y4GTYa1xVSggrfzZI5WMjxRaOz0jwLL9Th8YYA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Comforter Brush" + } + ] + }, + { + "name": "Comic Neue", + "fontFamily": "Comic Neue, cursive", + "slug": "comic-neue", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/comicneue/v8/4UaErEJDsxBrF37olUeD_wHLwpteLwtHJlc.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Comic Neue" + }, + { + "src": "http://fonts.gstatic.com/s/comicneue/v8/4UaarEJDsxBrF37olUeD96_RTplUKylCNlcw_Q.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Comic Neue" + }, + { + "src": "http://fonts.gstatic.com/s/comicneue/v8/4UaHrEJDsxBrF37olUeDx63j5pN1MwI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Comic Neue" + }, + { + "src": "http://fonts.gstatic.com/s/comicneue/v8/4UaFrEJDsxBrF37olUeD96_p4rFwIwJePw.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Comic Neue" + }, + { + "src": "http://fonts.gstatic.com/s/comicneue/v8/4UaErEJDsxBrF37olUeD_xHMwpteLwtHJlc.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Comic Neue" + }, + { + "src": "http://fonts.gstatic.com/s/comicneue/v8/4UaarEJDsxBrF37olUeD96_RXp5UKylCNlcw_Q.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Comic Neue" + } + ] + }, + { + "name": "Coming Soon", + "fontFamily": "Coming Soon, cursive", + "slug": "coming-soon", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/comingsoon/v19/qWcuB6mzpYL7AJ2VfdQR1u-SUjjzsykh.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Coming Soon" + } + ] + }, + { + "name": "Comme", + "fontFamily": "Comme, sans-serif", + "slug": "comme", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/comme/v2/8QIUdirKhMbn-uG1kHz0MgviDe1z5cBr644fWsRO9w.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Comme" + }, + { + "src": "http://fonts.gstatic.com/s/comme/v2/8QIUdirKhMbn-uG1kHz0MgviDe1zZcFr644fWsRO9w.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Comme" + }, + { + "src": "http://fonts.gstatic.com/s/comme/v2/8QIUdirKhMbn-uG1kHz0MgviDe1zu8Fr644fWsRO9w.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Comme" + }, + { + "src": "http://fonts.gstatic.com/s/comme/v2/8QIUdirKhMbn-uG1kHz0MgviDe1z5cFr644fWsRO9w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Comme" + }, + { + "src": "http://fonts.gstatic.com/s/comme/v2/8QIUdirKhMbn-uG1kHz0MgviDe1z18Fr644fWsRO9w.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Comme" + }, + { + "src": "http://fonts.gstatic.com/s/comme/v2/8QIUdirKhMbn-uG1kHz0MgviDe1zO8Zr644fWsRO9w.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Comme" + }, + { + "src": "http://fonts.gstatic.com/s/comme/v2/8QIUdirKhMbn-uG1kHz0MgviDe1zAsZr644fWsRO9w.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Comme" + }, + { + "src": "http://fonts.gstatic.com/s/comme/v2/8QIUdirKhMbn-uG1kHz0MgviDe1zZcZr644fWsRO9w.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Comme" + }, + { + "src": "http://fonts.gstatic.com/s/comme/v2/8QIUdirKhMbn-uG1kHz0MgviDe1zTMZr644fWsRO9w.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Comme" + } + ] + }, + { + "name": "Commissioner", + "fontFamily": "Commissioner, sans-serif", + "slug": "commissioner", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/commissioner/v20/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTMNcGPe7Fu0jUdk.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Commissioner" + }, + { + "src": "http://fonts.gstatic.com/s/commissioner/v20/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTENdGPe7Fu0jUdk.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Commissioner" + }, + { + "src": "http://fonts.gstatic.com/s/commissioner/v20/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTJ1dGPe7Fu0jUdk.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Commissioner" + }, + { + "src": "http://fonts.gstatic.com/s/commissioner/v20/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTMNdGPe7Fu0jUdk.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Commissioner" + }, + { + "src": "http://fonts.gstatic.com/s/commissioner/v20/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTPFdGPe7Fu0jUdk.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Commissioner" + }, + { + "src": "http://fonts.gstatic.com/s/commissioner/v20/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTB1aGPe7Fu0jUdk.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Commissioner" + }, + { + "src": "http://fonts.gstatic.com/s/commissioner/v20/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTCRaGPe7Fu0jUdk.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Commissioner" + }, + { + "src": "http://fonts.gstatic.com/s/commissioner/v20/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTENaGPe7Fu0jUdk.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Commissioner" + }, + { + "src": "http://fonts.gstatic.com/s/commissioner/v20/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTGpaGPe7Fu0jUdk.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Commissioner" + } + ] + }, + { + "name": "Concert One", + "fontFamily": "Concert One, system-ui", + "slug": "concert-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/concertone/v17/VEM1Ro9xs5PjtzCu-srDqRTlhv-CuVAQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Concert One" + } + ] + }, + { + "name": "Condiment", + "fontFamily": "Condiment, cursive", + "slug": "condiment", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/condiment/v20/pONk1hggFNmwvXALyH6Sq4n4o1vyCQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Condiment" + } + ] + }, + { + "name": "Content", + "fontFamily": "Content, system-ui", + "slug": "content", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/content/v24/zrfl0HLayePhU_AwUaDyIiL0RCg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Content" + }, + { + "src": "http://fonts.gstatic.com/s/content/v24/zrfg0HLayePhU_AwaRzdBirfWCHvkAI.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Content" + } + ] + }, + { + "name": "Contrail One", + "fontFamily": "Contrail One, system-ui", + "slug": "contrail-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/contrailone/v15/eLGbP-j_JA-kG0_Zo51noafdZUvt_c092w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Contrail One" + } + ] + }, + { + "name": "Convergence", + "fontFamily": "Convergence, sans-serif", + "slug": "convergence", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/convergence/v15/rax5HiePvdgXPmmMHcIPYRhasU7Q8Cad.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Convergence" + } + ] + }, + { + "name": "Cookie", + "fontFamily": "Cookie, cursive", + "slug": "cookie", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/cookie/v17/syky-y18lb0tSbfNlQCT9tPdpw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Cookie" + } + ] + }, + { + "name": "Copse", + "fontFamily": "Copse, serif", + "slug": "copse", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/copse/v15/11hPGpDKz1rGb0djHkihUb-A.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Copse" + } + ] + }, + { + "name": "Corben", + "fontFamily": "Corben, system-ui", + "slug": "corben", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/corben/v19/LYjDdGzzklQtCMp9oAlEpVs3VQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Corben" + }, + { + "src": "http://fonts.gstatic.com/s/corben/v19/LYjAdGzzklQtCMpFHCZgrXArXN7HWQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Corben" + } + ] + }, + { + "name": "Corinthia", + "fontFamily": "Corinthia, cursive", + "slug": "corinthia", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/corinthia/v9/wEO_EBrAnchaJyPMHE0FUfAL3EsHiA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Corinthia" + }, + { + "src": "http://fonts.gstatic.com/s/corinthia/v9/wEO6EBrAnchaJyPMHE097d8v1GAbgbLXQA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Corinthia" + } + ] + }, + { + "name": "Cormorant", + "fontFamily": "Cormorant, serif", + "slug": "cormorant", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/cormorant/v21/H4c2BXOCl9bbnla_nHIA47NMUjsNbCVrFk9TQ7Rg7A2uwYs.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Cormorant" + }, + { + "src": "http://fonts.gstatic.com/s/cormorant/v21/H4c2BXOCl9bbnla_nHIA47NMUjsNbCVrFhFTQ7Rg7A2uwYs.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Cormorant" + }, + { + "src": "http://fonts.gstatic.com/s/cormorant/v21/H4c2BXOCl9bbnla_nHIA47NMUjsNbCVrFiNTQ7Rg7A2uwYs.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Cormorant" + }, + { + "src": "http://fonts.gstatic.com/s/cormorant/v21/H4c2BXOCl9bbnla_nHIA47NMUjsNbCVrFs9UQ7Rg7A2uwYs.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Cormorant" + }, + { + "src": "http://fonts.gstatic.com/s/cormorant/v21/H4c2BXOCl9bbnla_nHIA47NMUjsNbCVrFvZUQ7Rg7A2uwYs.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Cormorant" + }, + { + "src": "http://fonts.gstatic.com/s/cormorant/v21/H4c0BXOCl9bbnla_nHIq6oGzilJm9otsA9kQ9fdq6C-r0YvxdA.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Cormorant" + }, + { + "src": "http://fonts.gstatic.com/s/cormorant/v21/H4c0BXOCl9bbnla_nHIq6oGzilJm9otsA9kQq_dq6C-r0YvxdA.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Cormorant" + }, + { + "src": "http://fonts.gstatic.com/s/cormorant/v21/H4c0BXOCl9bbnla_nHIq6oGzilJm9otsA9kQmfdq6C-r0YvxdA.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Cormorant" + }, + { + "src": "http://fonts.gstatic.com/s/cormorant/v21/H4c0BXOCl9bbnla_nHIq6oGzilJm9otsA9kQdfBq6C-r0YvxdA.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Cormorant" + }, + { + "src": "http://fonts.gstatic.com/s/cormorant/v21/H4c0BXOCl9bbnla_nHIq6oGzilJm9otsA9kQTPBq6C-r0YvxdA.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Cormorant" + } + ] + }, + { + "name": "Cormorant Garamond", + "fontFamily": "Cormorant Garamond, serif", + "slug": "cormorant-garamond", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/cormorantgaramond/v16/co3YmX5slCNuHLi8bLeY9MK7whWMhyjQAllvuQWJ5heb_w.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Cormorant Garamond" + }, + { + "src": "http://fonts.gstatic.com/s/cormorantgaramond/v16/co3WmX5slCNuHLi8bLeY9MK7whWMhyjYrEPjuw-NxBKL_y94.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Cormorant Garamond" + }, + { + "src": "http://fonts.gstatic.com/s/cormorantgaramond/v16/co3bmX5slCNuHLi8bLeY9MK7whWMhyjornFLsS6V7w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Cormorant Garamond" + }, + { + "src": "http://fonts.gstatic.com/s/cormorantgaramond/v16/co3ZmX5slCNuHLi8bLeY9MK7whWMhyjYrHtPkyuF7w6C.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Cormorant Garamond" + }, + { + "src": "http://fonts.gstatic.com/s/cormorantgaramond/v16/co3YmX5slCNuHLi8bLeY9MK7whWMhyjQWlhvuQWJ5heb_w.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Cormorant Garamond" + }, + { + "src": "http://fonts.gstatic.com/s/cormorantgaramond/v16/co3WmX5slCNuHLi8bLeY9MK7whWMhyjYrEO7ug-NxBKL_y94.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Cormorant Garamond" + }, + { + "src": "http://fonts.gstatic.com/s/cormorantgaramond/v16/co3YmX5slCNuHLi8bLeY9MK7whWMhyjQdl9vuQWJ5heb_w.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Cormorant Garamond" + }, + { + "src": "http://fonts.gstatic.com/s/cormorantgaramond/v16/co3WmX5slCNuHLi8bLeY9MK7whWMhyjYrEOXvQ-NxBKL_y94.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Cormorant Garamond" + }, + { + "src": "http://fonts.gstatic.com/s/cormorantgaramond/v16/co3YmX5slCNuHLi8bLeY9MK7whWMhyjQEl5vuQWJ5heb_w.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Cormorant Garamond" + }, + { + "src": "http://fonts.gstatic.com/s/cormorantgaramond/v16/co3WmX5slCNuHLi8bLeY9MK7whWMhyjYrEPzvA-NxBKL_y94.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Cormorant Garamond" + } + ] + }, + { + "name": "Cormorant Infant", + "fontFamily": "Cormorant Infant, serif", + "slug": "cormorant-infant", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/cormorantinfant/v17/HhyIU44g9vKiM1sORYSiWeAsLN9951w3_DMrQqcdJrk.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Cormorant Infant" + }, + { + "src": "http://fonts.gstatic.com/s/cormorantinfant/v17/HhyKU44g9vKiM1sORYSiWeAsLN997_ItcDEhRoUYNrn_Ig.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Cormorant Infant" + }, + { + "src": "http://fonts.gstatic.com/s/cormorantinfant/v17/HhyPU44g9vKiM1sORYSiWeAsLN993_Af2DsAXq4.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Cormorant Infant" + }, + { + "src": "http://fonts.gstatic.com/s/cormorantinfant/v17/HhyJU44g9vKiM1sORYSiWeAsLN997_IV3BkFTq4EPw.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Cormorant Infant" + }, + { + "src": "http://fonts.gstatic.com/s/cormorantinfant/v17/HhyIU44g9vKiM1sORYSiWeAsLN995wQ2_DMrQqcdJrk.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Cormorant Infant" + }, + { + "src": "http://fonts.gstatic.com/s/cormorantinfant/v17/HhyKU44g9vKiM1sORYSiWeAsLN997_ItKDAhRoUYNrn_Ig.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Cormorant Infant" + }, + { + "src": "http://fonts.gstatic.com/s/cormorantinfant/v17/HhyIU44g9vKiM1sORYSiWeAsLN995ygx_DMrQqcdJrk.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Cormorant Infant" + }, + { + "src": "http://fonts.gstatic.com/s/cormorantinfant/v17/HhyKU44g9vKiM1sORYSiWeAsLN997_ItBDchRoUYNrn_Ig.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Cormorant Infant" + }, + { + "src": "http://fonts.gstatic.com/s/cormorantinfant/v17/HhyIU44g9vKiM1sORYSiWeAsLN9950ww_DMrQqcdJrk.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Cormorant Infant" + }, + { + "src": "http://fonts.gstatic.com/s/cormorantinfant/v17/HhyKU44g9vKiM1sORYSiWeAsLN997_ItYDYhRoUYNrn_Ig.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Cormorant Infant" + } + ] + }, + { + "name": "Cormorant SC", + "fontFamily": "Cormorant SC, serif", + "slug": "cormorant-sc", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/cormorantsc/v18/0ybmGD4kxqXBmOVLG30OGwsmABIU_R3y8DOWGA.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Cormorant SC" + }, + { + "src": "http://fonts.gstatic.com/s/cormorantsc/v18/0yb5GD4kxqXBmOVLG30OGwserDow9Tbu-Q.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Cormorant SC" + }, + { + "src": "http://fonts.gstatic.com/s/cormorantsc/v18/0ybmGD4kxqXBmOVLG30OGwsmWBMU_R3y8DOWGA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Cormorant SC" + }, + { + "src": "http://fonts.gstatic.com/s/cormorantsc/v18/0ybmGD4kxqXBmOVLG30OGwsmdBQU_R3y8DOWGA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Cormorant SC" + }, + { + "src": "http://fonts.gstatic.com/s/cormorantsc/v18/0ybmGD4kxqXBmOVLG30OGwsmEBUU_R3y8DOWGA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Cormorant SC" + } + ] + }, + { + "name": "Cormorant Unicase", + "fontFamily": "Cormorant Unicase, serif", + "slug": "cormorant-unicase", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/cormorantunicase/v24/HI_ViZUaILtOqhqgDeXoF_n1_fTGX9N_tucv7Gy0DRzS.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Cormorant Unicase" + }, + { + "src": "http://fonts.gstatic.com/s/cormorantunicase/v24/HI_QiZUaILtOqhqgDeXoF_n1_fTGX-vTnsMnx3C9.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Cormorant Unicase" + }, + { + "src": "http://fonts.gstatic.com/s/cormorantunicase/v24/HI_ViZUaILtOqhqgDeXoF_n1_fTGX9Mnt-cv7Gy0DRzS.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Cormorant Unicase" + }, + { + "src": "http://fonts.gstatic.com/s/cormorantunicase/v24/HI_ViZUaILtOqhqgDeXoF_n1_fTGX9MLsOcv7Gy0DRzS.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Cormorant Unicase" + }, + { + "src": "http://fonts.gstatic.com/s/cormorantunicase/v24/HI_ViZUaILtOqhqgDeXoF_n1_fTGX9Nvsecv7Gy0DRzS.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Cormorant Unicase" + } + ] + }, + { + "name": "Cormorant Upright", + "fontFamily": "Cormorant Upright, serif", + "slug": "cormorant-upright", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/cormorantupright/v18/VuJudM3I2Y35poFONtLdafkUCHw1y1N5phDsU9X6RPzQ.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Cormorant Upright" + }, + { + "src": "http://fonts.gstatic.com/s/cormorantupright/v18/VuJrdM3I2Y35poFONtLdafkUCHw1y2vVjjTkeMnz.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Cormorant Upright" + }, + { + "src": "http://fonts.gstatic.com/s/cormorantupright/v18/VuJudM3I2Y35poFONtLdafkUCHw1y1MhpxDsU9X6RPzQ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Cormorant Upright" + }, + { + "src": "http://fonts.gstatic.com/s/cormorantupright/v18/VuJudM3I2Y35poFONtLdafkUCHw1y1MNoBDsU9X6RPzQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Cormorant Upright" + }, + { + "src": "http://fonts.gstatic.com/s/cormorantupright/v18/VuJudM3I2Y35poFONtLdafkUCHw1y1NpoRDsU9X6RPzQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Cormorant Upright" + } + ] + }, + { + "name": "Courgette", + "fontFamily": "Courgette, cursive", + "slug": "courgette", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/courgette/v13/wEO_EBrAnc9BLjLQAUkFUfAL3EsHiA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Courgette" + } + ] + }, + { + "name": "Courier Prime", + "fontFamily": "Courier Prime, monospace", + "slug": "courier-prime", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/courierprime/v7/u-450q2lgwslOqpF_6gQ8kELWwZjW-_-tvg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Courier Prime" + }, + { + "src": "http://fonts.gstatic.com/s/courierprime/v7/u-4n0q2lgwslOqpF_6gQ8kELawRpX837pvjxPA.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Courier Prime" + }, + { + "src": "http://fonts.gstatic.com/s/courierprime/v7/u-4k0q2lgwslOqpF_6gQ8kELY7pMf-fVqvHoJXw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Courier Prime" + }, + { + "src": "http://fonts.gstatic.com/s/courierprime/v7/u-4i0q2lgwslOqpF_6gQ8kELawRR4-LfrtPtNXyeAg.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Courier Prime" + } + ] + }, + { + "name": "Cousine", + "fontFamily": "Cousine, monospace", + "slug": "cousine", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/cousine/v25/d6lIkaiiRdih4SpPzSMlzTbtz9k.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Cousine" + }, + { + "src": "http://fonts.gstatic.com/s/cousine/v25/d6lKkaiiRdih4SpP_SEvyRTo39l8hw.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Cousine" + }, + { + "src": "http://fonts.gstatic.com/s/cousine/v25/d6lNkaiiRdih4SpP9Z8K6T7G09BlnmQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Cousine" + }, + { + "src": "http://fonts.gstatic.com/s/cousine/v25/d6lPkaiiRdih4SpP_SEXdTvM1_JgjmRpOA.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Cousine" + } + ] + }, + { + "name": "Coustard", + "fontFamily": "Coustard, serif", + "slug": "coustard", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/coustard/v16/3XFpErgg3YsZ5fqUU9UPvWXuROTd.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Coustard" + }, + { + "src": "http://fonts.gstatic.com/s/coustard/v16/3XFuErgg3YsZ5fqUU-2LkEHmb_jU3eRL.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Coustard" + } + ] + }, + { + "name": "Covered By Your Grace", + "fontFamily": "Covered By Your Grace, cursive", + "slug": "covered-by-your-grace", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/coveredbyyourgrace/v15/QGYwz-AZahWOJJI9kykWW9mD6opopoqXSOS0FgItq6bFIg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Covered By Your Grace" + } + ] + }, + { + "name": "Crafty Girls", + "fontFamily": "Crafty Girls, cursive", + "slug": "crafty-girls", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/craftygirls/v16/va9B4kXI39VaDdlPJo8N_NvuQR37fF3Wlg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Crafty Girls" + } + ] + }, + { + "name": "Creepster", + "fontFamily": "Creepster, system-ui", + "slug": "creepster", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/creepster/v13/AlZy_zVUqJz4yMrniH4hdXf4XB0Tow.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Creepster" + } + ] + }, + { + "name": "Crete Round", + "fontFamily": "Crete Round, serif", + "slug": "crete-round", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/creteround/v14/55xoey1sJNPjPiv1ZZZrxJ1827zAKnxN.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Crete Round" + }, + { + "src": "http://fonts.gstatic.com/s/creteround/v14/55xqey1sJNPjPiv1ZZZrxK1-0bjiL2xNhKc.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Crete Round" + } + ] + }, + { + "name": "Crimson Pro", + "fontFamily": "Crimson Pro, serif", + "slug": "crimson-pro", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/crimsonpro/v23/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZTm18OJE_VNWoyQ.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Crimson Pro" + }, + { + "src": "http://fonts.gstatic.com/s/crimsonpro/v23/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZkG18OJE_VNWoyQ.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Crimson Pro" + }, + { + "src": "http://fonts.gstatic.com/s/crimsonpro/v23/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZzm18OJE_VNWoyQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Crimson Pro" + }, + { + "src": "http://fonts.gstatic.com/s/crimsonpro/v23/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZ_G18OJE_VNWoyQ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Crimson Pro" + }, + { + "src": "http://fonts.gstatic.com/s/crimsonpro/v23/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZEGp8OJE_VNWoyQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Crimson Pro" + }, + { + "src": "http://fonts.gstatic.com/s/crimsonpro/v23/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZKWp8OJE_VNWoyQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Crimson Pro" + }, + { + "src": "http://fonts.gstatic.com/s/crimsonpro/v23/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZTmp8OJE_VNWoyQ.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Crimson Pro" + }, + { + "src": "http://fonts.gstatic.com/s/crimsonpro/v23/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZZ2p8OJE_VNWoyQ.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Crimson Pro" + }, + { + "src": "http://fonts.gstatic.com/s/crimsonpro/v23/q5uSsoa5M_tv7IihmnkabAReu49Y_Bo-HVKMBi4Ue5s7dtC4yZNE.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Crimson Pro" + }, + { + "src": "http://fonts.gstatic.com/s/crimsonpro/v23/q5uSsoa5M_tv7IihmnkabAReu49Y_Bo-HVKMBi7Ke5s7dtC4yZNE.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Crimson Pro" + }, + { + "src": "http://fonts.gstatic.com/s/crimsonpro/v23/q5uSsoa5M_tv7IihmnkabAReu49Y_Bo-HVKMBi6Ue5s7dtC4yZNE.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Crimson Pro" + }, + { + "src": "http://fonts.gstatic.com/s/crimsonpro/v23/q5uSsoa5M_tv7IihmnkabAReu49Y_Bo-HVKMBi6me5s7dtC4yZNE.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Crimson Pro" + }, + { + "src": "http://fonts.gstatic.com/s/crimsonpro/v23/q5uSsoa5M_tv7IihmnkabAReu49Y_Bo-HVKMBi5KfJs7dtC4yZNE.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Crimson Pro" + }, + { + "src": "http://fonts.gstatic.com/s/crimsonpro/v23/q5uSsoa5M_tv7IihmnkabAReu49Y_Bo-HVKMBi5zfJs7dtC4yZNE.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Crimson Pro" + }, + { + "src": "http://fonts.gstatic.com/s/crimsonpro/v23/q5uSsoa5M_tv7IihmnkabAReu49Y_Bo-HVKMBi4UfJs7dtC4yZNE.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Crimson Pro" + }, + { + "src": "http://fonts.gstatic.com/s/crimsonpro/v23/q5uSsoa5M_tv7IihmnkabAReu49Y_Bo-HVKMBi49fJs7dtC4yZNE.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Crimson Pro" + } + ] + }, + { + "name": "Crimson Text", + "fontFamily": "Crimson Text, serif", + "slug": "crimson-text", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/crimsontext/v19/wlp2gwHKFkZgtmSR3NB0oRJvaAJSA_JN3Q.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Crimson Text" + }, + { + "src": "http://fonts.gstatic.com/s/crimsontext/v19/wlpogwHKFkZgtmSR3NB0oRJfaghWIfdd3ahG.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Crimson Text" + }, + { + "src": "http://fonts.gstatic.com/s/crimsontext/v19/wlppgwHKFkZgtmSR3NB0oRJXsCx2C9lR1LFffg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Crimson Text" + }, + { + "src": "http://fonts.gstatic.com/s/crimsontext/v19/wlprgwHKFkZgtmSR3NB0oRJfajCOD9NV9rRPfrKu.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Crimson Text" + }, + { + "src": "http://fonts.gstatic.com/s/crimsontext/v19/wlppgwHKFkZgtmSR3NB0oRJX1C12C9lR1LFffg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Crimson Text" + }, + { + "src": "http://fonts.gstatic.com/s/crimsontext/v19/wlprgwHKFkZgtmSR3NB0oRJfajDqDtNV9rRPfrKu.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Crimson Text" + } + ] + }, + { + "name": "Croissant One", + "fontFamily": "Croissant One, system-ui", + "slug": "croissant-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/croissantone/v21/3y9n6bU9bTPg4m8NDy3Kq24UM3pqn5cdJ-4.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Croissant One" + } + ] + }, + { + "name": "Crushed", + "fontFamily": "Crushed, system-ui", + "slug": "crushed", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/crushed/v25/U9Mc6dym6WXImTlFT1kfuIqyLzA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Crushed" + } + ] + }, + { + "name": "Cuprum", + "fontFamily": "Cuprum, sans-serif", + "slug": "cuprum", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/cuprum/v25/dg45_pLmvrkcOkBnKsOzXyGWTBcmg-X6ZjzSJjQjgnU.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Cuprum" + }, + { + "src": "http://fonts.gstatic.com/s/cuprum/v25/dg45_pLmvrkcOkBnKsOzXyGWTBcmg9f6ZjzSJjQjgnU.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Cuprum" + }, + { + "src": "http://fonts.gstatic.com/s/cuprum/v25/dg45_pLmvrkcOkBnKsOzXyGWTBcmgzv9ZjzSJjQjgnU.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Cuprum" + }, + { + "src": "http://fonts.gstatic.com/s/cuprum/v25/dg45_pLmvrkcOkBnKsOzXyGWTBcmgwL9ZjzSJjQjgnU.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Cuprum" + }, + { + "src": "http://fonts.gstatic.com/s/cuprum/v25/dg47_pLmvrkcOkBNI_FMh0j91rkhli25jn_YIhYmknUPEA.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Cuprum" + }, + { + "src": "http://fonts.gstatic.com/s/cuprum/v25/dg47_pLmvrkcOkBNI_FMh0j91rkhli25vH_YIhYmknUPEA.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Cuprum" + }, + { + "src": "http://fonts.gstatic.com/s/cuprum/v25/dg47_pLmvrkcOkBNI_FMh0j91rkhli25UHjYIhYmknUPEA.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Cuprum" + }, + { + "src": "http://fonts.gstatic.com/s/cuprum/v25/dg47_pLmvrkcOkBNI_FMh0j91rkhli25aXjYIhYmknUPEA.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Cuprum" + } + ] + }, + { + "name": "Cute Font", + "fontFamily": "Cute Font, system-ui", + "slug": "cute-font", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/cutefont/v20/Noaw6Uny2oWPbSHMrY6vmJNVNC9hkw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Cute Font" + } + ] + }, + { + "name": "Cutive", + "fontFamily": "Cutive, serif", + "slug": "cutive", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/cutive/v17/NaPZcZ_fHOhV3Ip7T_hDoyqlZQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Cutive" + } + ] + }, + { + "name": "Cutive Mono", + "fontFamily": "Cutive Mono, monospace", + "slug": "cutive-mono", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/cutivemono/v15/m8JWjfRfY7WVjVi2E-K9H5RFRG-K3Mud.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Cutive Mono" + } + ] + }, + { + "name": "DM Mono", + "fontFamily": "DM Mono, monospace", + "slug": "dm-mono", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/dmmono/v11/aFTR7PB1QTsUX8KYvrGyIYSnbKX9Rlk.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "DM Mono" + }, + { + "src": "http://fonts.gstatic.com/s/dmmono/v11/aFTT7PB1QTsUX8KYth-orYataIf4VllXuA.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "DM Mono" + }, + { + "src": "http://fonts.gstatic.com/s/dmmono/v11/aFTU7PB1QTsUX8KYhh2aBYyMcKw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "DM Mono" + }, + { + "src": "http://fonts.gstatic.com/s/dmmono/v11/aFTW7PB1QTsUX8KYth-QAa6JYKzkXw.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "DM Mono" + }, + { + "src": "http://fonts.gstatic.com/s/dmmono/v11/aFTR7PB1QTsUX8KYvumzIYSnbKX9Rlk.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "DM Mono" + }, + { + "src": "http://fonts.gstatic.com/s/dmmono/v11/aFTT7PB1QTsUX8KYth-o9YetaIf4VllXuA.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "DM Mono" + } + ] + }, + { + "name": "DM Sans", + "fontFamily": "DM Sans, sans-serif", + "slug": "dm-sans", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/dmsans/v11/rP2Hp2ywxg089UriOZSCHBeHFl0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "DM Sans" + }, + { + "src": "http://fonts.gstatic.com/s/dmsans/v11/rP2Fp2ywxg089UriCZaIGDWCBl0O8Q.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "DM Sans" + }, + { + "src": "http://fonts.gstatic.com/s/dmsans/v11/rP2Cp2ywxg089UriAWCrOB-sClQX6Cg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "DM Sans" + }, + { + "src": "http://fonts.gstatic.com/s/dmsans/v11/rP2Ap2ywxg089UriCZaw7BymDnYS-Cjk6Q.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "DM Sans" + }, + { + "src": "http://fonts.gstatic.com/s/dmsans/v11/rP2Cp2ywxg089UriASitOB-sClQX6Cg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "DM Sans" + }, + { + "src": "http://fonts.gstatic.com/s/dmsans/v11/rP2Ap2ywxg089UriCZawpBqmDnYS-Cjk6Q.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "DM Sans" + } + ] + }, + { + "name": "DM Serif Display", + "fontFamily": "DM Serif Display, serif", + "slug": "dm-serif-display", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/dmserifdisplay/v12/-nFnOHM81r4j6k0gjAW3mujVU2B2K_d709jy92k.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "DM Serif Display" + }, + { + "src": "http://fonts.gstatic.com/s/dmserifdisplay/v12/-nFhOHM81r4j6k0gjAW3mujVU2B2G_Vx1_r352np3Q.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "DM Serif Display" + } + ] + }, + { + "name": "DM Serif Text", + "fontFamily": "DM Serif Text, serif", + "slug": "dm-serif-text", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/dmseriftext/v12/rnCu-xZa_krGokauCeNq1wWyafOPXHIJErY.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "DM Serif Text" + }, + { + "src": "http://fonts.gstatic.com/s/dmseriftext/v12/rnCw-xZa_krGokauCeNq1wWyWfGFWFAMArZKqQ.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "DM Serif Text" + } + ] + }, + { + "name": "Damion", + "fontFamily": "Damion, cursive", + "slug": "damion", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/damion/v14/hv-XlzJ3KEUe_YZUbWY3MTFgVg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Damion" + } + ] + }, + { + "name": "Dancing Script", + "fontFamily": "Dancing Script, cursive", + "slug": "dancing-script", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/dancingscript/v24/If2cXTr6YS-zF4S-kcSWSVi_sxjsohD9F50Ruu7BMSoHTeB9ptDqpw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Dancing Script" + }, + { + "src": "http://fonts.gstatic.com/s/dancingscript/v24/If2cXTr6YS-zF4S-kcSWSVi_sxjsohD9F50Ruu7BAyoHTeB9ptDqpw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Dancing Script" + }, + { + "src": "http://fonts.gstatic.com/s/dancingscript/v24/If2cXTr6YS-zF4S-kcSWSVi_sxjsohD9F50Ruu7B7y0HTeB9ptDqpw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Dancing Script" + }, + { + "src": "http://fonts.gstatic.com/s/dancingscript/v24/If2cXTr6YS-zF4S-kcSWSVi_sxjsohD9F50Ruu7B1i0HTeB9ptDqpw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Dancing Script" + } + ] + }, + { + "name": "Dangrek", + "fontFamily": "Dangrek, system-ui", + "slug": "dangrek", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/dangrek/v26/LYjCdG30nEgoH8E2gCNqqVIuTN4.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Dangrek" + } + ] + }, + { + "name": "Darker Grotesque", + "fontFamily": "Darker Grotesque, sans-serif", + "slug": "darker-grotesque", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/darkergrotesque/v8/U9MK6cuh-mLQlC4BKCtayOfARkSVgb381b-W8-QDqXxpqn7y-XFyZFUB.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Darker Grotesque" + }, + { + "src": "http://fonts.gstatic.com/s/darkergrotesque/v8/U9MK6cuh-mLQlC4BKCtayOfARkSVgb381b-W8-QDqXw3qn7y-XFyZFUB.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Darker Grotesque" + }, + { + "src": "http://fonts.gstatic.com/s/darkergrotesque/v8/U9MK6cuh-mLQlC4BKCtayOfARkSVgb381b-W8-QDqXwFqn7y-XFyZFUB.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Darker Grotesque" + }, + { + "src": "http://fonts.gstatic.com/s/darkergrotesque/v8/U9MK6cuh-mLQlC4BKCtayOfARkSVgb381b-W8-QDqXzprX7y-XFyZFUB.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Darker Grotesque" + }, + { + "src": "http://fonts.gstatic.com/s/darkergrotesque/v8/U9MK6cuh-mLQlC4BKCtayOfARkSVgb381b-W8-QDqXzQrX7y-XFyZFUB.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Darker Grotesque" + }, + { + "src": "http://fonts.gstatic.com/s/darkergrotesque/v8/U9MK6cuh-mLQlC4BKCtayOfARkSVgb381b-W8-QDqXy3rX7y-XFyZFUB.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Darker Grotesque" + }, + { + "src": "http://fonts.gstatic.com/s/darkergrotesque/v8/U9MK6cuh-mLQlC4BKCtayOfARkSVgb381b-W8-QDqXyerX7y-XFyZFUB.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Darker Grotesque" + } + ] + }, + { + "name": "Darumadrop One", + "fontFamily": "Darumadrop One, system-ui", + "slug": "darumadrop-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/darumadropone/v7/cY9cfjeIW11dpCKgRLi675a87IhHBJOxZQPp.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Darumadrop One" + } + ] + }, + { + "name": "David Libre", + "fontFamily": "David Libre, serif", + "slug": "david-libre", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/davidlibre/v14/snfus0W_99N64iuYSvp4W_l86p6TYS-Y.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "David Libre" + }, + { + "src": "http://fonts.gstatic.com/s/davidlibre/v14/snfzs0W_99N64iuYSvp4W8GIw7qbSjORSo9W.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "David Libre" + }, + { + "src": "http://fonts.gstatic.com/s/davidlibre/v14/snfzs0W_99N64iuYSvp4W8HAxbqbSjORSo9W.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "David Libre" + } + ] + }, + { + "name": "Dawning of a New Day", + "fontFamily": "Dawning of a New Day, cursive", + "slug": "dawning-of-a-new-day", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/dawningofanewday/v16/t5t_IQMbOp2SEwuncwLRjMfIg1yYit_nAz8bhWJGNoBE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Dawning of a New Day" + } + ] + }, + { + "name": "Days One", + "fontFamily": "Days One, sans-serif", + "slug": "days-one", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/daysone/v14/mem9YaCnxnKRiYZOCLYVeLkWVNBt.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Days One" + } + ] + }, + { + "name": "Dekko", + "fontFamily": "Dekko, cursive", + "slug": "dekko", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/dekko/v19/46khlb_wWjfSrttFR0vsfl1B.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Dekko" + } + ] + }, + { + "name": "Dela Gothic One", + "fontFamily": "Dela Gothic One, system-ui", + "slug": "dela-gothic-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/delagothicone/v10/~ChEKD0RlbGEgR290aGljIE9uZSAAKgQIARgB.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Dela Gothic One" + } + ] + }, + { + "name": "Delicious Handrawn", + "fontFamily": "Delicious Handrawn, cursive", + "slug": "delicious-handrawn", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/delicioushandrawn/v4/wlpsgx_NAUNkpmKQifcxkQchDFo3fJ113JpDd6u3AQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Delicious Handrawn" + } + ] + }, + { + "name": "Delius", + "fontFamily": "Delius, cursive", + "slug": "delius", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/delius/v15/PN_xRfK0pW_9e1rtYcI-jT3L_w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Delius" + } + ] + }, + { + "name": "Delius Swash Caps", + "fontFamily": "Delius Swash Caps, cursive", + "slug": "delius-swash-caps", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/deliusswashcaps/v19/oY1E8fPLr7v4JWCExZpWebxVKORpXXedKmeBvEYs.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Delius Swash Caps" + } + ] + }, + { + "name": "Delius Unicase", + "fontFamily": "Delius Unicase, cursive", + "slug": "delius-unicase", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/deliusunicase/v26/845BNMEwEIOVT8BmgfSzIr_6mmLHd-73LXWs.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Delius Unicase" + }, + { + "src": "http://fonts.gstatic.com/s/deliusunicase/v26/845CNMEwEIOVT8BmgfSzIr_6mlp7WMr_BmmlS5aw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Delius Unicase" + } + ] + }, + { + "name": "Della Respira", + "fontFamily": "Della Respira, serif", + "slug": "della-respira", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/dellarespira/v18/RLp5K5v44KaueWI6iEJQBiGPRfkSu6EuTHo.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Della Respira" + } + ] + }, + { + "name": "Denk One", + "fontFamily": "Denk One, sans-serif", + "slug": "denk-one", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/denkone/v17/dg4m_pzhrqcFb2IzROtHpbglShon.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Denk One" + } + ] + }, + { + "name": "Devonshire", + "fontFamily": "Devonshire, cursive", + "slug": "devonshire", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/devonshire/v22/46kqlbDwWirWr4gtBD2BX0Vq01lYAZM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Devonshire" + } + ] + }, + { + "name": "Dhurjati", + "fontFamily": "Dhurjati, sans-serif", + "slug": "dhurjati", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/dhurjati/v20/_6_8ED3gSeatXfFiFX3ySKQtuTA2.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Dhurjati" + } + ] + }, + { + "name": "Didact Gothic", + "fontFamily": "Didact Gothic, sans-serif", + "slug": "didact-gothic", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/didactgothic/v20/ahcfv8qz1zt6hCC5G4F_P4ASpUySp0LlcyQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Didact Gothic" + } + ] + }, + { + "name": "Diplomata", + "fontFamily": "Diplomata, system-ui", + "slug": "diplomata", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/diplomata/v27/Cn-0JtiMXwhNwp-wKxyfYGxYrdM9Sg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Diplomata" + } + ] + }, + { + "name": "Diplomata SC", + "fontFamily": "Diplomata SC, system-ui", + "slug": "diplomata-sc", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/diplomatasc/v23/buExpoi3ecvs3kidKgBJo2kf-P5Oaiw4cw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Diplomata SC" + } + ] + }, + { + "name": "Do Hyeon", + "fontFamily": "Do Hyeon, sans-serif", + "slug": "do-hyeon", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/dohyeon/v16/TwMN-I8CRRU2zM86HFE3ZwaH__-C.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Do Hyeon" + } + ] + }, + { + "name": "Dokdo", + "fontFamily": "Dokdo, cursive", + "slug": "dokdo", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/dokdo/v15/esDf315XNuCBLxLo4NaMlKcH.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Dokdo" + } + ] + }, + { + "name": "Domine", + "fontFamily": "Domine, serif", + "slug": "domine", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/domine/v19/L0xhDFMnlVwD4h3Lt9JWnbX3jG-2X3LAI10VErGuW8Q.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Domine" + }, + { + "src": "http://fonts.gstatic.com/s/domine/v19/L0xhDFMnlVwD4h3Lt9JWnbX3jG-2X0DAI10VErGuW8Q.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Domine" + }, + { + "src": "http://fonts.gstatic.com/s/domine/v19/L0xhDFMnlVwD4h3Lt9JWnbX3jG-2X6zHI10VErGuW8Q.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Domine" + }, + { + "src": "http://fonts.gstatic.com/s/domine/v19/L0xhDFMnlVwD4h3Lt9JWnbX3jG-2X5XHI10VErGuW8Q.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Domine" + } + ] + }, + { + "name": "Donegal One", + "fontFamily": "Donegal One, serif", + "slug": "donegal-one", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/donegalone/v21/m8JWjfRYea-ZnFz6fsK9FZRFRG-K3Mud.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Donegal One" + } + ] + }, + { + "name": "Dongle", + "fontFamily": "Dongle, sans-serif", + "slug": "dongle", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/dongle/v9/sJoG3Ltdjt6VPkqeEcxrYjWNzXvVPA.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Dongle" + }, + { + "src": "http://fonts.gstatic.com/s/dongle/v9/sJoF3Ltdjt6VPkqmveRPah6RxA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Dongle" + }, + { + "src": "http://fonts.gstatic.com/s/dongle/v9/sJoG3Ltdjt6VPkqeActrYjWNzXvVPA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Dongle" + } + ] + }, + { + "name": "Doppio One", + "fontFamily": "Doppio One, sans-serif", + "slug": "doppio-one", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/doppioone/v13/Gg8wN5gSaBfyBw2MqCh-lgshKGpe5Fg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Doppio One" + } + ] + }, + { + "name": "Dorsa", + "fontFamily": "Dorsa, sans-serif", + "slug": "dorsa", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/dorsa/v23/yYLn0hjd0OGwqo493XCFxAnQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Dorsa" + } + ] + }, + { + "name": "Dosis", + "fontFamily": "Dosis, sans-serif", + "slug": "dosis", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/dosis/v27/HhyJU5sn9vOmLxNkIwRSjTVNWLEJt7MV3BkFTq4EPw.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Dosis" + }, + { + "src": "http://fonts.gstatic.com/s/dosis/v27/HhyJU5sn9vOmLxNkIwRSjTVNWLEJabMV3BkFTq4EPw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Dosis" + }, + { + "src": "http://fonts.gstatic.com/s/dosis/v27/HhyJU5sn9vOmLxNkIwRSjTVNWLEJN7MV3BkFTq4EPw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Dosis" + }, + { + "src": "http://fonts.gstatic.com/s/dosis/v27/HhyJU5sn9vOmLxNkIwRSjTVNWLEJBbMV3BkFTq4EPw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Dosis" + }, + { + "src": "http://fonts.gstatic.com/s/dosis/v27/HhyJU5sn9vOmLxNkIwRSjTVNWLEJ6bQV3BkFTq4EPw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Dosis" + }, + { + "src": "http://fonts.gstatic.com/s/dosis/v27/HhyJU5sn9vOmLxNkIwRSjTVNWLEJ0LQV3BkFTq4EPw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Dosis" + }, + { + "src": "http://fonts.gstatic.com/s/dosis/v27/HhyJU5sn9vOmLxNkIwRSjTVNWLEJt7QV3BkFTq4EPw.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Dosis" + } + ] + }, + { + "name": "DotGothic16", + "fontFamily": "DotGothic16, sans-serif", + "slug": "dotgothic16", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/dotgothic16/v15/v6-QGYjBJFKgyw5nSoDAGE7L435YPFrT.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "DotGothic16" + } + ] + }, + { + "name": "Dr Sugiyama", + "fontFamily": "Dr Sugiyama, cursive", + "slug": "dr-sugiyama", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/drsugiyama/v23/HTxoL2k4N3O9n5I1boGI7abRM4-t-g7y.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Dr Sugiyama" + } + ] + }, + { + "name": "Duru Sans", + "fontFamily": "Duru Sans, sans-serif", + "slug": "duru-sans", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/durusans/v20/xn7iYH8xwmSyTvEV_HOxT_fYdN-WZw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Duru Sans" + } + ] + }, + { + "name": "DynaPuff", + "fontFamily": "DynaPuff, system-ui", + "slug": "dynapuff", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/dynapuff/v4/z7N5dRvsZDIVHbYPMhZJ3HQ83UaSu4uhr7-ZFeoYkgAr1x8RSxYu6YjrSRs4wn8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "DynaPuff" + }, + { + "src": "http://fonts.gstatic.com/s/dynapuff/v4/z7N5dRvsZDIVHbYPMhZJ3HQ83UaSu4uhr7-ZFeoYkgAr1x8RSyQu6YjrSRs4wn8.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "DynaPuff" + }, + { + "src": "http://fonts.gstatic.com/s/dynapuff/v4/z7N5dRvsZDIVHbYPMhZJ3HQ83UaSu4uhr7-ZFeoYkgAr1x8RS8gp6YjrSRs4wn8.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "DynaPuff" + }, + { + "src": "http://fonts.gstatic.com/s/dynapuff/v4/z7N5dRvsZDIVHbYPMhZJ3HQ83UaSu4uhr7-ZFeoYkgAr1x8RS_Ep6YjrSRs4wn8.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "DynaPuff" + } + ] + }, + { + "name": "Dynalight", + "fontFamily": "Dynalight, system-ui", + "slug": "dynalight", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/dynalight/v18/1Ptsg8LOU_aOmQvTsF4ISotrDfGGxA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Dynalight" + } + ] + }, + { + "name": "EB Garamond", + "fontFamily": "EB Garamond, serif", + "slug": "eb-garamond", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ebgaramond/v26/SlGDmQSNjdsmc35JDF1K5E55YMjF_7DPuGi-6_RUA4V-e6yHgQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "EB Garamond" + }, + { + "src": "http://fonts.gstatic.com/s/ebgaramond/v26/SlGDmQSNjdsmc35JDF1K5E55YMjF_7DPuGi-2fRUA4V-e6yHgQ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "EB Garamond" + }, + { + "src": "http://fonts.gstatic.com/s/ebgaramond/v26/SlGDmQSNjdsmc35JDF1K5E55YMjF_7DPuGi-NfNUA4V-e6yHgQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "EB Garamond" + }, + { + "src": "http://fonts.gstatic.com/s/ebgaramond/v26/SlGDmQSNjdsmc35JDF1K5E55YMjF_7DPuGi-DPNUA4V-e6yHgQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "EB Garamond" + }, + { + "src": "http://fonts.gstatic.com/s/ebgaramond/v26/SlGDmQSNjdsmc35JDF1K5E55YMjF_7DPuGi-a_NUA4V-e6yHgQ.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "EB Garamond" + }, + { + "src": "http://fonts.gstatic.com/s/ebgaramond/v26/SlGFmQSNjdsmc35JDF1K5GRwUjcdlttVFm-rI7e8QI96WamXgXFI.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "EB Garamond" + }, + { + "src": "http://fonts.gstatic.com/s/ebgaramond/v26/SlGFmQSNjdsmc35JDF1K5GRwUjcdlttVFm-rI7eOQI96WamXgXFI.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "EB Garamond" + }, + { + "src": "http://fonts.gstatic.com/s/ebgaramond/v26/SlGFmQSNjdsmc35JDF1K5GRwUjcdlttVFm-rI7diR496WamXgXFI.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "EB Garamond" + }, + { + "src": "http://fonts.gstatic.com/s/ebgaramond/v26/SlGFmQSNjdsmc35JDF1K5GRwUjcdlttVFm-rI7dbR496WamXgXFI.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "EB Garamond" + }, + { + "src": "http://fonts.gstatic.com/s/ebgaramond/v26/SlGFmQSNjdsmc35JDF1K5GRwUjcdlttVFm-rI7c8R496WamXgXFI.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "EB Garamond" + } + ] + }, + { + "name": "Eagle Lake", + "fontFamily": "Eagle Lake, cursive", + "slug": "eagle-lake", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/eaglelake/v20/ptRMTiqbbuNJDOiKj9wG5O7yKQNute8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Eagle Lake" + } + ] + }, + { + "name": "East Sea Dokdo", + "fontFamily": "East Sea Dokdo, cursive", + "slug": "east-sea-dokdo", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/eastseadokdo/v20/xfuo0Wn2V2_KanASqXSZp22m05_aGavYS18y.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "East Sea Dokdo" + } + ] + }, + { + "name": "Eater", + "fontFamily": "Eater, system-ui", + "slug": "eater", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/eater/v21/mtG04_FCK7bOvpu2u3FwsXsR.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Eater" + } + ] + }, + { + "name": "Economica", + "fontFamily": "Economica, sans-serif", + "slug": "economica", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/economica/v13/Qw3fZQZaHCLgIWa29ZBrMcgAAl1lfQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Economica" + }, + { + "src": "http://fonts.gstatic.com/s/economica/v13/Qw3ZZQZaHCLgIWa29ZBbM8IEIFh1fWUl.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Economica" + }, + { + "src": "http://fonts.gstatic.com/s/economica/v13/Qw3aZQZaHCLgIWa29ZBTjeckCnZ5dHw8iw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Economica" + }, + { + "src": "http://fonts.gstatic.com/s/economica/v13/Qw3EZQZaHCLgIWa29ZBbM_q4D3x9Vnksi4M7.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Economica" + } + ] + }, + { + "name": "Eczar", + "fontFamily": "Eczar, serif", + "slug": "eczar", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/eczar/v22/BXR2vF3Pi-DLmxcpJB-qbNTyTMDXHd6WqTIVKWJKWg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Eczar" + }, + { + "src": "http://fonts.gstatic.com/s/eczar/v22/BXR2vF3Pi-DLmxcpJB-qbNTyTMDXL96WqTIVKWJKWg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Eczar" + }, + { + "src": "http://fonts.gstatic.com/s/eczar/v22/BXR2vF3Pi-DLmxcpJB-qbNTyTMDXw9mWqTIVKWJKWg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Eczar" + }, + { + "src": "http://fonts.gstatic.com/s/eczar/v22/BXR2vF3Pi-DLmxcpJB-qbNTyTMDX-tmWqTIVKWJKWg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Eczar" + }, + { + "src": "http://fonts.gstatic.com/s/eczar/v22/BXR2vF3Pi-DLmxcpJB-qbNTyTMDXndmWqTIVKWJKWg.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Eczar" + } + ] + }, + { + "name": "Edu NSW ACT Foundation", + "fontFamily": "Edu NSW ACT Foundation, cursive", + "slug": "edu-nsw-act-foundation", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/edunswactfoundation/v2/raxRHjqJtsNBFUi8WO0vUBgc9D-2lV_oQdCAYlt_QTQ0vUxJki9tovGLeC-sfguJ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Edu NSW ACT Foundation" + }, + { + "src": "http://fonts.gstatic.com/s/edunswactfoundation/v2/raxRHjqJtsNBFUi8WO0vUBgc9D-2lV_oQdCAYlt_QTQ0vUxJki9fovGLeC-sfguJ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Edu NSW ACT Foundation" + }, + { + "src": "http://fonts.gstatic.com/s/edunswactfoundation/v2/raxRHjqJtsNBFUi8WO0vUBgc9D-2lV_oQdCAYlt_QTQ0vUxJki-zpfGLeC-sfguJ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Edu NSW ACT Foundation" + }, + { + "src": "http://fonts.gstatic.com/s/edunswactfoundation/v2/raxRHjqJtsNBFUi8WO0vUBgc9D-2lV_oQdCAYlt_QTQ0vUxJki-KpfGLeC-sfguJ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Edu NSW ACT Foundation" + } + ] + }, + { + "name": "Edu QLD Beginner", + "fontFamily": "Edu QLD Beginner, cursive", + "slug": "edu-qld-beginner", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/eduqldbeginner/v3/AMOHz5iUuHLEMNXyohhc_Y56PR3A8dNLF_w3Ka4HKE4E3oebi6vyVWCN.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Edu QLD Beginner" + }, + { + "src": "http://fonts.gstatic.com/s/eduqldbeginner/v3/AMOHz5iUuHLEMNXyohhc_Y56PR3A8dNLF_w3Ka4HKE423oebi6vyVWCN.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Edu QLD Beginner" + }, + { + "src": "http://fonts.gstatic.com/s/eduqldbeginner/v3/AMOHz5iUuHLEMNXyohhc_Y56PR3A8dNLF_w3Ka4HKE7a2Yebi6vyVWCN.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Edu QLD Beginner" + }, + { + "src": "http://fonts.gstatic.com/s/eduqldbeginner/v3/AMOHz5iUuHLEMNXyohhc_Y56PR3A8dNLF_w3Ka4HKE7j2Yebi6vyVWCN.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Edu QLD Beginner" + } + ] + }, + { + "name": "Edu SA Beginner", + "fontFamily": "Edu SA Beginner, cursive", + "slug": "edu-sa-beginner", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/edusabeginner/v3/rnC_-xRb1x-1lHXnLaZZ2xOoLIGfU3L82irpr_3C9989fo1yBydUEDs.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Edu SA Beginner" + }, + { + "src": "http://fonts.gstatic.com/s/edusabeginner/v3/rnC_-xRb1x-1lHXnLaZZ2xOoLIGfU3L82irpr_3C9-09fo1yBydUEDs.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Edu SA Beginner" + }, + { + "src": "http://fonts.gstatic.com/s/edusabeginner/v3/rnC_-xRb1x-1lHXnLaZZ2xOoLIGfU3L82irpr_3C9wE6fo1yBydUEDs.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Edu SA Beginner" + }, + { + "src": "http://fonts.gstatic.com/s/edusabeginner/v3/rnC_-xRb1x-1lHXnLaZZ2xOoLIGfU3L82irpr_3C9zg6fo1yBydUEDs.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Edu SA Beginner" + } + ] + }, + { + "name": "Edu TAS Beginner", + "fontFamily": "Edu TAS Beginner, cursive", + "slug": "edu-tas-beginner", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/edutasbeginner/v3/ZXuwe04WubHfGVY-1TcNg7AFUmshg8jIUTzK3r34f_HwemkrBWRhvk02.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Edu TAS Beginner" + }, + { + "src": "http://fonts.gstatic.com/s/edutasbeginner/v3/ZXuwe04WubHfGVY-1TcNg7AFUmshg8jIUTzK3r34f_HCemkrBWRhvk02.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Edu TAS Beginner" + }, + { + "src": "http://fonts.gstatic.com/s/edutasbeginner/v3/ZXuwe04WubHfGVY-1TcNg7AFUmshg8jIUTzK3r34f_EufWkrBWRhvk02.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Edu TAS Beginner" + }, + { + "src": "http://fonts.gstatic.com/s/edutasbeginner/v3/ZXuwe04WubHfGVY-1TcNg7AFUmshg8jIUTzK3r34f_EXfWkrBWRhvk02.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Edu TAS Beginner" + } + ] + }, + { + "name": "Edu VIC WA NT Beginner", + "fontFamily": "Edu VIC WA NT Beginner, cursive", + "slug": "edu-vic-wa-nt-beginner", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/eduvicwantbeginner/v4/jiz2RF1BuW9OwcnNPxLl4KfZCHd9nFtd5Tu7stCpElYpvPfZZ-OXlPmFXwnpkeGR.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Edu VIC WA NT Beginner" + }, + { + "src": "http://fonts.gstatic.com/s/eduvicwantbeginner/v4/jiz2RF1BuW9OwcnNPxLl4KfZCHd9nFtd5Tu7stCpElYpvPfZZ-OllPmFXwnpkeGR.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Edu VIC WA NT Beginner" + }, + { + "src": "http://fonts.gstatic.com/s/eduvicwantbeginner/v4/jiz2RF1BuW9OwcnNPxLl4KfZCHd9nFtd5Tu7stCpElYpvPfZZ-NJk_mFXwnpkeGR.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Edu VIC WA NT Beginner" + }, + { + "src": "http://fonts.gstatic.com/s/eduvicwantbeginner/v4/jiz2RF1BuW9OwcnNPxLl4KfZCHd9nFtd5Tu7stCpElYpvPfZZ-Nwk_mFXwnpkeGR.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Edu VIC WA NT Beginner" + } + ] + }, + { + "name": "El Messiri", + "fontFamily": "El Messiri, sans-serif", + "slug": "el-messiri", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/elmessiri/v22/K2FhfZBRmr9vQ1pHEey6GIGo8_pv3myYjuXwe65ghj3OoapG.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "El Messiri" + }, + { + "src": "http://fonts.gstatic.com/s/elmessiri/v22/K2FhfZBRmr9vQ1pHEey6GIGo8_pv3myYjuXCe65ghj3OoapG.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "El Messiri" + }, + { + "src": "http://fonts.gstatic.com/s/elmessiri/v22/K2FhfZBRmr9vQ1pHEey6GIGo8_pv3myYjuUufK5ghj3OoapG.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "El Messiri" + }, + { + "src": "http://fonts.gstatic.com/s/elmessiri/v22/K2FhfZBRmr9vQ1pHEey6GIGo8_pv3myYjuUXfK5ghj3OoapG.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "El Messiri" + } + ] + }, + { + "name": "Electrolize", + "fontFamily": "Electrolize, sans-serif", + "slug": "electrolize", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/electrolize/v14/cIf5Ma1dtE0zSiGSiED7AUEGso5tQafB.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Electrolize" + } + ] + }, + { + "name": "Elsie", + "fontFamily": "Elsie, system-ui", + "slug": "elsie", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/elsie/v13/BCanqZABrez54yYu9slAeLgX.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Elsie" + }, + { + "src": "http://fonts.gstatic.com/s/elsie/v13/BCaqqZABrez54x6q2-1IU6QeXSBk.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Elsie" + } + ] + }, + { + "name": "Elsie Swash Caps", + "fontFamily": "Elsie Swash Caps, system-ui", + "slug": "elsie-swash-caps", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/elsieswashcaps/v21/845DNN8xGZyVX5MVo_upKf7KnjK0ferVKGWsUo8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Elsie Swash Caps" + }, + { + "src": "http://fonts.gstatic.com/s/elsieswashcaps/v21/845ENN8xGZyVX5MVo_upKf7KnjK0RW74DG2HToawrdU.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Elsie Swash Caps" + } + ] + }, + { + "name": "Emblema One", + "fontFamily": "Emblema One, system-ui", + "slug": "emblema-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/emblemaone/v21/nKKT-GQ0F5dSY8vzG0rOEIRBHl57G_f_.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Emblema One" + } + ] + }, + { + "name": "Emilys Candy", + "fontFamily": "Emilys Candy, system-ui", + "slug": "emilys-candy", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/emilyscandy/v14/2EbgL-1mD1Rnb0OGKudbk0y5r9xrX84JjA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Emilys Candy" + } + ] + }, + { + "name": "Encode Sans", + "fontFamily": "Encode Sans, sans-serif", + "slug": "encode-sans", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/encodesans/v19/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGGHiZtWP7FJCt2c.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Encode Sans" + }, + { + "src": "http://fonts.gstatic.com/s/encodesans/v19/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGOHjZtWP7FJCt2c.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Encode Sans" + }, + { + "src": "http://fonts.gstatic.com/s/encodesans/v19/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGD_jZtWP7FJCt2c.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Encode Sans" + }, + { + "src": "http://fonts.gstatic.com/s/encodesans/v19/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGGHjZtWP7FJCt2c.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Encode Sans" + }, + { + "src": "http://fonts.gstatic.com/s/encodesans/v19/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGFPjZtWP7FJCt2c.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Encode Sans" + }, + { + "src": "http://fonts.gstatic.com/s/encodesans/v19/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGL_kZtWP7FJCt2c.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Encode Sans" + }, + { + "src": "http://fonts.gstatic.com/s/encodesans/v19/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGIbkZtWP7FJCt2c.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Encode Sans" + }, + { + "src": "http://fonts.gstatic.com/s/encodesans/v19/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGOHkZtWP7FJCt2c.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Encode Sans" + }, + { + "src": "http://fonts.gstatic.com/s/encodesans/v19/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGMjkZtWP7FJCt2c.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Encode Sans" + } + ] + }, + { + "name": "Encode Sans Condensed", + "fontFamily": "Encode Sans Condensed, sans-serif", + "slug": "encode-sans-condensed", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/encodesanscondensed/v10/j8_76_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-5a-JLQoFI2KR.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Encode Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/encodesanscondensed/v10/j8_46_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-SY6pByQJKnuIFA.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Encode Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/encodesanscondensed/v10/j8_46_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-LY2pByQJKnuIFA.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Encode Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/encodesanscondensed/v10/j8_16_LD37rqfuwxyIuaZhE6cRXOLtm2gfTGgaWNDw8VIw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Encode Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/encodesanscondensed/v10/j8_46_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-dYypByQJKnuIFA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Encode Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/encodesanscondensed/v10/j8_46_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-WYupByQJKnuIFA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Encode Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/encodesanscondensed/v10/j8_46_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-PYqpByQJKnuIFA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Encode Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/encodesanscondensed/v10/j8_46_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-IYmpByQJKnuIFA.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Encode Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/encodesanscondensed/v10/j8_46_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-BYipByQJKnuIFA.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Encode Sans Condensed" + } + ] + }, + { + "name": "Encode Sans Expanded", + "fontFamily": "Encode Sans Expanded, sans-serif", + "slug": "encode-sans-expanded", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/encodesansexpanded/v11/c4mx1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpJGKQNicoAbJlw.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Encode Sans Expanded" + }, + { + "src": "http://fonts.gstatic.com/s/encodesansexpanded/v11/c4mw1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpLqCCNIXIwSP0XD.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Encode Sans Expanded" + }, + { + "src": "http://fonts.gstatic.com/s/encodesansexpanded/v11/c4mw1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpKOCyNIXIwSP0XD.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Encode Sans Expanded" + }, + { + "src": "http://fonts.gstatic.com/s/encodesansexpanded/v11/c4m_1mF4GcnstG_Jh1QH6ac4hNLeNyeYUqoiIwdAd5Ab.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Encode Sans Expanded" + }, + { + "src": "http://fonts.gstatic.com/s/encodesansexpanded/v11/c4mw1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpLWCiNIXIwSP0XD.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Encode Sans Expanded" + }, + { + "src": "http://fonts.gstatic.com/s/encodesansexpanded/v11/c4mw1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpL6DSNIXIwSP0XD.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Encode Sans Expanded" + }, + { + "src": "http://fonts.gstatic.com/s/encodesansexpanded/v11/c4mw1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpKeDCNIXIwSP0XD.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Encode Sans Expanded" + }, + { + "src": "http://fonts.gstatic.com/s/encodesansexpanded/v11/c4mw1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpKCDyNIXIwSP0XD.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Encode Sans Expanded" + }, + { + "src": "http://fonts.gstatic.com/s/encodesansexpanded/v11/c4mw1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpKmDiNIXIwSP0XD.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Encode Sans Expanded" + } + ] + }, + { + "name": "Encode Sans SC", + "fontFamily": "Encode Sans SC, sans-serif", + "slug": "encode-sans-sc", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/encodesanssc/v8/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HHhn8c9NOEEClIc.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Encode Sans SC" + }, + { + "src": "http://fonts.gstatic.com/s/encodesanssc/v8/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HPhm8c9NOEEClIc.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Encode Sans SC" + }, + { + "src": "http://fonts.gstatic.com/s/encodesanssc/v8/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HCZm8c9NOEEClIc.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Encode Sans SC" + }, + { + "src": "http://fonts.gstatic.com/s/encodesanssc/v8/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HHhm8c9NOEEClIc.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Encode Sans SC" + }, + { + "src": "http://fonts.gstatic.com/s/encodesanssc/v8/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HEpm8c9NOEEClIc.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Encode Sans SC" + }, + { + "src": "http://fonts.gstatic.com/s/encodesanssc/v8/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HKZh8c9NOEEClIc.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Encode Sans SC" + }, + { + "src": "http://fonts.gstatic.com/s/encodesanssc/v8/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HJ9h8c9NOEEClIc.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Encode Sans SC" + }, + { + "src": "http://fonts.gstatic.com/s/encodesanssc/v8/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HPhh8c9NOEEClIc.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Encode Sans SC" + }, + { + "src": "http://fonts.gstatic.com/s/encodesanssc/v8/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HNFh8c9NOEEClIc.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Encode Sans SC" + } + ] + }, + { + "name": "Encode Sans Semi Condensed", + "fontFamily": "Encode Sans Semi Condensed, sans-serif", + "slug": "encode-sans-semi-condensed", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/encodesanssemicondensed/v10/3qT6oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1T19MFtQ9jpVUA.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Encode Sans Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/encodesanssemicondensed/v10/3qT7oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1RZ1eFHbdTgTFmr.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Encode Sans Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/encodesanssemicondensed/v10/3qT7oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1Q91uFHbdTgTFmr.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Encode Sans Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/encodesanssemicondensed/v10/3qT4oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG2yR_sVPRsjp.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Encode Sans Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/encodesanssemicondensed/v10/3qT7oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1Rl1-FHbdTgTFmr.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Encode Sans Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/encodesanssemicondensed/v10/3qT7oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1RJ0OFHbdTgTFmr.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Encode Sans Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/encodesanssemicondensed/v10/3qT7oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1Qt0eFHbdTgTFmr.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Encode Sans Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/encodesanssemicondensed/v10/3qT7oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1Qx0uFHbdTgTFmr.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Encode Sans Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/encodesanssemicondensed/v10/3qT7oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1QV0-FHbdTgTFmr.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Encode Sans Semi Condensed" + } + ] + }, + { + "name": "Encode Sans Semi Expanded", + "fontFamily": "Encode Sans Semi Expanded, sans-serif", + "slug": "encode-sans-semi-expanded", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/encodesanssemiexpanded/v19/ke8xOhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TM-41KwrlKXeOEA.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Encode Sans Semi Expanded" + }, + { + "src": "http://fonts.gstatic.com/s/encodesanssemiexpanded/v19/ke8yOhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TM0IUCyDLJX6XCWU.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Encode Sans Semi Expanded" + }, + { + "src": "http://fonts.gstatic.com/s/encodesanssemiexpanded/v19/ke8yOhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TMyYXCyDLJX6XCWU.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Encode Sans Semi Expanded" + }, + { + "src": "http://fonts.gstatic.com/s/encodesanssemiexpanded/v19/ke83OhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TC4o_LyjgOXc.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Encode Sans Semi Expanded" + }, + { + "src": "http://fonts.gstatic.com/s/encodesanssemiexpanded/v19/ke8yOhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TM34WCyDLJX6XCWU.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Encode Sans Semi Expanded" + }, + { + "src": "http://fonts.gstatic.com/s/encodesanssemiexpanded/v19/ke8yOhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TM1IRCyDLJX6XCWU.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Encode Sans Semi Expanded" + }, + { + "src": "http://fonts.gstatic.com/s/encodesanssemiexpanded/v19/ke8yOhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TMzYQCyDLJX6XCWU.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Encode Sans Semi Expanded" + }, + { + "src": "http://fonts.gstatic.com/s/encodesanssemiexpanded/v19/ke8yOhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TMyoTCyDLJX6XCWU.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Encode Sans Semi Expanded" + }, + { + "src": "http://fonts.gstatic.com/s/encodesanssemiexpanded/v19/ke8yOhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TMw4SCyDLJX6XCWU.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Encode Sans Semi Expanded" + } + ] + }, + { + "name": "Engagement", + "fontFamily": "Engagement, cursive", + "slug": "engagement", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/engagement/v22/x3dlckLDZbqa7RUs9MFVXNossybsHQI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Engagement" + } + ] + }, + { + "name": "Englebert", + "fontFamily": "Englebert, sans-serif", + "slug": "englebert", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/englebert/v17/xn7iYH8w2XGrC8AR4HSxT_fYdN-WZw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Englebert" + } + ] + }, + { + "name": "Enriqueta", + "fontFamily": "Enriqueta, serif", + "slug": "enriqueta", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/enriqueta/v15/goksH6L7AUFrRvV44HVTS0CjkP1Yog.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Enriqueta" + }, + { + "src": "http://fonts.gstatic.com/s/enriqueta/v15/gokpH6L7AUFrRvV44HVrv2mHmNZEq6TTFw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Enriqueta" + }, + { + "src": "http://fonts.gstatic.com/s/enriqueta/v15/gokpH6L7AUFrRvV44HVrk26HmNZEq6TTFw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Enriqueta" + }, + { + "src": "http://fonts.gstatic.com/s/enriqueta/v15/gokpH6L7AUFrRvV44HVr92-HmNZEq6TTFw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Enriqueta" + } + ] + }, + { + "name": "Ephesis", + "fontFamily": "Ephesis, cursive", + "slug": "ephesis", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ephesis/v7/uU9PCBUS8IerL2VG7xPb3vyHmlI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Ephesis" + } + ] + }, + { + "name": "Epilogue", + "fontFamily": "Epilogue, sans-serif", + "slug": "epilogue", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZMFGj5hxF0EhjimngomvnCCtqb30OXMDLiDJXVigHPVA.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Epilogue" + }, + { + "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZMFGj5hxF0EhjimngomvnCCtqb30OXsDPiDJXVigHPVA.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Epilogue" + }, + { + "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZMFGj5hxF0EhjimngomvnCCtqb30OXbjPiDJXVigHPVA.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Epilogue" + }, + { + "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZMFGj5hxF0EhjimngomvnCCtqb30OXMDPiDJXVigHPVA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Epilogue" + }, + { + "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZMFGj5hxF0EhjimngomvnCCtqb30OXAjPiDJXVigHPVA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Epilogue" + }, + { + "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZMFGj5hxF0EhjimngomvnCCtqb30OX7jTiDJXVigHPVA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Epilogue" + }, + { + "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZMFGj5hxF0EhjimngomvnCCtqb30OX1zTiDJXVigHPVA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Epilogue" + }, + { + "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZMFGj5hxF0EhjimngomvnCCtqb30OXsDTiDJXVigHPVA.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Epilogue" + }, + { + "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZMFGj5hxF0EhjimngomvnCCtqb30OXmTTiDJXVigHPVA.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Epilogue" + }, + { + "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HAKTp_RqATfVHNU.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Epilogue" + }, + { + "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HCKT5_RqATfVHNU.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Epilogue" + }, + { + "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HBUT5_RqATfVHNU.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Epilogue" + }, + { + "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HAKT5_RqATfVHNU.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Epilogue" + }, + { + "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HA4T5_RqATfVHNU.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Epilogue" + }, + { + "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HDUSJ_RqATfVHNU.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Epilogue" + }, + { + "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HDtSJ_RqATfVHNU.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Epilogue" + }, + { + "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HCKSJ_RqATfVHNU.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Epilogue" + }, + { + "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HCjSJ_RqATfVHNU.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Epilogue" + } + ] + }, + { + "name": "Erica One", + "fontFamily": "Erica One, system-ui", + "slug": "erica-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ericaone/v23/WBLnrEXccV9VGrOKmGD1W0_MJMGxiQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Erica One" + } + ] + }, + { + "name": "Esteban", + "fontFamily": "Esteban, serif", + "slug": "esteban", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/esteban/v15/r05bGLZE-bdGdN-GdOuD5jokU8E.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Esteban" + } + ] + }, + { + "name": "Estonia", + "fontFamily": "Estonia, cursive", + "slug": "estonia", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/estonia/v9/7Au_p_4ijSecA1yHCCL8zkwMIFg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Estonia" + } + ] + }, + { + "name": "Euphoria Script", + "fontFamily": "Euphoria Script, cursive", + "slug": "euphoria-script", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/euphoriascript/v16/mFTpWb0X2bLb_cx6To2B8GpKoD5ak_ZT1D8x7Q.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Euphoria Script" + } + ] + }, + { + "name": "Ewert", + "fontFamily": "Ewert, system-ui", + "slug": "ewert", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ewert/v21/va9I4kzO2tFODYBvS-J3kbDP.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Ewert" + } + ] + }, + { + "name": "Exo", + "fontFamily": "Exo, sans-serif", + "slug": "exo", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/exo/v20/4UaZrEtFpBI4f1ZSIK9d4LjJ4lM2CwNsOl4p5Is.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Exo" + }, + { + "src": "http://fonts.gstatic.com/s/exo/v20/4UaZrEtFpBI4f1ZSIK9d4LjJ4tM3CwNsOl4p5Is.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Exo" + }, + { + "src": "http://fonts.gstatic.com/s/exo/v20/4UaZrEtFpBI4f1ZSIK9d4LjJ4g03CwNsOl4p5Is.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Exo" + }, + { + "src": "http://fonts.gstatic.com/s/exo/v20/4UaZrEtFpBI4f1ZSIK9d4LjJ4lM3CwNsOl4p5Is.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Exo" + }, + { + "src": "http://fonts.gstatic.com/s/exo/v20/4UaZrEtFpBI4f1ZSIK9d4LjJ4mE3CwNsOl4p5Is.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Exo" + }, + { + "src": "http://fonts.gstatic.com/s/exo/v20/4UaZrEtFpBI4f1ZSIK9d4LjJ4o0wCwNsOl4p5Is.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Exo" + }, + { + "src": "http://fonts.gstatic.com/s/exo/v20/4UaZrEtFpBI4f1ZSIK9d4LjJ4rQwCwNsOl4p5Is.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Exo" + }, + { + "src": "http://fonts.gstatic.com/s/exo/v20/4UaZrEtFpBI4f1ZSIK9d4LjJ4tMwCwNsOl4p5Is.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Exo" + }, + { + "src": "http://fonts.gstatic.com/s/exo/v20/4UaZrEtFpBI4f1ZSIK9d4LjJ4vowCwNsOl4p5Is.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Exo" + }, + { + "src": "http://fonts.gstatic.com/s/exo/v20/4UafrEtFpBISdmSt-MY2ehbO95t040FmPnws9Iu-uA.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Exo" + }, + { + "src": "http://fonts.gstatic.com/s/exo/v20/4UafrEtFpBISdmSt-MY2ehbO95t0Y0BmPnws9Iu-uA.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Exo" + }, + { + "src": "http://fonts.gstatic.com/s/exo/v20/4UafrEtFpBISdmSt-MY2ehbO95t0vUBmPnws9Iu-uA.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Exo" + }, + { + "src": "http://fonts.gstatic.com/s/exo/v20/4UafrEtFpBISdmSt-MY2ehbO95t040BmPnws9Iu-uA.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Exo" + }, + { + "src": "http://fonts.gstatic.com/s/exo/v20/4UafrEtFpBISdmSt-MY2ehbO95t00UBmPnws9Iu-uA.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Exo" + }, + { + "src": "http://fonts.gstatic.com/s/exo/v20/4UafrEtFpBISdmSt-MY2ehbO95t0PUdmPnws9Iu-uA.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Exo" + }, + { + "src": "http://fonts.gstatic.com/s/exo/v20/4UafrEtFpBISdmSt-MY2ehbO95t0BEdmPnws9Iu-uA.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Exo" + }, + { + "src": "http://fonts.gstatic.com/s/exo/v20/4UafrEtFpBISdmSt-MY2ehbO95t0Y0dmPnws9Iu-uA.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Exo" + }, + { + "src": "http://fonts.gstatic.com/s/exo/v20/4UafrEtFpBISdmSt-MY2ehbO95t0SkdmPnws9Iu-uA.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Exo" + } + ] + }, + { + "name": "Exo 2", + "fontFamily": "Exo 2, sans-serif", + "slug": "exo-2", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/exo2/v20/7cH1v4okm5zmbvwkAx_sfcEuiD8jvvOcPtq-rpvLpQ.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Exo 2" + }, + { + "src": "http://fonts.gstatic.com/s/exo2/v20/7cH1v4okm5zmbvwkAx_sfcEuiD8jPvKcPtq-rpvLpQ.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Exo 2" + }, + { + "src": "http://fonts.gstatic.com/s/exo2/v20/7cH1v4okm5zmbvwkAx_sfcEuiD8j4PKcPtq-rpvLpQ.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Exo 2" + }, + { + "src": "http://fonts.gstatic.com/s/exo2/v20/7cH1v4okm5zmbvwkAx_sfcEuiD8jvvKcPtq-rpvLpQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Exo 2" + }, + { + "src": "http://fonts.gstatic.com/s/exo2/v20/7cH1v4okm5zmbvwkAx_sfcEuiD8jjPKcPtq-rpvLpQ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Exo 2" + }, + { + "src": "http://fonts.gstatic.com/s/exo2/v20/7cH1v4okm5zmbvwkAx_sfcEuiD8jYPWcPtq-rpvLpQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Exo 2" + }, + { + "src": "http://fonts.gstatic.com/s/exo2/v20/7cH1v4okm5zmbvwkAx_sfcEuiD8jWfWcPtq-rpvLpQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Exo 2" + }, + { + "src": "http://fonts.gstatic.com/s/exo2/v20/7cH1v4okm5zmbvwkAx_sfcEuiD8jPvWcPtq-rpvLpQ.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Exo 2" + }, + { + "src": "http://fonts.gstatic.com/s/exo2/v20/7cH1v4okm5zmbvwkAx_sfcEuiD8jF_WcPtq-rpvLpQ.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Exo 2" + }, + { + "src": "http://fonts.gstatic.com/s/exo2/v20/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drF0fNC6jJ7bpQBL.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Exo 2" + }, + { + "src": "http://fonts.gstatic.com/s/exo2/v20/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drH0fdC6jJ7bpQBL.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Exo 2" + }, + { + "src": "http://fonts.gstatic.com/s/exo2/v20/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drEqfdC6jJ7bpQBL.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Exo 2" + }, + { + "src": "http://fonts.gstatic.com/s/exo2/v20/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drF0fdC6jJ7bpQBL.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Exo 2" + }, + { + "src": "http://fonts.gstatic.com/s/exo2/v20/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drFGfdC6jJ7bpQBL.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Exo 2" + }, + { + "src": "http://fonts.gstatic.com/s/exo2/v20/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drGqetC6jJ7bpQBL.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Exo 2" + }, + { + "src": "http://fonts.gstatic.com/s/exo2/v20/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drGTetC6jJ7bpQBL.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Exo 2" + }, + { + "src": "http://fonts.gstatic.com/s/exo2/v20/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drH0etC6jJ7bpQBL.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Exo 2" + }, + { + "src": "http://fonts.gstatic.com/s/exo2/v20/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drHdetC6jJ7bpQBL.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Exo 2" + } + ] + }, + { + "name": "Expletus Sans", + "fontFamily": "Expletus Sans, system-ui", + "slug": "expletus-sans", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/expletussans/v24/RLpqK5v5_bqufTYdnhFzDj2dX_IwS3my73zcDaSY2s1oFQTcXfMm.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Expletus Sans" + }, + { + "src": "http://fonts.gstatic.com/s/expletussans/v24/RLpqK5v5_bqufTYdnhFzDj2dX_IwS3my73zcDaSq2s1oFQTcXfMm.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Expletus Sans" + }, + { + "src": "http://fonts.gstatic.com/s/expletussans/v24/RLpqK5v5_bqufTYdnhFzDj2dX_IwS3my73zcDaRG3c1oFQTcXfMm.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Expletus Sans" + }, + { + "src": "http://fonts.gstatic.com/s/expletussans/v24/RLpqK5v5_bqufTYdnhFzDj2dX_IwS3my73zcDaR_3c1oFQTcXfMm.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Expletus Sans" + }, + { + "src": "http://fonts.gstatic.com/s/expletussans/v24/RLpoK5v5_bqufTYdnhFzDj2ddfsCtKHbhOZyCrFQmSUrHwD-WOMmKKY.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Expletus Sans" + }, + { + "src": "http://fonts.gstatic.com/s/expletussans/v24/RLpoK5v5_bqufTYdnhFzDj2ddfsCtKHbhOZyCrFQmRcrHwD-WOMmKKY.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Expletus Sans" + }, + { + "src": "http://fonts.gstatic.com/s/expletussans/v24/RLpoK5v5_bqufTYdnhFzDj2ddfsCtKHbhOZyCrFQmfssHwD-WOMmKKY.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Expletus Sans" + }, + { + "src": "http://fonts.gstatic.com/s/expletussans/v24/RLpoK5v5_bqufTYdnhFzDj2ddfsCtKHbhOZyCrFQmcIsHwD-WOMmKKY.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Expletus Sans" + } + ] + }, + { + "name": "Explora", + "fontFamily": "Explora, cursive", + "slug": "explora", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/explora/v7/tsstApxFfjUH4wrvc1qPonC3vqc.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Explora" + } + ] + }, + { + "name": "Fahkwang", + "fontFamily": "Fahkwang, sans-serif", + "slug": "fahkwang", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/fahkwang/v16/Noa26Uj3zpmBOgbNpOJHmZlRFipxkwjx.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Fahkwang" + }, + { + "src": "http://fonts.gstatic.com/s/fahkwang/v16/Noa06Uj3zpmBOgbNpOqNgHFQHC5Tlhjxdw4.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Fahkwang" + }, + { + "src": "http://fonts.gstatic.com/s/fahkwang/v16/Noa26Uj3zpmBOgbNpOIjmplRFipxkwjx.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Fahkwang" + }, + { + "src": "http://fonts.gstatic.com/s/fahkwang/v16/Noa06Uj3zpmBOgbNpOqNgBVTHC5Tlhjxdw4.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Fahkwang" + }, + { + "src": "http://fonts.gstatic.com/s/fahkwang/v16/Noax6Uj3zpmBOgbNpNqPsr1ZPTZ4.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Fahkwang" + }, + { + "src": "http://fonts.gstatic.com/s/fahkwang/v16/Noa36Uj3zpmBOgbNpOqNuLl7OCZ4ihE.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Fahkwang" + }, + { + "src": "http://fonts.gstatic.com/s/fahkwang/v16/Noa26Uj3zpmBOgbNpOJ7m5lRFipxkwjx.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Fahkwang" + }, + { + "src": "http://fonts.gstatic.com/s/fahkwang/v16/Noa06Uj3zpmBOgbNpOqNgE1SHC5Tlhjxdw4.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Fahkwang" + }, + { + "src": "http://fonts.gstatic.com/s/fahkwang/v16/Noa26Uj3zpmBOgbNpOJXnJlRFipxkwjx.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Fahkwang" + }, + { + "src": "http://fonts.gstatic.com/s/fahkwang/v16/Noa06Uj3zpmBOgbNpOqNgGFVHC5Tlhjxdw4.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Fahkwang" + }, + { + "src": "http://fonts.gstatic.com/s/fahkwang/v16/Noa26Uj3zpmBOgbNpOIznZlRFipxkwjx.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Fahkwang" + }, + { + "src": "http://fonts.gstatic.com/s/fahkwang/v16/Noa06Uj3zpmBOgbNpOqNgAVUHC5Tlhjxdw4.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Fahkwang" + } + ] + }, + { + "name": "Familjen Grotesk", + "fontFamily": "Familjen Grotesk, sans-serif", + "slug": "familjen-grotesk", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/familjengrotesk/v8/Qw3LZR9ZHiDnImG6-NEMQ41wby8WRnYsfkunR_eGfMGJaSztc1jcEYq2.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Familjen Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/familjengrotesk/v8/Qw3LZR9ZHiDnImG6-NEMQ41wby8WRnYsfkunR_eGfMG7aSztc1jcEYq2.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Familjen Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/familjengrotesk/v8/Qw3LZR9ZHiDnImG6-NEMQ41wby8WRnYsfkunR_eGfMFXbiztc1jcEYq2.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Familjen Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/familjengrotesk/v8/Qw3LZR9ZHiDnImG6-NEMQ41wby8WRnYsfkunR_eGfMFubiztc1jcEYq2.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Familjen Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/familjengrotesk/v8/Qw31ZR9ZHiDnImG6-NEMQ41wby8WbH8egZPOLG0oe9RBKsSueVz-FJq2Rv4.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Familjen Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/familjengrotesk/v8/Qw31ZR9ZHiDnImG6-NEMQ41wby8WbH8egZPOLG0oe9RBKvaueVz-FJq2Rv4.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Familjen Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/familjengrotesk/v8/Qw31ZR9ZHiDnImG6-NEMQ41wby8WbH8egZPOLG0oe9RBKhqpeVz-FJq2Rv4.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Familjen Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/familjengrotesk/v8/Qw31ZR9ZHiDnImG6-NEMQ41wby8WbH8egZPOLG0oe9RBKiOpeVz-FJq2Rv4.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Familjen Grotesk" + } + ] + }, + { + "name": "Fanwood Text", + "fontFamily": "Fanwood Text, serif", + "slug": "fanwood-text", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/fanwoodtext/v15/3XFtErwl05Ad_vSCF6Fq7xXGRdbY1P1Sbg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Fanwood Text" + }, + { + "src": "http://fonts.gstatic.com/s/fanwoodtext/v15/3XFzErwl05Ad_vSCF6Fq7xX2R9zc9vhCblye.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Fanwood Text" + } + ] + }, + { + "name": "Farro", + "fontFamily": "Farro, sans-serif", + "slug": "farro", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/farro/v14/i7dJIFl3byGNHa3hNJ6-WkJUQUq7.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Farro" + }, + { + "src": "http://fonts.gstatic.com/s/farro/v14/i7dEIFl3byGNHZVNHLq2cV5d.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Farro" + }, + { + "src": "http://fonts.gstatic.com/s/farro/v14/i7dJIFl3byGNHa25NZ6-WkJUQUq7.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Farro" + }, + { + "src": "http://fonts.gstatic.com/s/farro/v14/i7dJIFl3byGNHa3xM56-WkJUQUq7.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Farro" + } + ] + }, + { + "name": "Farsan", + "fontFamily": "Farsan, system-ui", + "slug": "farsan", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/farsan/v19/VEMwRoJ0vY_zsyz62q-pxDX9rQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Farsan" + } + ] + }, + { + "name": "Fascinate", + "fontFamily": "Fascinate, system-ui", + "slug": "fascinate", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/fascinate/v21/z7NWdRrufC8XJK0IIEli1LbQRPyNrw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Fascinate" + } + ] + }, + { + "name": "Fascinate Inline", + "fontFamily": "Fascinate Inline, system-ui", + "slug": "fascinate-inline", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/fascinateinline/v22/jVyR7mzzB3zc-jp6QCAu60poNqIy1g3CfRXxWZQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Fascinate Inline" + } + ] + }, + { + "name": "Faster One", + "fontFamily": "Faster One, system-ui", + "slug": "faster-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/fasterone/v19/H4ciBXCHmdfClFb-vWhfyLuShq63czE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Faster One" + } + ] + }, + { + "name": "Fasthand", + "fontFamily": "Fasthand, system-ui", + "slug": "fasthand", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/fasthand/v26/0yb9GDohyKTYn_ZEESkuYkw2rQg1.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Fasthand" + } + ] + }, + { + "name": "Fauna One", + "fontFamily": "Fauna One, serif", + "slug": "fauna-one", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/faunaone/v15/wlpzgwTPBVpjpCuwkuEx2UxLYClOCg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Fauna One" + } + ] + }, + { + "name": "Faustina", + "fontFamily": "Faustina, serif", + "slug": "faustina", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/faustina/v20/XLY4IZPxYpJfTbZAFXWzNT2SO8wpWHls3IEvGVWWe8tbEg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Faustina" + }, + { + "src": "http://fonts.gstatic.com/s/faustina/v20/XLY4IZPxYpJfTbZAFXWzNT2SO8wpWHlsgoEvGVWWe8tbEg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Faustina" + }, + { + "src": "http://fonts.gstatic.com/s/faustina/v20/XLY4IZPxYpJfTbZAFXWzNT2SO8wpWHlssIEvGVWWe8tbEg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Faustina" + }, + { + "src": "http://fonts.gstatic.com/s/faustina/v20/XLY4IZPxYpJfTbZAFXWzNT2SO8wpWHlsXIYvGVWWe8tbEg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Faustina" + }, + { + "src": "http://fonts.gstatic.com/s/faustina/v20/XLY4IZPxYpJfTbZAFXWzNT2SO8wpWHlsZYYvGVWWe8tbEg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Faustina" + }, + { + "src": "http://fonts.gstatic.com/s/faustina/v20/XLY4IZPxYpJfTbZAFXWzNT2SO8wpWHlsAoYvGVWWe8tbEg.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Faustina" + }, + { + "src": "http://fonts.gstatic.com/s/faustina/v20/XLY2IZPxYpJfTbZAFV-6B8JKUqez9n55SsKZWl-SWc5LEnoF.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Faustina" + }, + { + "src": "http://fonts.gstatic.com/s/faustina/v20/XLY2IZPxYpJfTbZAFV-6B8JKUqez9n55SsLHWl-SWc5LEnoF.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Faustina" + }, + { + "src": "http://fonts.gstatic.com/s/faustina/v20/XLY2IZPxYpJfTbZAFV-6B8JKUqez9n55SsL1Wl-SWc5LEnoF.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Faustina" + }, + { + "src": "http://fonts.gstatic.com/s/faustina/v20/XLY2IZPxYpJfTbZAFV-6B8JKUqez9n55SsIZXV-SWc5LEnoF.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Faustina" + }, + { + "src": "http://fonts.gstatic.com/s/faustina/v20/XLY2IZPxYpJfTbZAFV-6B8JKUqez9n55SsIgXV-SWc5LEnoF.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Faustina" + }, + { + "src": "http://fonts.gstatic.com/s/faustina/v20/XLY2IZPxYpJfTbZAFV-6B8JKUqez9n55SsJHXV-SWc5LEnoF.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Faustina" + } + ] + }, + { + "name": "Federant", + "fontFamily": "Federant, system-ui", + "slug": "federant", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/federant/v25/2sDdZGNfip_eirT0_U0jRUG0AqUc.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Federant" + } + ] + }, + { + "name": "Federo", + "fontFamily": "Federo, sans-serif", + "slug": "federo", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/federo/v19/iJWFBX-cbD_ETsbmjVOe2WTG7Q.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Federo" + } + ] + }, + { + "name": "Felipa", + "fontFamily": "Felipa, cursive", + "slug": "felipa", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/felipa/v20/FwZa7-owz1Eu4F_wSNSEwM2zpA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Felipa" + } + ] + }, + { + "name": "Fenix", + "fontFamily": "Fenix, serif", + "slug": "fenix", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/fenix/v20/XoHo2YL_S7-g5ostKzAFvs8o.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Fenix" + } + ] + }, + { + "name": "Festive", + "fontFamily": "Festive, cursive", + "slug": "festive", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/festive/v7/cY9Ffj6KX1xcoDWhFtfgy9HTkak.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Festive" + } + ] + }, + { + "name": "Figtree", + "fontFamily": "Figtree, sans-serif", + "slug": "figtree", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/figtree/v4/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_chQF5ewkEU4HTy.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Figtree" + }, + { + "src": "http://fonts.gstatic.com/s/figtree/v4/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_d_QF5ewkEU4HTy.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Figtree" + }, + { + "src": "http://fonts.gstatic.com/s/figtree/v4/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_dNQF5ewkEU4HTy.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Figtree" + }, + { + "src": "http://fonts.gstatic.com/s/figtree/v4/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_ehR15ewkEU4HTy.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Figtree" + }, + { + "src": "http://fonts.gstatic.com/s/figtree/v4/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_eYR15ewkEU4HTy.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Figtree" + }, + { + "src": "http://fonts.gstatic.com/s/figtree/v4/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_f_R15ewkEU4HTy.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Figtree" + }, + { + "src": "http://fonts.gstatic.com/s/figtree/v4/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_fWR15ewkEU4HTy.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Figtree" + }, + { + "src": "http://fonts.gstatic.com/s/figtree/v4/_Xm9-HUzqDCFdgfMm4GnA4aZFrUvtOK3A-gdyEU25WTybO8.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Figtree" + }, + { + "src": "http://fonts.gstatic.com/s/figtree/v4/_Xm9-HUzqDCFdgfMm4GnA4aZFrUvtOK3A7YdyEU25WTybO8.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Figtree" + }, + { + "src": "http://fonts.gstatic.com/s/figtree/v4/_Xm9-HUzqDCFdgfMm4GnA4aZFrUvtOK3A4QdyEU25WTybO8.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Figtree" + }, + { + "src": "http://fonts.gstatic.com/s/figtree/v4/_Xm9-HUzqDCFdgfMm4GnA4aZFrUvtOK3A2gayEU25WTybO8.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Figtree" + }, + { + "src": "http://fonts.gstatic.com/s/figtree/v4/_Xm9-HUzqDCFdgfMm4GnA4aZFrUvtOK3A1EayEU25WTybO8.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Figtree" + }, + { + "src": "http://fonts.gstatic.com/s/figtree/v4/_Xm9-HUzqDCFdgfMm4GnA4aZFrUvtOK3AzYayEU25WTybO8.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Figtree" + }, + { + "src": "http://fonts.gstatic.com/s/figtree/v4/_Xm9-HUzqDCFdgfMm4GnA4aZFrUvtOK3Ax8ayEU25WTybO8.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Figtree" + } + ] + }, + { + "name": "Finger Paint", + "fontFamily": "Finger Paint, system-ui", + "slug": "finger-paint", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/fingerpaint/v15/0QInMXVJ-o-oRn_7dron8YWO85bS8ANesw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Finger Paint" + } + ] + }, + { + "name": "Finlandica", + "fontFamily": "Finlandica, sans-serif", + "slug": "finlandica", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/finlandica/v8/-nFsOGk-8vAc7lEtg0aSyZCty9GSsPBE19A7rEjx9i5ss3a3.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Finlandica" + }, + { + "src": "http://fonts.gstatic.com/s/finlandica/v8/-nFsOGk-8vAc7lEtg0aSyZCty9GSsPBE19AJrEjx9i5ss3a3.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Finlandica" + }, + { + "src": "http://fonts.gstatic.com/s/finlandica/v8/-nFsOGk-8vAc7lEtg0aSyZCty9GSsPBE19Dlq0jx9i5ss3a3.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Finlandica" + }, + { + "src": "http://fonts.gstatic.com/s/finlandica/v8/-nFsOGk-8vAc7lEtg0aSyZCty9GSsPBE19Dcq0jx9i5ss3a3.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Finlandica" + }, + { + "src": "http://fonts.gstatic.com/s/finlandica/v8/-nFuOGk-8vAc7lEtg0aS45mfNAn722rq0MXz76Cy_CpOtma3uNQ.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Finlandica" + }, + { + "src": "http://fonts.gstatic.com/s/finlandica/v8/-nFuOGk-8vAc7lEtg0aS45mfNAn722rq0MXz75Ky_CpOtma3uNQ.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Finlandica" + }, + { + "src": "http://fonts.gstatic.com/s/finlandica/v8/-nFuOGk-8vAc7lEtg0aS45mfNAn722rq0MXz7361_CpOtma3uNQ.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Finlandica" + }, + { + "src": "http://fonts.gstatic.com/s/finlandica/v8/-nFuOGk-8vAc7lEtg0aS45mfNAn722rq0MXz70e1_CpOtma3uNQ.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Finlandica" + } + ] + }, + { + "name": "Fira Code", + "fontFamily": "Fira Code, monospace", + "slug": "fira-code", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/firacode/v21/uU9eCBsR6Z2vfE9aq3bL0fxyUs4tcw4W_GNsFVfxN87gsj0.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Fira Code" + }, + { + "src": "http://fonts.gstatic.com/s/firacode/v21/uU9eCBsR6Z2vfE9aq3bL0fxyUs4tcw4W_D1sFVfxN87gsj0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Fira Code" + }, + { + "src": "http://fonts.gstatic.com/s/firacode/v21/uU9eCBsR6Z2vfE9aq3bL0fxyUs4tcw4W_A9sFVfxN87gsj0.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Fira Code" + }, + { + "src": "http://fonts.gstatic.com/s/firacode/v21/uU9eCBsR6Z2vfE9aq3bL0fxyUs4tcw4W_ONrFVfxN87gsj0.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Fira Code" + }, + { + "src": "http://fonts.gstatic.com/s/firacode/v21/uU9eCBsR6Z2vfE9aq3bL0fxyUs4tcw4W_NprFVfxN87gsj0.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Fira Code" + } + ] + }, + { + "name": "Fira Mono", + "fontFamily": "Fira Mono, monospace", + "slug": "fira-mono", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/firamono/v14/N0bX2SlFPv1weGeLZDtQIfTTkdbJYA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Fira Mono" + }, + { + "src": "http://fonts.gstatic.com/s/firamono/v14/N0bS2SlFPv1weGeLZDto1d33mf3VaZBRBQ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Fira Mono" + }, + { + "src": "http://fonts.gstatic.com/s/firamono/v14/N0bS2SlFPv1weGeLZDtondv3mf3VaZBRBQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Fira Mono" + } + ] + }, + { + "name": "Fira Sans", + "fontFamily": "Fira Sans, sans-serif", + "slug": "fira-sans", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/firasans/v17/va9C4kDNxMZdWfMOD5Vn9IjOazP3dUTP.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Fira Sans" + }, + { + "src": "http://fonts.gstatic.com/s/firasans/v17/va9A4kDNxMZdWfMOD5VvkrCqYTfVcFTPj0s.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Fira Sans" + }, + { + "src": "http://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnWKnuQR37fF3Wlg.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Fira Sans" + }, + { + "src": "http://fonts.gstatic.com/s/firasans/v17/va9f4kDNxMZdWfMOD5VvkrAGQBf_XljGllLX.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Fira Sans" + }, + { + "src": "http://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnPKruQR37fF3Wlg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Fira Sans" + }, + { + "src": "http://fonts.gstatic.com/s/firasans/v17/va9f4kDNxMZdWfMOD5VvkrBiQxf_XljGllLX.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Fira Sans" + }, + { + "src": "http://fonts.gstatic.com/s/firasans/v17/va9E4kDNxMZdWfMOD5VfkILKSTbndQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Fira Sans" + }, + { + "src": "http://fonts.gstatic.com/s/firasans/v17/va9C4kDNxMZdWfMOD5VvkojOazP3dUTP.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Fira Sans" + }, + { + "src": "http://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnZKvuQR37fF3Wlg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Fira Sans" + }, + { + "src": "http://fonts.gstatic.com/s/firasans/v17/va9f4kDNxMZdWfMOD5VvkrA6Qhf_XljGllLX.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Fira Sans" + }, + { + "src": "http://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnSKzuQR37fF3Wlg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Fira Sans" + }, + { + "src": "http://fonts.gstatic.com/s/firasans/v17/va9f4kDNxMZdWfMOD5VvkrAWRRf_XljGllLX.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Fira Sans" + }, + { + "src": "http://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnLK3uQR37fF3Wlg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Fira Sans" + }, + { + "src": "http://fonts.gstatic.com/s/firasans/v17/va9f4kDNxMZdWfMOD5VvkrByRBf_XljGllLX.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Fira Sans" + }, + { + "src": "http://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnMK7uQR37fF3Wlg.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Fira Sans" + }, + { + "src": "http://fonts.gstatic.com/s/firasans/v17/va9f4kDNxMZdWfMOD5VvkrBuRxf_XljGllLX.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Fira Sans" + }, + { + "src": "http://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnFK_uQR37fF3Wlg.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Fira Sans" + }, + { + "src": "http://fonts.gstatic.com/s/firasans/v17/va9f4kDNxMZdWfMOD5VvkrBKRhf_XljGllLX.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Fira Sans" + } + ] + }, + { + "name": "Fira Sans Condensed", + "fontFamily": "Fira Sans Condensed, sans-serif", + "slug": "fira-sans-condensed", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOjEADFm8hSaQTFG18FErVhsC9x-tarWZXtqOlQfx9CjA.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Fira Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOtEADFm8hSaQTFG18FErVhsC9x-tarUfPVzONUXRpSjJcu.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Fira Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOsEADFm8hSaQTFG18FErVhsC9x-tarWTnMiMN-cxZblY4.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Fira Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOuEADFm8hSaQTFG18FErVhsC9x-tarUfPVYMJ0dzRehY43EA.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Fira Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOsEADFm8hSaQTFG18FErVhsC9x-tarWV3PiMN-cxZblY4.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Fira Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOuEADFm8hSaQTFG18FErVhsC9x-tarUfPVBMF0dzRehY43EA.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Fira Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOhEADFm8hSaQTFG18FErVhsC9x-tarYfHnrMtVbx8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Fira Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOjEADFm8hSaQTFG18FErVhsC9x-tarUfPtqOlQfx9CjA.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Fira Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOsEADFm8hSaQTFG18FErVhsC9x-tarWQXOiMN-cxZblY4.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Fira Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOuEADFm8hSaQTFG18FErVhsC9x-tarUfPVXMB0dzRehY43EA.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Fira Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOsEADFm8hSaQTFG18FErVhsC9x-tarWSnJiMN-cxZblY4.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Fira Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOuEADFm8hSaQTFG18FErVhsC9x-tarUfPVcMd0dzRehY43EA.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Fira Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOsEADFm8hSaQTFG18FErVhsC9x-tarWU3IiMN-cxZblY4.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Fira Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOuEADFm8hSaQTFG18FErVhsC9x-tarUfPVFMZ0dzRehY43EA.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Fira Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOsEADFm8hSaQTFG18FErVhsC9x-tarWVHLiMN-cxZblY4.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Fira Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOuEADFm8hSaQTFG18FErVhsC9x-tarUfPVCMV0dzRehY43EA.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Fira Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOsEADFm8hSaQTFG18FErVhsC9x-tarWXXKiMN-cxZblY4.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Fira Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOuEADFm8hSaQTFG18FErVhsC9x-tarUfPVLMR0dzRehY43EA.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Fira Sans Condensed" + } + ] + }, + { + "name": "Fira Sans Extra Condensed", + "fontFamily": "Fira Sans Extra Condensed, sans-serif", + "slug": "fira-sans-extra-condensed", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPMcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda3Zyuv1WarE9ncg.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Fira Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPOcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fqW21-ejkp3cn22.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Fira Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPPcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda3TCPn3-0oEZ-a2Q.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Fira Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPxcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fqWd36-pGR7e2SvJQ.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Fira Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPPcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda3VSMn3-0oEZ-a2Q.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Fira Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPxcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fqWE32-pGR7e2SvJQ.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Fira Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPKcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda5fiku3efvE8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Fira Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPMcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fquv1WarE9ncg.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Fira Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPPcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda3QyNn3-0oEZ-a2Q.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Fira Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPxcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fqWS3y-pGR7e2SvJQ.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Fira Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPPcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda3SCKn3-0oEZ-a2Q.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Fira Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPxcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fqWZ3u-pGR7e2SvJQ.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Fira Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPPcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda3USLn3-0oEZ-a2Q.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Fira Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPxcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fqWA3q-pGR7e2SvJQ.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Fira Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPPcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda3ViIn3-0oEZ-a2Q.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Fira Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPxcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fqWH3m-pGR7e2SvJQ.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Fira Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPPcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda3XyJn3-0oEZ-a2Q.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Fira Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPxcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fqWO3i-pGR7e2SvJQ.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Fira Sans Extra Condensed" + } + ] + }, + { + "name": "Fjalla One", + "fontFamily": "Fjalla One, sans-serif", + "slug": "fjalla-one", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/fjallaone/v15/Yq6R-LCAWCX3-6Ky7FAFnOZwkxgtUb8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Fjalla One" + } + ] + }, + { + "name": "Fjord One", + "fontFamily": "Fjord One, serif", + "slug": "fjord-one", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/fjordone/v21/zOL-4pbEnKBY_9S1jNKr6e5As-FeiQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Fjord One" + } + ] + }, + { + "name": "Flamenco", + "fontFamily": "Flamenco, system-ui", + "slug": "flamenco", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/flamenco/v18/neIPzCehqYguo67ssZ0qNIkyepH9qGsf.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Flamenco" + }, + { + "src": "http://fonts.gstatic.com/s/flamenco/v18/neIIzCehqYguo67ssaWGHK06UY30.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Flamenco" + } + ] + }, + { + "name": "Flavors", + "fontFamily": "Flavors, system-ui", + "slug": "flavors", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/flavors/v22/FBV2dDrhxqmveJTpbkzlNqkG9UY.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Flavors" + } + ] + }, + { + "name": "Fleur De Leah", + "fontFamily": "Fleur De Leah, cursive", + "slug": "fleur-de-leah", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/fleurdeleah/v7/AYCNpXX7ftYZWLhv9UmPJTMC5vat4I_Gdq0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Fleur De Leah" + } + ] + }, + { + "name": "Flow Block", + "fontFamily": "Flow Block, system-ui", + "slug": "flow-block", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/flowblock/v7/wlp0gwfPCEB65UmTk-d6-WZlbCBXE_I.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Flow Block" + } + ] + }, + { + "name": "Flow Circular", + "fontFamily": "Flow Circular, system-ui", + "slug": "flow-circular", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/flowcircular/v7/lJwB-pc4j2F-H8YKuyvfxdZ45ifpWdr2rIg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Flow Circular" + } + ] + }, + { + "name": "Flow Rounded", + "fontFamily": "Flow Rounded, system-ui", + "slug": "flow-rounded", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/flowrounded/v7/-zki91mtwsU9qlLiGwD4oQX3oZX-Xup87g.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Flow Rounded" + } + ] + }, + { + "name": "Foldit", + "fontFamily": "Foldit, system-ui", + "slug": "foldit", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/foldit/v3/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8XpANmapUYLHkN80.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Foldit" + }, + { + "src": "http://fonts.gstatic.com/s/foldit/v3/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8XhAMmapUYLHkN80.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Foldit" + }, + { + "src": "http://fonts.gstatic.com/s/foldit/v3/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8Xs4MmapUYLHkN80.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Foldit" + }, + { + "src": "http://fonts.gstatic.com/s/foldit/v3/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8XpAMmapUYLHkN80.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Foldit" + }, + { + "src": "http://fonts.gstatic.com/s/foldit/v3/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8XqIMmapUYLHkN80.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Foldit" + }, + { + "src": "http://fonts.gstatic.com/s/foldit/v3/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8Xk4LmapUYLHkN80.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Foldit" + }, + { + "src": "http://fonts.gstatic.com/s/foldit/v3/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8XncLmapUYLHkN80.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Foldit" + }, + { + "src": "http://fonts.gstatic.com/s/foldit/v3/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8XhALmapUYLHkN80.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Foldit" + }, + { + "src": "http://fonts.gstatic.com/s/foldit/v3/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8XjkLmapUYLHkN80.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Foldit" + } + ] + }, + { + "name": "Fondamento", + "fontFamily": "Fondamento, cursive", + "slug": "fondamento", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/fondamento/v17/4UaHrEJGsxNmFTPDnkaJx63j5pN1MwI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Fondamento" + }, + { + "src": "http://fonts.gstatic.com/s/fondamento/v17/4UaFrEJGsxNmFTPDnkaJ96_p4rFwIwJePw.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Fondamento" + } + ] + }, + { + "name": "Fontdiner Swanky", + "fontFamily": "Fontdiner Swanky, system-ui", + "slug": "fontdiner-swanky", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/fontdinerswanky/v19/ijwOs4XgRNsiaI5-hcVb4hQgMvCD4uEfKiGvxts.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Fontdiner Swanky" + } + ] + }, + { + "name": "Forum", + "fontFamily": "Forum, system-ui", + "slug": "forum", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/forum/v16/6aey4Ky-Vb8Ew_IWMJMa3mnT.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Forum" + } + ] + }, + { + "name": "Fragment Mono", + "fontFamily": "Fragment Mono, monospace", + "slug": "fragment-mono", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/fragmentmono/v1/4iCr6K5wfMRRjxp0DA6-2CLnN4RNh4UI_1U.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Fragment Mono" + }, + { + "src": "http://fonts.gstatic.com/s/fragmentmono/v1/4iC16K5wfMRRjxp0DA6-2CLnB4ZHg6cN71URtQ.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Fragment Mono" + } + ] + }, + { + "name": "Francois One", + "fontFamily": "Francois One, sans-serif", + "slug": "francois-one", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/francoisone/v21/_Xmr-H4zszafZw3A-KPSZutNxgKQu_avAg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Francois One" + } + ] + }, + { + "name": "Frank Ruhl Libre", + "fontFamily": "Frank Ruhl Libre, serif", + "slug": "frank-ruhl-libre", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/frankruhllibre/v19/j8_96_fAw7jrcalD7oKYNX0QfAnPcbzNEEB7OoicBw6bYVqQPxR2EUR_.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Frank Ruhl Libre" + }, + { + "src": "http://fonts.gstatic.com/s/frankruhllibre/v19/j8_96_fAw7jrcalD7oKYNX0QfAnPcbzNEEB7OoicBw7FYVqQPxR2EUR_.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Frank Ruhl Libre" + }, + { + "src": "http://fonts.gstatic.com/s/frankruhllibre/v19/j8_96_fAw7jrcalD7oKYNX0QfAnPcbzNEEB7OoicBw73YVqQPxR2EUR_.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Frank Ruhl Libre" + }, + { + "src": "http://fonts.gstatic.com/s/frankruhllibre/v19/j8_96_fAw7jrcalD7oKYNX0QfAnPcbzNEEB7OoicBw4bZlqQPxR2EUR_.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Frank Ruhl Libre" + }, + { + "src": "http://fonts.gstatic.com/s/frankruhllibre/v19/j8_96_fAw7jrcalD7oKYNX0QfAnPcbzNEEB7OoicBw4iZlqQPxR2EUR_.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Frank Ruhl Libre" + }, + { + "src": "http://fonts.gstatic.com/s/frankruhllibre/v19/j8_96_fAw7jrcalD7oKYNX0QfAnPcbzNEEB7OoicBw5FZlqQPxR2EUR_.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Frank Ruhl Libre" + }, + { + "src": "http://fonts.gstatic.com/s/frankruhllibre/v19/j8_96_fAw7jrcalD7oKYNX0QfAnPcbzNEEB7OoicBw5sZlqQPxR2EUR_.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Frank Ruhl Libre" + } + ] + }, + { + "name": "Fraunces", + "fontFamily": "Fraunces, serif", + "slug": "fraunces", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/fraunces/v31/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIctxqjDvTShUtWNg.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Fraunces" + }, + { + "src": "http://fonts.gstatic.com/s/fraunces/v31/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIcNxujDvTShUtWNg.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Fraunces" + }, + { + "src": "http://fonts.gstatic.com/s/fraunces/v31/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIc6RujDvTShUtWNg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Fraunces" + }, + { + "src": "http://fonts.gstatic.com/s/fraunces/v31/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIctxujDvTShUtWNg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Fraunces" + }, + { + "src": "http://fonts.gstatic.com/s/fraunces/v31/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIchRujDvTShUtWNg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Fraunces" + }, + { + "src": "http://fonts.gstatic.com/s/fraunces/v31/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIcaRyjDvTShUtWNg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Fraunces" + }, + { + "src": "http://fonts.gstatic.com/s/fraunces/v31/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIcUByjDvTShUtWNg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Fraunces" + }, + { + "src": "http://fonts.gstatic.com/s/fraunces/v31/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIcNxyjDvTShUtWNg.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Fraunces" + }, + { + "src": "http://fonts.gstatic.com/s/fraunces/v31/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIcHhyjDvTShUtWNg.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Fraunces" + }, + { + "src": "http://fonts.gstatic.com/s/fraunces/v31/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1hLTP7Wp05GNi3k.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Fraunces" + }, + { + "src": "http://fonts.gstatic.com/s/fraunces/v31/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1jLTf7Wp05GNi3k.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Fraunces" + }, + { + "src": "http://fonts.gstatic.com/s/fraunces/v31/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1gVTf7Wp05GNi3k.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Fraunces" + }, + { + "src": "http://fonts.gstatic.com/s/fraunces/v31/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1hLTf7Wp05GNi3k.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Fraunces" + }, + { + "src": "http://fonts.gstatic.com/s/fraunces/v31/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1h5Tf7Wp05GNi3k.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Fraunces" + }, + { + "src": "http://fonts.gstatic.com/s/fraunces/v31/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1iVSv7Wp05GNi3k.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Fraunces" + }, + { + "src": "http://fonts.gstatic.com/s/fraunces/v31/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1isSv7Wp05GNi3k.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Fraunces" + }, + { + "src": "http://fonts.gstatic.com/s/fraunces/v31/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1jLSv7Wp05GNi3k.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Fraunces" + }, + { + "src": "http://fonts.gstatic.com/s/fraunces/v31/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1jiSv7Wp05GNi3k.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Fraunces" + } + ] + }, + { + "name": "Freckle Face", + "fontFamily": "Freckle Face, system-ui", + "slug": "freckle-face", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/freckleface/v15/AMOWz4SXrmKHCvXTohxY-YI0U1K2w9lb4g.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Freckle Face" + } + ] + }, + { + "name": "Fredericka the Great", + "fontFamily": "Fredericka the Great, system-ui", + "slug": "fredericka-the-great", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/frederickathegreat/v16/9Bt33CxNwt7aOctW2xjbCstzwVKsIBVV-9Skz7Ylch2L.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Fredericka the Great" + } + ] + }, + { + "name": "Fredoka", + "fontFamily": "Fredoka, sans-serif", + "slug": "fredoka", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/fredoka/v14/X7nP4b87HvSqjb_WIi2yDCRwoQ_k7367_B-i2yQag0-mac3OryLMFuOLlNldbw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Fredoka" + }, + { + "src": "http://fonts.gstatic.com/s/fredoka/v14/X7nP4b87HvSqjb_WIi2yDCRwoQ_k7367_B-i2yQag0-mac3O8SLMFuOLlNldbw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Fredoka" + }, + { + "src": "http://fonts.gstatic.com/s/fredoka/v14/X7nP4b87HvSqjb_WIi2yDCRwoQ_k7367_B-i2yQag0-mac3OwyLMFuOLlNldbw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Fredoka" + }, + { + "src": "http://fonts.gstatic.com/s/fredoka/v14/X7nP4b87HvSqjb_WIi2yDCRwoQ_k7367_B-i2yQag0-mac3OLyXMFuOLlNldbw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Fredoka" + }, + { + "src": "http://fonts.gstatic.com/s/fredoka/v14/X7nP4b87HvSqjb_WIi2yDCRwoQ_k7367_B-i2yQag0-mac3OFiXMFuOLlNldbw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Fredoka" + } + ] + }, + { + "name": "Freehand", + "fontFamily": "Freehand, system-ui", + "slug": "freehand", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/freehand/v27/cIf-Ma5eqk01VjKTgAmBTmUOmZJk.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Freehand" + } + ] + }, + { + "name": "Fresca", + "fontFamily": "Fresca, sans-serif", + "slug": "fresca", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/fresca/v18/6ae94K--SKgCzbM2Gr0W13DKPA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Fresca" + } + ] + }, + { + "name": "Frijole", + "fontFamily": "Frijole, system-ui", + "slug": "frijole", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/frijole/v14/uU9PCBUR8oakM2BQ7xPb3vyHmlI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Frijole" + } + ] + }, + { + "name": "Fruktur", + "fontFamily": "Fruktur, system-ui", + "slug": "fruktur", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/fruktur/v27/SZc53FHsOru5QYsMfz3GkUrS8DI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Fruktur" + }, + { + "src": "http://fonts.gstatic.com/s/fruktur/v27/SZc73FHsOru5QYsMTz_MlWjX4DJXgQ.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Fruktur" + } + ] + }, + { + "name": "Fugaz One", + "fontFamily": "Fugaz One, system-ui", + "slug": "fugaz-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/fugazone/v15/rax_HiWKp9EAITukFslMBBJek0vA8A.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Fugaz One" + } + ] + }, + { + "name": "Fuggles", + "fontFamily": "Fuggles, cursive", + "slug": "fuggles", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/fuggles/v9/k3kQo8UEJOlD1hpOTd7iL0nAMaM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Fuggles" + } + ] + }, + { + "name": "Fuzzy Bubbles", + "fontFamily": "Fuzzy Bubbles, cursive", + "slug": "fuzzy-bubbles", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/fuzzybubbles/v5/6qLGKZMbrgv9pwtjPEVNV0F2NnP5Zxsreko.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Fuzzy Bubbles" + }, + { + "src": "http://fonts.gstatic.com/s/fuzzybubbles/v5/6qLbKZMbrgv9pwtjPEVNV0F2Ds_WQxMAZkM1pn4.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Fuzzy Bubbles" + } + ] + }, + { + "name": "GFS Didot", + "fontFamily": "GFS Didot, serif", + "slug": "gfs-didot", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gfsdidot/v15/Jqzh5TybZ9vZMWFssvwiF-fGFSCGAA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "GFS Didot" + } + ] + }, + { + "name": "GFS Neohellenic", + "fontFamily": "GFS Neohellenic, sans-serif", + "slug": "gfs-neohellenic", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gfsneohellenic/v25/8QIRdiDOrfiq0b7R8O1Iw9WLcY5TLahP46UDUw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "GFS Neohellenic" + }, + { + "src": "http://fonts.gstatic.com/s/gfsneohellenic/v25/8QITdiDOrfiq0b7R8O1Iw9WLcY5jL6JLwaATU91X.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "GFS Neohellenic" + }, + { + "src": "http://fonts.gstatic.com/s/gfsneohellenic/v25/8QIUdiDOrfiq0b7R8O1Iw9WLcY5rkYdr644fWsRO9w.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "GFS Neohellenic" + }, + { + "src": "http://fonts.gstatic.com/s/gfsneohellenic/v25/8QIWdiDOrfiq0b7R8O1Iw9WLcY5jL5r37oQbeMFe985V.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "GFS Neohellenic" + } + ] + }, + { + "name": "Gabriela", + "fontFamily": "Gabriela, serif", + "slug": "gabriela", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gabriela/v17/qkBWXvsO6sreR8E-b_m-zrpHmRzC.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Gabriela" + } + ] + }, + { + "name": "Gaegu", + "fontFamily": "Gaegu, cursive", + "slug": "gaegu", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gaegu/v15/TuGSUVB6Up9NU57nifw74sdtBk0x.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Gaegu" + }, + { + "src": "http://fonts.gstatic.com/s/gaegu/v15/TuGfUVB6Up9NU6ZLodgzydtk.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Gaegu" + }, + { + "src": "http://fonts.gstatic.com/s/gaegu/v15/TuGSUVB6Up9NU573jvw74sdtBk0x.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Gaegu" + } + ] + }, + { + "name": "Gafata", + "fontFamily": "Gafata, sans-serif", + "slug": "gafata", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gafata/v16/XRXV3I6Cn0VJKon4MuyAbsrVcA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Gafata" + } + ] + }, + { + "name": "Gajraj One", + "fontFamily": "Gajraj One, system-ui", + "slug": "gajraj-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gajrajone/v3/1cX2aUDCDpXsuWVb1jIjr1GqhcitzeM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Gajraj One" + } + ] + }, + { + "name": "Galada", + "fontFamily": "Galada, system-ui", + "slug": "galada", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/galada/v14/H4cmBXyGmcjXlUX-8iw-4Lqggw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Galada" + } + ] + }, + { + "name": "Galdeano", + "fontFamily": "Galdeano, sans-serif", + "slug": "galdeano", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/galdeano/v22/uU9MCBoQ4YOqOW1boDPx8PCOg0uX.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Galdeano" + } + ] + }, + { + "name": "Galindo", + "fontFamily": "Galindo, system-ui", + "slug": "galindo", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/galindo/v20/HI_KiYMeLqVKqwyuQ5HiRp-dhpQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Galindo" + } + ] + }, + { + "name": "Gamja Flower", + "fontFamily": "Gamja Flower, cursive", + "slug": "gamja-flower", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gamjaflower/v20/6NUR8FiKJg-Pa0rM6uN40Z4kyf9Fdty2ew.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Gamja Flower" + } + ] + }, + { + "name": "Gantari", + "fontFamily": "Gantari, sans-serif", + "slug": "gantari", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gantari/v1/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g0gOz3wa5GD2qnm.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Gantari" + }, + { + "src": "http://fonts.gstatic.com/s/gantari/v1/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g2gOj3wa5GD2qnm.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Gantari" + }, + { + "src": "http://fonts.gstatic.com/s/gantari/v1/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g1-Oj3wa5GD2qnm.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Gantari" + }, + { + "src": "http://fonts.gstatic.com/s/gantari/v1/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g0gOj3wa5GD2qnm.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Gantari" + }, + { + "src": "http://fonts.gstatic.com/s/gantari/v1/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g0SOj3wa5GD2qnm.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Gantari" + }, + { + "src": "http://fonts.gstatic.com/s/gantari/v1/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g3-PT3wa5GD2qnm.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Gantari" + }, + { + "src": "http://fonts.gstatic.com/s/gantari/v1/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g3HPT3wa5GD2qnm.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Gantari" + }, + { + "src": "http://fonts.gstatic.com/s/gantari/v1/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g2gPT3wa5GD2qnm.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Gantari" + }, + { + "src": "http://fonts.gstatic.com/s/gantari/v1/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g2JPT3wa5GD2qnm.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Gantari" + }, + { + "src": "http://fonts.gstatic.com/s/gantari/v1/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoedWyYZWh37nmpWc.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Gantari" + }, + { + "src": "http://fonts.gstatic.com/s/gantari/v1/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoeVWzYZWh37nmpWc.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Gantari" + }, + { + "src": "http://fonts.gstatic.com/s/gantari/v1/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoeYuzYZWh37nmpWc.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Gantari" + }, + { + "src": "http://fonts.gstatic.com/s/gantari/v1/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoedWzYZWh37nmpWc.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Gantari" + }, + { + "src": "http://fonts.gstatic.com/s/gantari/v1/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoeeezYZWh37nmpWc.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Gantari" + }, + { + "src": "http://fonts.gstatic.com/s/gantari/v1/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoeQu0YZWh37nmpWc.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Gantari" + }, + { + "src": "http://fonts.gstatic.com/s/gantari/v1/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoeTK0YZWh37nmpWc.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Gantari" + }, + { + "src": "http://fonts.gstatic.com/s/gantari/v1/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoeVW0YZWh37nmpWc.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Gantari" + }, + { + "src": "http://fonts.gstatic.com/s/gantari/v1/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoeXy0YZWh37nmpWc.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Gantari" + } + ] + }, + { + "name": "Gayathri", + "fontFamily": "Gayathri, sans-serif", + "slug": "gayathri", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gayathri/v15/MCoWzAb429DbBilWLLhc-pvSA_gA2W8.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Gayathri" + }, + { + "src": "http://fonts.gstatic.com/s/gayathri/v15/MCoQzAb429DbBilWLIA48J_wBugA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Gayathri" + }, + { + "src": "http://fonts.gstatic.com/s/gayathri/v15/MCoXzAb429DbBilWLLiE37v4LfQJwHbn.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Gayathri" + } + ] + }, + { + "name": "Gelasio", + "fontFamily": "Gelasio, serif", + "slug": "gelasio", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gelasio/v10/cIf9MaFfvUQxTTqSxCmrYGkHgIs.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Gelasio" + }, + { + "src": "http://fonts.gstatic.com/s/gelasio/v10/cIf_MaFfvUQxTTqS9CuhZEsCkIt9QQ.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Gelasio" + }, + { + "src": "http://fonts.gstatic.com/s/gelasio/v10/cIf4MaFfvUQxTTqS_N2CRGEsnIJkWL4.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Gelasio" + }, + { + "src": "http://fonts.gstatic.com/s/gelasio/v10/cIf6MaFfvUQxTTqS9CuZkGImmKBhSL7Y1Q.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Gelasio" + }, + { + "src": "http://fonts.gstatic.com/s/gelasio/v10/cIf4MaFfvUQxTTqS_PGFRGEsnIJkWL4.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Gelasio" + }, + { + "src": "http://fonts.gstatic.com/s/gelasio/v10/cIf6MaFfvUQxTTqS9CuZvGUmmKBhSL7Y1Q.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Gelasio" + }, + { + "src": "http://fonts.gstatic.com/s/gelasio/v10/cIf4MaFfvUQxTTqS_JWERGEsnIJkWL4.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Gelasio" + }, + { + "src": "http://fonts.gstatic.com/s/gelasio/v10/cIf6MaFfvUQxTTqS9CuZ2GQmmKBhSL7Y1Q.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Gelasio" + } + ] + }, + { + "name": "Gemunu Libre", + "fontFamily": "Gemunu Libre, sans-serif", + "slug": "gemunu-libre", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gemunulibre/v12/X7n34bQ6Cfy7jKGXVE_YlqnbEQAFP-PIuTCp05iJPvSLeMXPIWA.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Gemunu Libre" + }, + { + "src": "http://fonts.gstatic.com/s/gemunulibre/v12/X7n34bQ6Cfy7jKGXVE_YlqnbEQAFP-PIuTCp00aJPvSLeMXPIWA.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Gemunu Libre" + }, + { + "src": "http://fonts.gstatic.com/s/gemunulibre/v12/X7n34bQ6Cfy7jKGXVE_YlqnbEQAFP-PIuTCp0xiJPvSLeMXPIWA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Gemunu Libre" + }, + { + "src": "http://fonts.gstatic.com/s/gemunulibre/v12/X7n34bQ6Cfy7jKGXVE_YlqnbEQAFP-PIuTCp0yqJPvSLeMXPIWA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Gemunu Libre" + }, + { + "src": "http://fonts.gstatic.com/s/gemunulibre/v12/X7n34bQ6Cfy7jKGXVE_YlqnbEQAFP-PIuTCp08aOPvSLeMXPIWA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Gemunu Libre" + }, + { + "src": "http://fonts.gstatic.com/s/gemunulibre/v12/X7n34bQ6Cfy7jKGXVE_YlqnbEQAFP-PIuTCp0_-OPvSLeMXPIWA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Gemunu Libre" + }, + { + "src": "http://fonts.gstatic.com/s/gemunulibre/v12/X7n34bQ6Cfy7jKGXVE_YlqnbEQAFP-PIuTCp05iOPvSLeMXPIWA.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Gemunu Libre" + } + ] + }, + { + "name": "Genos", + "fontFamily": "Genos, sans-serif", + "slug": "genos", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/genos/v10/SlGNmQqPqpUOYTYjacb0Hc91fTwVqknorUK6K7ZsAg.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Genos" + }, + { + "src": "http://fonts.gstatic.com/s/genos/v10/SlGNmQqPqpUOYTYjacb0Hc91fTwVKkjorUK6K7ZsAg.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Genos" + }, + { + "src": "http://fonts.gstatic.com/s/genos/v10/SlGNmQqPqpUOYTYjacb0Hc91fTwV9EjorUK6K7ZsAg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Genos" + }, + { + "src": "http://fonts.gstatic.com/s/genos/v10/SlGNmQqPqpUOYTYjacb0Hc91fTwVqkjorUK6K7ZsAg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Genos" + }, + { + "src": "http://fonts.gstatic.com/s/genos/v10/SlGNmQqPqpUOYTYjacb0Hc91fTwVmEjorUK6K7ZsAg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Genos" + }, + { + "src": "http://fonts.gstatic.com/s/genos/v10/SlGNmQqPqpUOYTYjacb0Hc91fTwVdE_orUK6K7ZsAg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Genos" + }, + { + "src": "http://fonts.gstatic.com/s/genos/v10/SlGNmQqPqpUOYTYjacb0Hc91fTwVTU_orUK6K7ZsAg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Genos" + }, + { + "src": "http://fonts.gstatic.com/s/genos/v10/SlGNmQqPqpUOYTYjacb0Hc91fTwVKk_orUK6K7ZsAg.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Genos" + }, + { + "src": "http://fonts.gstatic.com/s/genos/v10/SlGNmQqPqpUOYTYjacb0Hc91fTwVA0_orUK6K7ZsAg.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Genos" + }, + { + "src": "http://fonts.gstatic.com/s/genos/v10/SlGPmQqPqpUOYRwqWzksdKTv0zsAYgsA70i-CbN8Ard7.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Genos" + }, + { + "src": "http://fonts.gstatic.com/s/genos/v10/SlGPmQqPqpUOYRwqWzksdKTv0zsAYguA7ki-CbN8Ard7.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Genos" + }, + { + "src": "http://fonts.gstatic.com/s/genos/v10/SlGPmQqPqpUOYRwqWzksdKTv0zsAYgte7ki-CbN8Ard7.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Genos" + }, + { + "src": "http://fonts.gstatic.com/s/genos/v10/SlGPmQqPqpUOYRwqWzksdKTv0zsAYgsA7ki-CbN8Ard7.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Genos" + }, + { + "src": "http://fonts.gstatic.com/s/genos/v10/SlGPmQqPqpUOYRwqWzksdKTv0zsAYgsy7ki-CbN8Ard7.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Genos" + }, + { + "src": "http://fonts.gstatic.com/s/genos/v10/SlGPmQqPqpUOYRwqWzksdKTv0zsAYgve6Ui-CbN8Ard7.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Genos" + }, + { + "src": "http://fonts.gstatic.com/s/genos/v10/SlGPmQqPqpUOYRwqWzksdKTv0zsAYgvn6Ui-CbN8Ard7.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Genos" + }, + { + "src": "http://fonts.gstatic.com/s/genos/v10/SlGPmQqPqpUOYRwqWzksdKTv0zsAYguA6Ui-CbN8Ard7.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Genos" + }, + { + "src": "http://fonts.gstatic.com/s/genos/v10/SlGPmQqPqpUOYRwqWzksdKTv0zsAYgup6Ui-CbN8Ard7.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Genos" + } + ] + }, + { + "name": "Gentium Book Plus", + "fontFamily": "Gentium Book Plus, serif", + "slug": "gentium-book-plus", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gentiumbookplus/v1/vEFL2-RHBgUK5fbjKxRpbBtJPyRpofKfdbLOrdPV.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Gentium Book Plus" + }, + { + "src": "http://fonts.gstatic.com/s/gentiumbookplus/v1/vEFN2-RHBgUK5fbjKxRpbBtJPyRpocKdf7bsqMPVZb4.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Gentium Book Plus" + }, + { + "src": "http://fonts.gstatic.com/s/gentiumbookplus/v1/vEFO2-RHBgUK5fbjKxRpbBtJPyRpocojWpbGhs_cfKe1.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Gentium Book Plus" + }, + { + "src": "http://fonts.gstatic.com/s/gentiumbookplus/v1/vEFA2-RHBgUK5fbjKxRpbBtJPyRpocKdRwrDjMv-ebe1Els.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Gentium Book Plus" + } + ] + }, + { + "name": "Gentium Plus", + "fontFamily": "Gentium Plus, serif", + "slug": "gentium-plus", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gentiumplus/v2/Iurd6Ytw-oSPaZ00r2bNe8VpjJtM6G0t9w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Gentium Plus" + }, + { + "src": "http://fonts.gstatic.com/s/gentiumplus/v2/IurD6Ytw-oSPaZ00r2bNe8VZjpFIymg9957e.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Gentium Plus" + }, + { + "src": "http://fonts.gstatic.com/s/gentiumplus/v2/IurC6Ytw-oSPaZ00r2bNe8VRMLRo4EYx_ofHsw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Gentium Plus" + }, + { + "src": "http://fonts.gstatic.com/s/gentiumplus/v2/IurA6Ytw-oSPaZ00r2bNe8VZjqn05Uw13ILXs-h6.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Gentium Plus" + } + ] + }, + { + "name": "Geo", + "fontFamily": "Geo, sans-serif", + "slug": "geo", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/geo/v19/CSRz4zRZlufVL3BmQjlCbQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Geo" + }, + { + "src": "http://fonts.gstatic.com/s/geo/v19/CSRx4zRZluflLXpiYDxSbf8r.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Geo" + } + ] + }, + { + "name": "Geologica", + "fontFamily": "Geologica, sans-serif", + "slug": "geologica", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/geologica/v1/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqDx_qQ-MYAXWnqFs.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Geologica" + }, + { + "src": "http://fonts.gstatic.com/s/geologica/v1/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqD5_rQ-MYAXWnqFs.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Geologica" + }, + { + "src": "http://fonts.gstatic.com/s/geologica/v1/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqD0HrQ-MYAXWnqFs.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Geologica" + }, + { + "src": "http://fonts.gstatic.com/s/geologica/v1/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqDx_rQ-MYAXWnqFs.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Geologica" + }, + { + "src": "http://fonts.gstatic.com/s/geologica/v1/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqDy3rQ-MYAXWnqFs.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Geologica" + }, + { + "src": "http://fonts.gstatic.com/s/geologica/v1/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqD8HsQ-MYAXWnqFs.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Geologica" + }, + { + "src": "http://fonts.gstatic.com/s/geologica/v1/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqD_jsQ-MYAXWnqFs.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Geologica" + }, + { + "src": "http://fonts.gstatic.com/s/geologica/v1/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqD5_sQ-MYAXWnqFs.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Geologica" + }, + { + "src": "http://fonts.gstatic.com/s/geologica/v1/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqD7bsQ-MYAXWnqFs.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Geologica" + } + ] + }, + { + "name": "Georama", + "fontFamily": "Georama, sans-serif", + "slug": "georama", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/georama/v8/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5GvktmQsL5_tgbg.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Georama" + }, + { + "src": "http://fonts.gstatic.com/s/georama/v8/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5mvgtmQsL5_tgbg.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Georama" + }, + { + "src": "http://fonts.gstatic.com/s/georama/v8/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5RPgtmQsL5_tgbg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Georama" + }, + { + "src": "http://fonts.gstatic.com/s/georama/v8/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5GvgtmQsL5_tgbg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Georama" + }, + { + "src": "http://fonts.gstatic.com/s/georama/v8/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5KPgtmQsL5_tgbg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Georama" + }, + { + "src": "http://fonts.gstatic.com/s/georama/v8/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5xP8tmQsL5_tgbg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Georama" + }, + { + "src": "http://fonts.gstatic.com/s/georama/v8/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5_f8tmQsL5_tgbg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Georama" + }, + { + "src": "http://fonts.gstatic.com/s/georama/v8/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5mv8tmQsL5_tgbg.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Georama" + }, + { + "src": "http://fonts.gstatic.com/s/georama/v8/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5s_8tmQsL5_tgbg.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Georama" + }, + { + "src": "http://fonts.gstatic.com/s/georama/v8/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rvF2wEPxf5wbh3T.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Georama" + }, + { + "src": "http://fonts.gstatic.com/s/georama/v8/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rtF2gEPxf5wbh3T.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Georama" + }, + { + "src": "http://fonts.gstatic.com/s/georama/v8/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rub2gEPxf5wbh3T.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Georama" + }, + { + "src": "http://fonts.gstatic.com/s/georama/v8/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rvF2gEPxf5wbh3T.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Georama" + }, + { + "src": "http://fonts.gstatic.com/s/georama/v8/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rv32gEPxf5wbh3T.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Georama" + }, + { + "src": "http://fonts.gstatic.com/s/georama/v8/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rsb3QEPxf5wbh3T.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Georama" + }, + { + "src": "http://fonts.gstatic.com/s/georama/v8/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rsi3QEPxf5wbh3T.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Georama" + }, + { + "src": "http://fonts.gstatic.com/s/georama/v8/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rtF3QEPxf5wbh3T.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Georama" + }, + { + "src": "http://fonts.gstatic.com/s/georama/v8/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rts3QEPxf5wbh3T.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Georama" + } + ] + }, + { + "name": "Geostar", + "fontFamily": "Geostar, system-ui", + "slug": "geostar", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/geostar/v22/sykz-yx4n701VLOftSq9-trEvlQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Geostar" + } + ] + }, + { + "name": "Geostar Fill", + "fontFamily": "Geostar Fill, system-ui", + "slug": "geostar-fill", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/geostarfill/v22/AMOWz4SWuWiXFfjEohxQ9os0U1K2w9lb4g.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Geostar Fill" + } + ] + }, + { + "name": "Germania One", + "fontFamily": "Germania One, system-ui", + "slug": "germania-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/germaniaone/v20/Fh4yPjrqIyv2ucM2qzBjeS3ezAJONau6ew.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Germania One" + } + ] + }, + { + "name": "Gideon Roman", + "fontFamily": "Gideon Roman, system-ui", + "slug": "gideon-roman", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gideonroman/v8/e3tmeuGrVOys8sxzZgWlmXoge0PWovdU4w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Gideon Roman" + } + ] + }, + { + "name": "Gidugu", + "fontFamily": "Gidugu, sans-serif", + "slug": "gidugu", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gidugu/v21/L0x8DFMkk1Uf6w3RvPCmRSlUig.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Gidugu" + } + ] + }, + { + "name": "Gilda Display", + "fontFamily": "Gilda Display, serif", + "slug": "gilda-display", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gildadisplay/v14/t5tmIRoYMoaYG0WEOh7HwMeR7TnFrpOHYh4.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Gilda Display" + } + ] + }, + { + "name": "Girassol", + "fontFamily": "Girassol, system-ui", + "slug": "girassol", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/girassol/v17/JTUUjIo_-DK48laaNC9Nz2pJzxbi.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Girassol" + } + ] + }, + { + "name": "Give You Glory", + "fontFamily": "Give You Glory, cursive", + "slug": "give-you-glory", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/giveyouglory/v15/8QIQdiHOgt3vv4LR7ahjw9-XYc1zB4ZD6rwa.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Give You Glory" + } + ] + }, + { + "name": "Glass Antiqua", + "fontFamily": "Glass Antiqua, system-ui", + "slug": "glass-antiqua", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/glassantiqua/v20/xfu30Wr0Wn3NOQM2piC0uXOjnL_wN6fRUkY.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Glass Antiqua" + } + ] + }, + { + "name": "Glegoo", + "fontFamily": "Glegoo, serif", + "slug": "glegoo", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/glegoo/v14/_Xmt-HQyrTKWaw2Ji6mZAI91xw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Glegoo" + }, + { + "src": "http://fonts.gstatic.com/s/glegoo/v14/_Xmu-HQyrTKWaw2xN4a9CKRpzimMsg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Glegoo" + } + ] + }, + { + "name": "Gloock", + "fontFamily": "Gloock, serif", + "slug": "gloock", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gloock/v2/Iurb6YFw84WUY4N5jxylBrdRjQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Gloock" + } + ] + }, + { + "name": "Gloria Hallelujah", + "fontFamily": "Gloria Hallelujah, cursive", + "slug": "gloria-hallelujah", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gloriahallelujah/v17/LYjYdHv3kUk9BMV96EIswT9DIbW-MLSy3TKEvkCF.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Gloria Hallelujah" + } + ] + }, + { + "name": "Glory", + "fontFamily": "Glory, sans-serif", + "slug": "glory", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/glory/v13/q5uasoi9Lf1w5t3Est24nq9blIRQwIiDpn-dDi9EOQ.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Glory" + }, + { + "src": "http://fonts.gstatic.com/s/glory/v13/q5uasoi9Lf1w5t3Est24nq9blIRQQImDpn-dDi9EOQ.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Glory" + }, + { + "src": "http://fonts.gstatic.com/s/glory/v13/q5uasoi9Lf1w5t3Est24nq9blIRQnomDpn-dDi9EOQ.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Glory" + }, + { + "src": "http://fonts.gstatic.com/s/glory/v13/q5uasoi9Lf1w5t3Est24nq9blIRQwImDpn-dDi9EOQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Glory" + }, + { + "src": "http://fonts.gstatic.com/s/glory/v13/q5uasoi9Lf1w5t3Est24nq9blIRQ8omDpn-dDi9EOQ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Glory" + }, + { + "src": "http://fonts.gstatic.com/s/glory/v13/q5uasoi9Lf1w5t3Est24nq9blIRQHo6Dpn-dDi9EOQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Glory" + }, + { + "src": "http://fonts.gstatic.com/s/glory/v13/q5uasoi9Lf1w5t3Est24nq9blIRQJ46Dpn-dDi9EOQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Glory" + }, + { + "src": "http://fonts.gstatic.com/s/glory/v13/q5uasoi9Lf1w5t3Est24nq9blIRQQI6Dpn-dDi9EOQ.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Glory" + }, + { + "src": "http://fonts.gstatic.com/s/glory/v13/q5uYsoi9Lf1w5vfNgCJg98TBOoNFCMpr5HWZLCpUOaM6.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Glory" + }, + { + "src": "http://fonts.gstatic.com/s/glory/v13/q5uYsoi9Lf1w5vfNgCJg98TBOoNFCMrr5XWZLCpUOaM6.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Glory" + }, + { + "src": "http://fonts.gstatic.com/s/glory/v13/q5uYsoi9Lf1w5vfNgCJg98TBOoNFCMo15XWZLCpUOaM6.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Glory" + }, + { + "src": "http://fonts.gstatic.com/s/glory/v13/q5uYsoi9Lf1w5vfNgCJg98TBOoNFCMpr5XWZLCpUOaM6.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Glory" + }, + { + "src": "http://fonts.gstatic.com/s/glory/v13/q5uYsoi9Lf1w5vfNgCJg98TBOoNFCMpZ5XWZLCpUOaM6.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Glory" + }, + { + "src": "http://fonts.gstatic.com/s/glory/v13/q5uYsoi9Lf1w5vfNgCJg98TBOoNFCMq14nWZLCpUOaM6.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Glory" + }, + { + "src": "http://fonts.gstatic.com/s/glory/v13/q5uYsoi9Lf1w5vfNgCJg98TBOoNFCMqM4nWZLCpUOaM6.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Glory" + }, + { + "src": "http://fonts.gstatic.com/s/glory/v13/q5uYsoi9Lf1w5vfNgCJg98TBOoNFCMrr4nWZLCpUOaM6.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Glory" + } + ] + }, + { + "name": "Gluten", + "fontFamily": "Gluten, system-ui", + "slug": "gluten", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gluten/v10/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8Vb7B1Luni7ciJh.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Gluten" + }, + { + "src": "http://fonts.gstatic.com/s/gluten/v10/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8Xb7R1Luni7ciJh.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Gluten" + }, + { + "src": "http://fonts.gstatic.com/s/gluten/v10/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8UF7R1Luni7ciJh.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Gluten" + }, + { + "src": "http://fonts.gstatic.com/s/gluten/v10/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8Vb7R1Luni7ciJh.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Gluten" + }, + { + "src": "http://fonts.gstatic.com/s/gluten/v10/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8Vp7R1Luni7ciJh.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Gluten" + }, + { + "src": "http://fonts.gstatic.com/s/gluten/v10/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8WF6h1Luni7ciJh.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Gluten" + }, + { + "src": "http://fonts.gstatic.com/s/gluten/v10/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8W86h1Luni7ciJh.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Gluten" + }, + { + "src": "http://fonts.gstatic.com/s/gluten/v10/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8Xb6h1Luni7ciJh.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Gluten" + }, + { + "src": "http://fonts.gstatic.com/s/gluten/v10/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8Xy6h1Luni7ciJh.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Gluten" + } + ] + }, + { + "name": "Goblin One", + "fontFamily": "Goblin One, system-ui", + "slug": "goblin-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/goblinone/v22/CSR64z1ZnOqZRjRCBVY_TOcATNt_pOU.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Goblin One" + } + ] + }, + { + "name": "Gochi Hand", + "fontFamily": "Gochi Hand, cursive", + "slug": "gochi-hand", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gochihand/v19/hES06XlsOjtJsgCkx1PkTo71-n0nXWA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Gochi Hand" + } + ] + }, + { + "name": "Goldman", + "fontFamily": "Goldman, system-ui", + "slug": "goldman", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/goldman/v16/pe0uMIWbN4JFplR2LDJ4Bt-7G98.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Goldman" + }, + { + "src": "http://fonts.gstatic.com/s/goldman/v16/pe0rMIWbN4JFplR2FI5XIteQB9Zra1U.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Goldman" + } + ] + }, + { + "name": "Golos Text", + "fontFamily": "Golos Text, sans-serif", + "slug": "golos-text", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/golostext/v4/q5uXsoe9Lv5t7Meb31EcOR9UdVTNs822plVRRQ5cEr8zXcyx.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Golos Text" + }, + { + "src": "http://fonts.gstatic.com/s/golostext/v4/q5uXsoe9Lv5t7Meb31EcOR9UdVTNs822plVjRQ5cEr8zXcyx.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Golos Text" + }, + { + "src": "http://fonts.gstatic.com/s/golostext/v4/q5uXsoe9Lv5t7Meb31EcOR9UdVTNs822plWPQg5cEr8zXcyx.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Golos Text" + }, + { + "src": "http://fonts.gstatic.com/s/golostext/v4/q5uXsoe9Lv5t7Meb31EcOR9UdVTNs822plW2Qg5cEr8zXcyx.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Golos Text" + }, + { + "src": "http://fonts.gstatic.com/s/golostext/v4/q5uXsoe9Lv5t7Meb31EcOR9UdVTNs822plXRQg5cEr8zXcyx.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Golos Text" + }, + { + "src": "http://fonts.gstatic.com/s/golostext/v4/q5uXsoe9Lv5t7Meb31EcOR9UdVTNs822plX4Qg5cEr8zXcyx.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Golos Text" + } + ] + }, + { + "name": "Gorditas", + "fontFamily": "Gorditas, system-ui", + "slug": "gorditas", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gorditas/v20/ll8_K2aTVD26DsPEtQDoDa4AlxYb.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Gorditas" + }, + { + "src": "http://fonts.gstatic.com/s/gorditas/v20/ll84K2aTVD26DsPEtThUIooIvAoShA1i.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Gorditas" + } + ] + }, + { + "name": "Gothic A1", + "fontFamily": "Gothic A1, sans-serif", + "slug": "gothic-a1", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gothica1/v13/CSR74z5ZnPydRjlCCwlCCMcqYtd2vfwk.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Gothic A1" + }, + { + "src": "http://fonts.gstatic.com/s/gothica1/v13/CSR44z5ZnPydRjlCCwlCpOYKSPl6tOU9Eg.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Gothic A1" + }, + { + "src": "http://fonts.gstatic.com/s/gothica1/v13/CSR44z5ZnPydRjlCCwlCwOUKSPl6tOU9Eg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Gothic A1" + }, + { + "src": "http://fonts.gstatic.com/s/gothica1/v13/CSR94z5ZnPydRjlCCwl6bM0uQNJmvQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Gothic A1" + }, + { + "src": "http://fonts.gstatic.com/s/gothica1/v13/CSR44z5ZnPydRjlCCwlCmOQKSPl6tOU9Eg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Gothic A1" + }, + { + "src": "http://fonts.gstatic.com/s/gothica1/v13/CSR44z5ZnPydRjlCCwlCtOMKSPl6tOU9Eg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Gothic A1" + }, + { + "src": "http://fonts.gstatic.com/s/gothica1/v13/CSR44z5ZnPydRjlCCwlC0OIKSPl6tOU9Eg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Gothic A1" + }, + { + "src": "http://fonts.gstatic.com/s/gothica1/v13/CSR44z5ZnPydRjlCCwlCzOEKSPl6tOU9Eg.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Gothic A1" + }, + { + "src": "http://fonts.gstatic.com/s/gothica1/v13/CSR44z5ZnPydRjlCCwlC6OAKSPl6tOU9Eg.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Gothic A1" + } + ] + }, + { + "name": "Gotu", + "fontFamily": "Gotu, sans-serif", + "slug": "gotu", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gotu/v14/o-0FIpksx3QOlH0Lioh6-hU.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Gotu" + } + ] + }, + { + "name": "Goudy Bookletter 1911", + "fontFamily": "Goudy Bookletter 1911, serif", + "slug": "goudy-bookletter-1911", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/goudybookletter1911/v15/sykt-z54laciWfKv-kX8krex0jDiD2HbY6I5tRbXZ4IXAA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Goudy Bookletter 1911" + } + ] + }, + { + "name": "Gowun Batang", + "fontFamily": "Gowun Batang, serif", + "slug": "gowun-batang", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gowunbatang/v7/ijwSs5nhRMIjYsdSgcMa3wRhXLH-yuAtLw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Gowun Batang" + }, + { + "src": "http://fonts.gstatic.com/s/gowunbatang/v7/ijwNs5nhRMIjYsdSgcMa3wRZ4J7awssxJii23w.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Gowun Batang" + } + ] + }, + { + "name": "Gowun Dodum", + "fontFamily": "Gowun Dodum, sans-serif", + "slug": "gowun-dodum", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gowundodum/v7/3Jn5SD_00GqwlBnWc1TUJF0FfORL0fNy.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Gowun Dodum" + } + ] + }, + { + "name": "Graduate", + "fontFamily": "Graduate, system-ui", + "slug": "graduate", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/graduate/v13/C8cg4cs3o2n15t_2YxgR6X2NZAn2.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Graduate" + } + ] + }, + { + "name": "Grand Hotel", + "fontFamily": "Grand Hotel, cursive", + "slug": "grand-hotel", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/grandhotel/v14/7Au7p_IgjDKdCRWuR1azpmQNEl0O0kEx.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Grand Hotel" + } + ] + }, + { + "name": "Grandstander", + "fontFamily": "Grandstander, system-ui", + "slug": "grandstander", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD1-_D3jWttFGmQk.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Grandstander" + }, + { + "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD9--D3jWttFGmQk.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Grandstander" + }, + { + "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQDwG-D3jWttFGmQk.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Grandstander" + }, + { + "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD1--D3jWttFGmQk.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Grandstander" + }, + { + "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD22-D3jWttFGmQk.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Grandstander" + }, + { + "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD4G5D3jWttFGmQk.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Grandstander" + }, + { + "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD7i5D3jWttFGmQk.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Grandstander" + }, + { + "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD9-5D3jWttFGmQk.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Grandstander" + }, + { + "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD_a5D3jWttFGmQk.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Grandstander" + }, + { + "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf95zrcsvNDiQlBYQ.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Grandstander" + }, + { + "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf9ZzvcsvNDiQlBYQ.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Grandstander" + }, + { + "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf9uTvcsvNDiQlBYQ.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Grandstander" + }, + { + "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf95zvcsvNDiQlBYQ.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Grandstander" + }, + { + "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf91TvcsvNDiQlBYQ.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Grandstander" + }, + { + "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf9OTzcsvNDiQlBYQ.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Grandstander" + }, + { + "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf9ADzcsvNDiQlBYQ.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Grandstander" + }, + { + "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf9ZzzcsvNDiQlBYQ.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Grandstander" + }, + { + "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf9TjzcsvNDiQlBYQ.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Grandstander" + } + ] + }, + { + "name": "Grape Nuts", + "fontFamily": "Grape Nuts, cursive", + "slug": "grape-nuts", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/grapenuts/v2/syk2-yF4iLM2RfKj4F7k3tLvol2RN1E.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Grape Nuts" + } + ] + }, + { + "name": "Gravitas One", + "fontFamily": "Gravitas One, system-ui", + "slug": "gravitas-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gravitasone/v15/5h1diZ4hJ3cblKy3LWakKQmaDWRNr3DzbQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Gravitas One" + } + ] + }, + { + "name": "Great Vibes", + "fontFamily": "Great Vibes, cursive", + "slug": "great-vibes", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/greatvibes/v15/RWmMoKWR9v4ksMfaWd_JN-XCg6UKDXlq.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Great Vibes" + } + ] + }, + { + "name": "Grechen Fuemen", + "fontFamily": "Grechen Fuemen, cursive", + "slug": "grechen-fuemen", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/grechenfuemen/v7/vEFI2_tHEQ4d5ObgKxBzZh0MAWgc-NaXXq7H.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Grechen Fuemen" + } + ] + }, + { + "name": "Grenze", + "fontFamily": "Grenze, serif", + "slug": "grenze", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZRFGb7hR12BxqPm2IjuAkalnmd.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Grenze" + }, + { + "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZXFGb7hR12BxqH_VpHsg04k2md0kI.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Grenze" + }, + { + "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZQFGb7hR12BxqPN0MDkicWn2CEyw.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Grenze" + }, + { + "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZWFGb7hR12BxqH_Vrrky0SvWWUy1uW.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Grenze" + }, + { + "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZQFGb7hR12BxqPU0ADkicWn2CEyw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Grenze" + }, + { + "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZWFGb7hR12BxqH_VqPkC0SvWWUy1uW.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Grenze" + }, + { + "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZTFGb7hR12Bxq3_2gnmgwKlg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Grenze" + }, + { + "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZRFGb7hR12BxqH_WIjuAkalnmd.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Grenze" + }, + { + "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZQFGb7hR12BxqPC0EDkicWn2CEyw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Grenze" + }, + { + "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZWFGb7hR12BxqH_VrXkS0SvWWUy1uW.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Grenze" + }, + { + "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZQFGb7hR12BxqPJ0YDkicWn2CEyw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Grenze" + }, + { + "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZWFGb7hR12BxqH_Vr7li0SvWWUy1uW.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Grenze" + }, + { + "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZQFGb7hR12BxqPQ0cDkicWn2CEyw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Grenze" + }, + { + "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZWFGb7hR12BxqH_Vqfly0SvWWUy1uW.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Grenze" + }, + { + "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZQFGb7hR12BxqPX0QDkicWn2CEyw.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Grenze" + }, + { + "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZWFGb7hR12BxqH_VqDlC0SvWWUy1uW.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Grenze" + }, + { + "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZQFGb7hR12BxqPe0UDkicWn2CEyw.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Grenze" + }, + { + "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZWFGb7hR12BxqH_VqnlS0SvWWUy1uW.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Grenze" + } + ] + }, + { + "name": "Grenze Gotisch", + "fontFamily": "Grenze Gotisch, system-ui", + "slug": "grenze-gotisch", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/grenzegotisch/v16/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5Lz5UcICdYPSd_w.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Grenze Gotisch" + }, + { + "src": "http://fonts.gstatic.com/s/grenzegotisch/v16/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5rz9UcICdYPSd_w.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Grenze Gotisch" + }, + { + "src": "http://fonts.gstatic.com/s/grenzegotisch/v16/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5cT9UcICdYPSd_w.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Grenze Gotisch" + }, + { + "src": "http://fonts.gstatic.com/s/grenzegotisch/v16/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5Lz9UcICdYPSd_w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Grenze Gotisch" + }, + { + "src": "http://fonts.gstatic.com/s/grenzegotisch/v16/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5HT9UcICdYPSd_w.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Grenze Gotisch" + }, + { + "src": "http://fonts.gstatic.com/s/grenzegotisch/v16/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i58ThUcICdYPSd_w.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Grenze Gotisch" + }, + { + "src": "http://fonts.gstatic.com/s/grenzegotisch/v16/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5yDhUcICdYPSd_w.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Grenze Gotisch" + }, + { + "src": "http://fonts.gstatic.com/s/grenzegotisch/v16/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5rzhUcICdYPSd_w.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Grenze Gotisch" + }, + { + "src": "http://fonts.gstatic.com/s/grenzegotisch/v16/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5hjhUcICdYPSd_w.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Grenze Gotisch" + } + ] + }, + { + "name": "Grey Qo", + "fontFamily": "Grey Qo, cursive", + "slug": "grey-qo", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/greyqo/v7/BXRrvF_Nmv_TyXxNDOtQ9Wf0QcE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Grey Qo" + } + ] + }, + { + "name": "Griffy", + "fontFamily": "Griffy, system-ui", + "slug": "griffy", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/griffy/v22/FwZa7-ox2FQh9kfwSNSEwM2zpA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Griffy" + } + ] + }, + { + "name": "Gruppo", + "fontFamily": "Gruppo, sans-serif", + "slug": "gruppo", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gruppo/v17/WwkfxPmzE06v_ZWFWXDAOIEQUQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Gruppo" + } + ] + }, + { + "name": "Gudea", + "fontFamily": "Gudea, sans-serif", + "slug": "gudea", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gudea/v15/neIFzCqgsI0mp-CP9IGON7Ez.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Gudea" + }, + { + "src": "http://fonts.gstatic.com/s/gudea/v15/neILzCqgsI0mp9CN_oWsMqEzSJQ.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Gudea" + }, + { + "src": "http://fonts.gstatic.com/s/gudea/v15/neIIzCqgsI0mp9gz26WGHK06UY30.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Gudea" + } + ] + }, + { + "name": "Gugi", + "fontFamily": "Gugi, system-ui", + "slug": "gugi", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gugi/v13/A2BVn5dXywshVA6A9DEfgqM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Gugi" + } + ] + }, + { + "name": "Gulzar", + "fontFamily": "Gulzar, serif", + "slug": "gulzar", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gulzar/v8/Wnz6HAc9eB3HB2ILYTwZqg_MPQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Gulzar" + } + ] + }, + { + "name": "Gupter", + "fontFamily": "Gupter, serif", + "slug": "gupter", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gupter/v14/2-cm9JNmxJqPO1QUYZa_Wu_lpA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Gupter" + }, + { + "src": "http://fonts.gstatic.com/s/gupter/v14/2-cl9JNmxJqPO1Qslb-bUsT5rZhaZg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Gupter" + }, + { + "src": "http://fonts.gstatic.com/s/gupter/v14/2-cl9JNmxJqPO1Qs3bmbUsT5rZhaZg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Gupter" + } + ] + }, + { + "name": "Gurajada", + "fontFamily": "Gurajada, serif", + "slug": "gurajada", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gurajada/v15/FwZY7-Qx308m-l-0Kd6A4sijpFu_.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Gurajada" + } + ] + }, + { + "name": "Gwendolyn", + "fontFamily": "Gwendolyn, cursive", + "slug": "gwendolyn", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/gwendolyn/v5/qkBXXvoO_M3CSss-d7ee5JRLkAXbMQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Gwendolyn" + }, + { + "src": "http://fonts.gstatic.com/s/gwendolyn/v5/qkBSXvoO_M3CSss-d7emWLtvmC7HONiSFQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Gwendolyn" + } + ] + }, + { + "name": "Habibi", + "fontFamily": "Habibi, serif", + "slug": "habibi", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/habibi/v21/CSR-4zFWkuqcTTNCShJeZOYySQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Habibi" + } + ] + }, + { + "name": "Hachi Maru Pop", + "fontFamily": "Hachi Maru Pop, cursive", + "slug": "hachi-maru-pop", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/hachimarupop/v17/HI_TiYoRLqpLrEiMAuO9Ysfz7rW1EM_btd8u.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Hachi Maru Pop" + } + ] + }, + { + "name": "Hahmlet", + "fontFamily": "Hahmlet, serif", + "slug": "hahmlet", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/hahmlet/v13/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RhKOdjobsO-aVxn.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Hahmlet" + }, + { + "src": "http://fonts.gstatic.com/s/hahmlet/v13/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RjKONjobsO-aVxn.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Hahmlet" + }, + { + "src": "http://fonts.gstatic.com/s/hahmlet/v13/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RgUONjobsO-aVxn.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Hahmlet" + }, + { + "src": "http://fonts.gstatic.com/s/hahmlet/v13/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RhKONjobsO-aVxn.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Hahmlet" + }, + { + "src": "http://fonts.gstatic.com/s/hahmlet/v13/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4Rh4ONjobsO-aVxn.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Hahmlet" + }, + { + "src": "http://fonts.gstatic.com/s/hahmlet/v13/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RiUP9jobsO-aVxn.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Hahmlet" + }, + { + "src": "http://fonts.gstatic.com/s/hahmlet/v13/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RitP9jobsO-aVxn.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Hahmlet" + }, + { + "src": "http://fonts.gstatic.com/s/hahmlet/v13/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RjKP9jobsO-aVxn.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Hahmlet" + }, + { + "src": "http://fonts.gstatic.com/s/hahmlet/v13/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RjjP9jobsO-aVxn.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Hahmlet" + } + ] + }, + { + "name": "Halant", + "fontFamily": "Halant, serif", + "slug": "halant", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/halant/v14/u-490qaujRI2Pbsvc_pCmwZqcwdRXg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Halant" + }, + { + "src": "http://fonts.gstatic.com/s/halant/v14/u-4-0qaujRI2PbsX39Jmky12eg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Halant" + }, + { + "src": "http://fonts.gstatic.com/s/halant/v14/u-490qaujRI2PbsvK_tCmwZqcwdRXg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Halant" + }, + { + "src": "http://fonts.gstatic.com/s/halant/v14/u-490qaujRI2PbsvB_xCmwZqcwdRXg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Halant" + }, + { + "src": "http://fonts.gstatic.com/s/halant/v14/u-490qaujRI2PbsvY_1CmwZqcwdRXg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Halant" + } + ] + }, + { + "name": "Hammersmith One", + "fontFamily": "Hammersmith One, sans-serif", + "slug": "hammersmith-one", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/hammersmithone/v17/qWcyB624q4L_C4jGQ9IK0O_dFlnbshsks4MRXw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Hammersmith One" + } + ] + }, + { + "name": "Hanalei", + "fontFamily": "Hanalei, system-ui", + "slug": "hanalei", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/hanalei/v23/E21n_dD8iufIjBRHXzgmVydREus.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Hanalei" + } + ] + }, + { + "name": "Hanalei Fill", + "fontFamily": "Hanalei Fill, system-ui", + "slug": "hanalei-fill", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/hanaleifill/v22/fC1mPYtObGbfyQznIaQzPQiMVwLBplm9aw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Hanalei Fill" + } + ] + }, + { + "name": "Handlee", + "fontFamily": "Handlee, cursive", + "slug": "handlee", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/handlee/v14/-F6xfjBsISg9aMakDmr6oilJ3ik.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Handlee" + } + ] + }, + { + "name": "Hanken Grotesk", + "fontFamily": "Hanken Grotesk, sans-serif", + "slug": "hanken-grotesk", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_Ncs2da4fpNzXhRKA.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Hanken Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_NcM2Za4fpNzXhRKA.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Hanken Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_Nc7WZa4fpNzXhRKA.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Hanken Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_Ncs2Za4fpNzXhRKA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Hanken Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_NcgWZa4fpNzXhRKA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Hanken Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_NcbWFa4fpNzXhRKA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Hanken Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_NcVGFa4fpNzXhRKA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Hanken Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_NcM2Fa4fpNzXhRKA.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Hanken Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_NcGmFa4fpNzXhRKA.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Hanken Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyWyo_BJ731BKMSK.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Hanken Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyUyovBJ731BKMSK.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Hanken Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyXsovBJ731BKMSK.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Hanken Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyWyovBJ731BKMSK.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Hanken Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyWAovBJ731BKMSK.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Hanken Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyVspfBJ731BKMSK.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Hanken Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyVVpfBJ731BKMSK.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Hanken Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyUypfBJ731BKMSK.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Hanken Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyUbpfBJ731BKMSK.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Hanken Grotesk" + } + ] + }, + { + "name": "Hanuman", + "fontFamily": "Hanuman, serif", + "slug": "hanuman", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/hanuman/v22/VuJzdNvD15HhpJJBQMLdPKNiaRpFvg.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Hanuman" + }, + { + "src": "http://fonts.gstatic.com/s/hanuman/v22/VuJ0dNvD15HhpJJBQAr_HIlMZRNcp0o.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Hanuman" + }, + { + "src": "http://fonts.gstatic.com/s/hanuman/v22/VuJxdNvD15HhpJJBeKbXOIFneRo.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Hanuman" + }, + { + "src": "http://fonts.gstatic.com/s/hanuman/v22/VuJ0dNvD15HhpJJBQBr4HIlMZRNcp0o.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Hanuman" + }, + { + "src": "http://fonts.gstatic.com/s/hanuman/v22/VuJ0dNvD15HhpJJBQCL6HIlMZRNcp0o.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Hanuman" + } + ] + }, + { + "name": "Happy Monkey", + "fontFamily": "Happy Monkey, system-ui", + "slug": "happy-monkey", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/happymonkey/v14/K2F2fZZcl-9SXwl5F_C4R_OABwD2bWqVjw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Happy Monkey" + } + ] + }, + { + "name": "Harmattan", + "fontFamily": "Harmattan, sans-serif", + "slug": "harmattan", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/harmattan/v19/goksH6L2DkFvVvRp9XpTS0CjkP1Yog.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Harmattan" + }, + { + "src": "http://fonts.gstatic.com/s/harmattan/v19/gokpH6L2DkFvVvRp9Xprv2mHmNZEq6TTFw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Harmattan" + }, + { + "src": "http://fonts.gstatic.com/s/harmattan/v19/gokpH6L2DkFvVvRp9Xprk26HmNZEq6TTFw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Harmattan" + }, + { + "src": "http://fonts.gstatic.com/s/harmattan/v19/gokpH6L2DkFvVvRp9Xpr92-HmNZEq6TTFw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Harmattan" + } + ] + }, + { + "name": "Headland One", + "fontFamily": "Headland One, serif", + "slug": "headland-one", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/headlandone/v16/yYLu0hHR2vKnp89Tk1TCq3Tx0PlTeZ3mJA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Headland One" + } + ] + }, + { + "name": "Heebo", + "fontFamily": "Heebo, sans-serif", + "slug": "heebo", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/heebo/v21/NGSpv5_NC0k9P_v6ZUCbLRAHxK1EiS2cckOnz02SXQ.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Heebo" + }, + { + "src": "http://fonts.gstatic.com/s/heebo/v21/NGSpv5_NC0k9P_v6ZUCbLRAHxK1ECSycckOnz02SXQ.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Heebo" + }, + { + "src": "http://fonts.gstatic.com/s/heebo/v21/NGSpv5_NC0k9P_v6ZUCbLRAHxK1E1yycckOnz02SXQ.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Heebo" + }, + { + "src": "http://fonts.gstatic.com/s/heebo/v21/NGSpv5_NC0k9P_v6ZUCbLRAHxK1EiSycckOnz02SXQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Heebo" + }, + { + "src": "http://fonts.gstatic.com/s/heebo/v21/NGSpv5_NC0k9P_v6ZUCbLRAHxK1EuyycckOnz02SXQ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Heebo" + }, + { + "src": "http://fonts.gstatic.com/s/heebo/v21/NGSpv5_NC0k9P_v6ZUCbLRAHxK1EVyucckOnz02SXQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Heebo" + }, + { + "src": "http://fonts.gstatic.com/s/heebo/v21/NGSpv5_NC0k9P_v6ZUCbLRAHxK1EbiucckOnz02SXQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Heebo" + }, + { + "src": "http://fonts.gstatic.com/s/heebo/v21/NGSpv5_NC0k9P_v6ZUCbLRAHxK1ECSucckOnz02SXQ.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Heebo" + }, + { + "src": "http://fonts.gstatic.com/s/heebo/v21/NGSpv5_NC0k9P_v6ZUCbLRAHxK1EICucckOnz02SXQ.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Heebo" + } + ] + }, + { + "name": "Henny Penny", + "fontFamily": "Henny Penny, system-ui", + "slug": "henny-penny", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/hennypenny/v17/wXKvE3UZookzsxz_kjGSfMQqt3M7tMDT.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Henny Penny" + } + ] + }, + { + "name": "Hepta Slab", + "fontFamily": "Hepta Slab, serif", + "slug": "hepta-slab", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/heptaslab/v21/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5HvkV5jfbY5B0NBkz.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Hepta Slab" + }, + { + "src": "http://fonts.gstatic.com/s/heptaslab/v21/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5HvmV5zfbY5B0NBkz.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Hepta Slab" + }, + { + "src": "http://fonts.gstatic.com/s/heptaslab/v21/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5HvlL5zfbY5B0NBkz.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Hepta Slab" + }, + { + "src": "http://fonts.gstatic.com/s/heptaslab/v21/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5HvkV5zfbY5B0NBkz.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Hepta Slab" + }, + { + "src": "http://fonts.gstatic.com/s/heptaslab/v21/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5Hvkn5zfbY5B0NBkz.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Hepta Slab" + }, + { + "src": "http://fonts.gstatic.com/s/heptaslab/v21/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5HvnL4DfbY5B0NBkz.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Hepta Slab" + }, + { + "src": "http://fonts.gstatic.com/s/heptaslab/v21/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5Hvny4DfbY5B0NBkz.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Hepta Slab" + }, + { + "src": "http://fonts.gstatic.com/s/heptaslab/v21/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5HvmV4DfbY5B0NBkz.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Hepta Slab" + }, + { + "src": "http://fonts.gstatic.com/s/heptaslab/v21/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5Hvm84DfbY5B0NBkz.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Hepta Slab" + } + ] + }, + { + "name": "Herr Von Muellerhoff", + "fontFamily": "Herr Von Muellerhoff, cursive", + "slug": "herr-von-muellerhoff", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/herrvonmuellerhoff/v16/WBL6rFjRZkREW8WqmCWYLgCkQKXb4CAft3c6_qJY3QPQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Herr Von Muellerhoff" + } + ] + }, + { + "name": "Hi Melody", + "fontFamily": "Hi Melody, cursive", + "slug": "hi-melody", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/himelody/v13/46ktlbP8Vnz0pJcqCTbEf29E31BBGA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Hi Melody" + } + ] + }, + { + "name": "Hina Mincho", + "fontFamily": "Hina Mincho, serif", + "slug": "hina-mincho", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/hinamincho/v9/2sDaZGBRhpXa2Jjz5w5LAGW8KbkVZTHR.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Hina Mincho" + } + ] + }, + { + "name": "Hind", + "fontFamily": "Hind, sans-serif", + "slug": "hind", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/hind/v16/5aU19_a8oxmIfMJaIRuYjDpf5Vw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Hind" + }, + { + "src": "http://fonts.gstatic.com/s/hind/v16/5aU69_a8oxmIRG5yBROzkDM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Hind" + }, + { + "src": "http://fonts.gstatic.com/s/hind/v16/5aU19_a8oxmIfJpbIRuYjDpf5Vw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Hind" + }, + { + "src": "http://fonts.gstatic.com/s/hind/v16/5aU19_a8oxmIfLZcIRuYjDpf5Vw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Hind" + }, + { + "src": "http://fonts.gstatic.com/s/hind/v16/5aU19_a8oxmIfNJdIRuYjDpf5Vw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Hind" + } + ] + }, + { + "name": "Hind Guntur", + "fontFamily": "Hind Guntur, sans-serif", + "slug": "hind-guntur", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/hindguntur/v12/wXKyE3UZrok56nvamSuJd_yGn1czn9zaj5Ju.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Hind Guntur" + }, + { + "src": "http://fonts.gstatic.com/s/hindguntur/v12/wXKvE3UZrok56nvamSuJd8Qqt3M7tMDT.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Hind Guntur" + }, + { + "src": "http://fonts.gstatic.com/s/hindguntur/v12/wXKyE3UZrok56nvamSuJd_zenlczn9zaj5Ju.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Hind Guntur" + }, + { + "src": "http://fonts.gstatic.com/s/hindguntur/v12/wXKyE3UZrok56nvamSuJd_zymVczn9zaj5Ju.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Hind Guntur" + }, + { + "src": "http://fonts.gstatic.com/s/hindguntur/v12/wXKyE3UZrok56nvamSuJd_yWmFczn9zaj5Ju.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Hind Guntur" + } + ] + }, + { + "name": "Hind Madurai", + "fontFamily": "Hind Madurai, sans-serif", + "slug": "hind-madurai", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/hindmadurai/v11/f0Xu0e2p98ZvDXdZQIOcpqjfXaUnecsoMJ0b_g.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Hind Madurai" + }, + { + "src": "http://fonts.gstatic.com/s/hindmadurai/v11/f0Xx0e2p98ZvDXdZQIOcpqjn8Y0DceA0OQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Hind Madurai" + }, + { + "src": "http://fonts.gstatic.com/s/hindmadurai/v11/f0Xu0e2p98ZvDXdZQIOcpqjfBaQnecsoMJ0b_g.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Hind Madurai" + }, + { + "src": "http://fonts.gstatic.com/s/hindmadurai/v11/f0Xu0e2p98ZvDXdZQIOcpqjfKaMnecsoMJ0b_g.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Hind Madurai" + }, + { + "src": "http://fonts.gstatic.com/s/hindmadurai/v11/f0Xu0e2p98ZvDXdZQIOcpqjfTaInecsoMJ0b_g.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Hind Madurai" + } + ] + }, + { + "name": "Hind Siliguri", + "fontFamily": "Hind Siliguri, sans-serif", + "slug": "hind-siliguri", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/hindsiliguri/v12/ijwOs5juQtsyLLR5jN4cxBEoRDf44uEfKiGvxts.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Hind Siliguri" + }, + { + "src": "http://fonts.gstatic.com/s/hindsiliguri/v12/ijwTs5juQtsyLLR5jN4cxBEofJvQxuk0Nig.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Hind Siliguri" + }, + { + "src": "http://fonts.gstatic.com/s/hindsiliguri/v12/ijwOs5juQtsyLLR5jN4cxBEoRG_54uEfKiGvxts.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Hind Siliguri" + }, + { + "src": "http://fonts.gstatic.com/s/hindsiliguri/v12/ijwOs5juQtsyLLR5jN4cxBEoREP-4uEfKiGvxts.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Hind Siliguri" + }, + { + "src": "http://fonts.gstatic.com/s/hindsiliguri/v12/ijwOs5juQtsyLLR5jN4cxBEoRCf_4uEfKiGvxts.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Hind Siliguri" + } + ] + }, + { + "name": "Hind Vadodara", + "fontFamily": "Hind Vadodara, sans-serif", + "slug": "hind-vadodara", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/hindvadodara/v13/neIQzCKvrIcn5pbuuuriV9tTSDn3iXM0oSOL2Yw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Hind Vadodara" + }, + { + "src": "http://fonts.gstatic.com/s/hindvadodara/v13/neINzCKvrIcn5pbuuuriV9tTcJXfrXsfvSo.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Hind Vadodara" + }, + { + "src": "http://fonts.gstatic.com/s/hindvadodara/v13/neIQzCKvrIcn5pbuuuriV9tTSGH2iXM0oSOL2Yw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Hind Vadodara" + }, + { + "src": "http://fonts.gstatic.com/s/hindvadodara/v13/neIQzCKvrIcn5pbuuuriV9tTSE3xiXM0oSOL2Yw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Hind Vadodara" + }, + { + "src": "http://fonts.gstatic.com/s/hindvadodara/v13/neIQzCKvrIcn5pbuuuriV9tTSCnwiXM0oSOL2Yw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Hind Vadodara" + } + ] + }, + { + "name": "Holtwood One SC", + "fontFamily": "Holtwood One SC, serif", + "slug": "holtwood-one-sc", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/holtwoodonesc/v16/yYLx0hLR0P-3vMFSk1TCq3Txg5B3cbb6LZttyg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Holtwood One SC" + } + ] + }, + { + "name": "Homemade Apple", + "fontFamily": "Homemade Apple, cursive", + "slug": "homemade-apple", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/homemadeapple/v18/Qw3EZQFXECDrI2q789EKQZJob3x9Vnksi4M7.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Homemade Apple" + } + ] + }, + { + "name": "Homenaje", + "fontFamily": "Homenaje, sans-serif", + "slug": "homenaje", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/homenaje/v16/FwZY7-Q-xVAi_l-6Ld6A4sijpFu_.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Homenaje" + } + ] + }, + { + "name": "Hubballi", + "fontFamily": "Hubballi, system-ui", + "slug": "hubballi", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/hubballi/v4/o-0JIpUj3WIZ1RFN56B7yBBNYuSF.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Hubballi" + } + ] + }, + { + "name": "Hurricane", + "fontFamily": "Hurricane, cursive", + "slug": "hurricane", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/hurricane/v5/pe0sMIuULZxTolZ5YldyAv2-C99ycg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Hurricane" + } + ] + }, + { + "name": "IBM Plex Mono", + "fontFamily": "IBM Plex Mono, monospace", + "slug": "ibm-plex-mono", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ibmplexmono/v19/-F6pfjptAgt5VM-kVkqdyU8n3kwq0n1hj-sNFQ.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "IBM Plex Mono" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexmono/v19/-F6rfjptAgt5VM-kVkqdyU8n1ioStndlre4dFcFh.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "IBM Plex Mono" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexmono/v19/-F6qfjptAgt5VM-kVkqdyU8n3uAL8ldPg-IUDNg.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "IBM Plex Mono" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexmono/v19/-F6sfjptAgt5VM-kVkqdyU8n1ioSGlZFh8ARHNh4zg.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "IBM Plex Mono" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexmono/v19/-F6qfjptAgt5VM-kVkqdyU8n3oQI8ldPg-IUDNg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "IBM Plex Mono" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexmono/v19/-F6sfjptAgt5VM-kVkqdyU8n1ioSflVFh8ARHNh4zg.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "IBM Plex Mono" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexmono/v19/-F63fjptAgt5VM-kVkqdyU8n5igg1l9kn-s.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "IBM Plex Mono" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexmono/v19/-F6pfjptAgt5VM-kVkqdyU8n1ioq0n1hj-sNFQ.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "IBM Plex Mono" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexmono/v19/-F6qfjptAgt5VM-kVkqdyU8n3twJ8ldPg-IUDNg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "IBM Plex Mono" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexmono/v19/-F6sfjptAgt5VM-kVkqdyU8n1ioSJlRFh8ARHNh4zg.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "IBM Plex Mono" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexmono/v19/-F6qfjptAgt5VM-kVkqdyU8n3vAO8ldPg-IUDNg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "IBM Plex Mono" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexmono/v19/-F6sfjptAgt5VM-kVkqdyU8n1ioSClNFh8ARHNh4zg.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "IBM Plex Mono" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexmono/v19/-F6qfjptAgt5VM-kVkqdyU8n3pQP8ldPg-IUDNg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "IBM Plex Mono" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexmono/v19/-F6sfjptAgt5VM-kVkqdyU8n1ioSblJFh8ARHNh4zg.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "IBM Plex Mono" + } + ] + }, + { + "name": "IBM Plex Sans", + "fontFamily": "IBM Plex Sans, sans-serif", + "slug": "ibm-plex-sans", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ibmplexsans/v19/zYX-KVElMYYaJe8bpLHnCwDKjbLeEKxIedbzDw.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsans/v19/zYX8KVElMYYaJe8bpLHnCwDKhdTmdKZMW9PjD3N8.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "IBM Plex Sans" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsans/v19/zYX9KVElMYYaJe8bpLHnCwDKjR7_MIZmdd_qFmo.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsans/v19/zYX7KVElMYYaJe8bpLHnCwDKhdTm2Idscf3vBmpl8A.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "IBM Plex Sans" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsans/v19/zYX9KVElMYYaJe8bpLHnCwDKjXr8MIZmdd_qFmo.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsans/v19/zYX7KVElMYYaJe8bpLHnCwDKhdTmvIRscf3vBmpl8A.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "IBM Plex Sans" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsans/v19/zYXgKVElMYYaJe8bpLHnCwDKtdbUFI5NadY.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsans/v19/zYX-KVElMYYaJe8bpLHnCwDKhdTeEKxIedbzDw.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "IBM Plex Sans" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsans/v19/zYX9KVElMYYaJe8bpLHnCwDKjSL9MIZmdd_qFmo.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsans/v19/zYX7KVElMYYaJe8bpLHnCwDKhdTm5IVscf3vBmpl8A.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "IBM Plex Sans" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsans/v19/zYX9KVElMYYaJe8bpLHnCwDKjQ76MIZmdd_qFmo.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsans/v19/zYX7KVElMYYaJe8bpLHnCwDKhdTmyIJscf3vBmpl8A.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "IBM Plex Sans" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsans/v19/zYX9KVElMYYaJe8bpLHnCwDKjWr7MIZmdd_qFmo.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsans/v19/zYX7KVElMYYaJe8bpLHnCwDKhdTmrINscf3vBmpl8A.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "IBM Plex Sans" + } + ] + }, + { + "name": "IBM Plex Sans Arabic", + "fontFamily": "IBM Plex Sans Arabic, sans-serif", + "slug": "ibm-plex-sans-arabic", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ibmplexsansarabic/v12/Qw3MZRtWPQCuHme67tEYUIx3Kh0PHR9N6YNe3PC5eMlAMg0.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Arabic" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsansarabic/v12/Qw3NZRtWPQCuHme67tEYUIx3Kh0PHR9N6YPy_dCTVsVJKxTs.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Arabic" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsansarabic/v12/Qw3NZRtWPQCuHme67tEYUIx3Kh0PHR9N6YOW_tCTVsVJKxTs.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Arabic" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsansarabic/v12/Qw3CZRtWPQCuHme67tEYUIx3Kh0PHR9N6bs61vSbfdlA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Arabic" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsansarabic/v12/Qw3NZRtWPQCuHme67tEYUIx3Kh0PHR9N6YPO_9CTVsVJKxTs.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Arabic" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsansarabic/v12/Qw3NZRtWPQCuHme67tEYUIx3Kh0PHR9N6YPi-NCTVsVJKxTs.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Arabic" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsansarabic/v12/Qw3NZRtWPQCuHme67tEYUIx3Kh0PHR9N6YOG-dCTVsVJKxTs.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Arabic" + } + ] + }, + { + "name": "IBM Plex Sans Condensed", + "fontFamily": "IBM Plex Sans Condensed, sans-serif", + "slug": "ibm-plex-sans-condensed", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8nN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHY7KyKvBgYsMDhM.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8hN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas8M_LhakJHhOgBg.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "IBM Plex Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8gN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHY5m6Yvrr4cFFwq5.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8iN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas8GPqpYMnEhq5H1w.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "IBM Plex Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8gN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHY4C6ovrr4cFFwq5.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8iN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas8AfppYMnEhq5H1w.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "IBM Plex Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8lN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHbauwq_jhJsM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8nN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYasyKvBgYsMDhM.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "IBM Plex Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8gN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHY5a64vrr4cFFwq5.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8iN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas8F_opYMnEhq5H1w.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "IBM Plex Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8gN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHY527Ivrr4cFFwq5.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8iN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas8HPvpYMnEhq5H1w.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "IBM Plex Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8gN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHY4S7Yvrr4cFFwq5.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8iN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas8BfupYMnEhq5H1w.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "IBM Plex Sans Condensed" + } + ] + }, + { + "name": "IBM Plex Sans Devanagari", + "fontFamily": "IBM Plex Sans Devanagari, sans-serif", + "slug": "ibm-plex-sans-devanagari", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ibmplexsansdevanagari/v11/XRXB3JCMvG4IDoS9SubXB6W-UX5iehIMBFR2-O_HMUjwUcjwCEQq.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Devanagari" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsansdevanagari/v11/XRXA3JCMvG4IDoS9SubXB6W-UX5iehIMBFR2-O_HnWnQe-b8AV0z0w.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Devanagari" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsansdevanagari/v11/XRXA3JCMvG4IDoS9SubXB6W-UX5iehIMBFR2-O_H-WrQe-b8AV0z0w.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Devanagari" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsansdevanagari/v11/XRXH3JCMvG4IDoS9SubXB6W-UX5iehIMBFR2-O__VUL0c83gCA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Devanagari" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsansdevanagari/v11/XRXA3JCMvG4IDoS9SubXB6W-UX5iehIMBFR2-O_HoWvQe-b8AV0z0w.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Devanagari" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsansdevanagari/v11/XRXA3JCMvG4IDoS9SubXB6W-UX5iehIMBFR2-O_HjWzQe-b8AV0z0w.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Devanagari" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsansdevanagari/v11/XRXA3JCMvG4IDoS9SubXB6W-UX5iehIMBFR2-O_H6W3Qe-b8AV0z0w.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Devanagari" + } + ] + }, + { + "name": "IBM Plex Sans Hebrew", + "fontFamily": "IBM Plex Sans Hebrew, sans-serif", + "slug": "ibm-plex-sans-hebrew", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ibmplexsanshebrew/v11/BCa4qYENg9Kw1mpLpO0bGM5lfHAAZHhDXEXB-l0VqDaM7C4.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Hebrew" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsanshebrew/v11/BCa5qYENg9Kw1mpLpO0bGM5lfHAAZHhDXEVt230_hjqF9Tc2.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Hebrew" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsanshebrew/v11/BCa5qYENg9Kw1mpLpO0bGM5lfHAAZHhDXEUJ2H0_hjqF9Tc2.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Hebrew" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsanshebrew/v11/BCa2qYENg9Kw1mpLpO0bGM5lfHAAZHhDXH2l8Fk3rSaM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Hebrew" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsanshebrew/v11/BCa5qYENg9Kw1mpLpO0bGM5lfHAAZHhDXEVR2X0_hjqF9Tc2.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Hebrew" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsanshebrew/v11/BCa5qYENg9Kw1mpLpO0bGM5lfHAAZHhDXEV93n0_hjqF9Tc2.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Hebrew" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsanshebrew/v11/BCa5qYENg9Kw1mpLpO0bGM5lfHAAZHhDXEUZ330_hjqF9Tc2.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Hebrew" + } + ] + }, + { + "name": "IBM Plex Sans JP", + "fontFamily": "IBM Plex Sans JP, sans-serif", + "slug": "ibm-plex-sans-jp", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ibmplexsansjp/v5/Z9XLDn9KbTDf6_f7dISNqYf_tvPT7E7yjPB7twdmHQ.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans JP" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsansjp/v5/Z9XKDn9KbTDf6_f7dISNqYf_tvPT7OLTrNpVuw5_BAM.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans JP" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsansjp/v5/Z9XKDn9KbTDf6_f7dISNqYf_tvPT7IbQrNpVuw5_BAM.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans JP" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsansjp/v5/Z9XNDn9KbTDf6_f7dISNqYf_tvPT1Cr4iNJ-pwc.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans JP" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsansjp/v5/Z9XKDn9KbTDf6_f7dISNqYf_tvPT7N7RrNpVuw5_BAM.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans JP" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsansjp/v5/Z9XKDn9KbTDf6_f7dISNqYf_tvPT7PLWrNpVuw5_BAM.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans JP" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsansjp/v5/Z9XKDn9KbTDf6_f7dISNqYf_tvPT7JbXrNpVuw5_BAM.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans JP" + } + ] + }, + { + "name": "IBM Plex Sans KR", + "fontFamily": "IBM Plex Sans KR, sans-serif", + "slug": "ibm-plex-sans-kr", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ibmplexsanskr/v10/vEFM2-VJISZe3O_rc3ZVYh4aTwNOyra_X5zCpMrMfA.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans KR" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsanskr/v10/vEFN2-VJISZe3O_rc3ZVYh4aTwNOyhqef7bsqMPVZb4.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans KR" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsanskr/v10/vEFN2-VJISZe3O_rc3ZVYh4aTwNOyn6df7bsqMPVZb4.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans KR" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsanskr/v10/vEFK2-VJISZe3O_rc3ZVYh4aTwNO8tK1W77HtMo.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans KR" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsanskr/v10/vEFN2-VJISZe3O_rc3ZVYh4aTwNOyiacf7bsqMPVZb4.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans KR" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsanskr/v10/vEFN2-VJISZe3O_rc3ZVYh4aTwNOygqbf7bsqMPVZb4.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans KR" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsanskr/v10/vEFN2-VJISZe3O_rc3ZVYh4aTwNOym6af7bsqMPVZb4.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans KR" + } + ] + }, + { + "name": "IBM Plex Sans Thai", + "fontFamily": "IBM Plex Sans Thai, sans-serif", + "slug": "ibm-plex-sans-thai", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ibmplexsansthai/v10/m8JNje1VVIzcq1HzJq2AEdo2Tj_qvLqEatYlR8ZKUqcX.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Thai" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsansthai/v10/m8JMje1VVIzcq1HzJq2AEdo2Tj_qvLqExvcFbehGW74OXw.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Thai" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsansthai/v10/m8JMje1VVIzcq1HzJq2AEdo2Tj_qvLqEovQFbehGW74OXw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Thai" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsansthai/v10/m8JPje1VVIzcq1HzJq2AEdo2Tj_qvLq8DtwhZcNaUg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Thai" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsansthai/v10/m8JMje1VVIzcq1HzJq2AEdo2Tj_qvLqE-vUFbehGW74OXw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Thai" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsansthai/v10/m8JMje1VVIzcq1HzJq2AEdo2Tj_qvLqE1vIFbehGW74OXw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Thai" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsansthai/v10/m8JMje1VVIzcq1HzJq2AEdo2Tj_qvLqEsvMFbehGW74OXw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Thai" + } + ] + }, + { + "name": "IBM Plex Sans Thai Looped", + "fontFamily": "IBM Plex Sans Thai Looped, sans-serif", + "slug": "ibm-plex-sans-thai-looped", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ibmplexsansthailooped/v11/tss5AoJJRAhL3BTrK3r2xxbFhvKfyBB6l7hHT30L_HaKpHOtFCQ76Q.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Thai Looped" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsansthailooped/v11/tss6AoJJRAhL3BTrK3r2xxbFhvKfyBB6l7hHT30L_NqrhFmDGC0i8Cc.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Thai Looped" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsansthailooped/v11/tss6AoJJRAhL3BTrK3r2xxbFhvKfyBB6l7hHT30L_L6ohFmDGC0i8Cc.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Thai Looped" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsansthailooped/v11/tss_AoJJRAhL3BTrK3r2xxbFhvKfyBB6l7hHT30LxBKAoFGoBCQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Thai Looped" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsansthailooped/v11/tss6AoJJRAhL3BTrK3r2xxbFhvKfyBB6l7hHT30L_OaphFmDGC0i8Cc.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Thai Looped" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsansthailooped/v11/tss6AoJJRAhL3BTrK3r2xxbFhvKfyBB6l7hHT30L_MquhFmDGC0i8Cc.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Thai Looped" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexsansthailooped/v11/tss6AoJJRAhL3BTrK3r2xxbFhvKfyBB6l7hHT30L_K6vhFmDGC0i8Cc.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "IBM Plex Sans Thai Looped" + } + ] + }, + { + "name": "IBM Plex Serif", + "fontFamily": "IBM Plex Serif, serif", + "slug": "ibm-plex-serif", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ibmplexserif/v19/jizBREVNn1dOx-zrZ2X3pZvkTi182zIZj1bIkNo.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "IBM Plex Serif" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexserif/v19/jizHREVNn1dOx-zrZ2X3pZvkTiUa41YTi3TNgNq55w.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "IBM Plex Serif" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexserif/v19/jizAREVNn1dOx-zrZ2X3pZvkTi3Q-hIzoVrBicOg.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "IBM Plex Serif" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexserif/v19/jizGREVNn1dOx-zrZ2X3pZvkTiUa4_oyq17jjNOg_oc.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "IBM Plex Serif" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexserif/v19/jizAREVNn1dOx-zrZ2X3pZvkTi20-RIzoVrBicOg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "IBM Plex Serif" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexserif/v19/jizGREVNn1dOx-zrZ2X3pZvkTiUa454xq17jjNOg_oc.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "IBM Plex Serif" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexserif/v19/jizDREVNn1dOx-zrZ2X3pZvkThUY0TY7ikbI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "IBM Plex Serif" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexserif/v19/jizBREVNn1dOx-zrZ2X3pZvkTiUa2zIZj1bIkNo.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "IBM Plex Serif" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexserif/v19/jizAREVNn1dOx-zrZ2X3pZvkTi3s-BIzoVrBicOg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "IBM Plex Serif" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexserif/v19/jizGREVNn1dOx-zrZ2X3pZvkTiUa48Ywq17jjNOg_oc.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "IBM Plex Serif" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexserif/v19/jizAREVNn1dOx-zrZ2X3pZvkTi3A_xIzoVrBicOg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "IBM Plex Serif" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexserif/v19/jizGREVNn1dOx-zrZ2X3pZvkTiUa4-o3q17jjNOg_oc.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "IBM Plex Serif" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexserif/v19/jizAREVNn1dOx-zrZ2X3pZvkTi2k_hIzoVrBicOg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "IBM Plex Serif" + }, + { + "src": "http://fonts.gstatic.com/s/ibmplexserif/v19/jizGREVNn1dOx-zrZ2X3pZvkTiUa4442q17jjNOg_oc.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "IBM Plex Serif" + } + ] + }, + { + "name": "IM Fell DW Pica", + "fontFamily": "IM Fell DW Pica, serif", + "slug": "im-fell-dw-pica", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/imfelldwpica/v16/2sDGZGRQotv9nbn2qSl0TxXVYNw9ZAPUvi88MQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "IM Fell DW Pica" + }, + { + "src": "http://fonts.gstatic.com/s/imfelldwpica/v16/2sDEZGRQotv9nbn2qSl0TxXVYNwNZgnQnCosMXm0.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "IM Fell DW Pica" + } + ] + }, + { + "name": "IM Fell DW Pica SC", + "fontFamily": "IM Fell DW Pica SC, serif", + "slug": "im-fell-dw-pica-sc", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/imfelldwpicasc/v21/0ybjGCAu5PfqkvtGVU15aBhXz3EUrnTW-BiKEUiBGA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "IM Fell DW Pica SC" + } + ] + }, + { + "name": "IM Fell Double Pica", + "fontFamily": "IM Fell Double Pica, serif", + "slug": "im-fell-double-pica", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/imfelldoublepica/v14/3XF2EqMq_94s9PeKF7Fg4gOKINyMtZ8rT0S1UL5Ayp0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "IM Fell Double Pica" + }, + { + "src": "http://fonts.gstatic.com/s/imfelldoublepica/v14/3XF0EqMq_94s9PeKF7Fg4gOKINyMtZ8rf0a_VJxF2p2G8g.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "IM Fell Double Pica" + } + ] + }, + { + "name": "IM Fell Double Pica SC", + "fontFamily": "IM Fell Double Pica SC, serif", + "slug": "im-fell-double-pica-sc", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/imfelldoublepicasc/v21/neIazDmuiMkFo6zj_sHpQ8teNbWlwBB_hXjJ4Y0Eeru2dGg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "IM Fell Double Pica SC" + } + ] + }, + { + "name": "IM Fell English", + "fontFamily": "IM Fell English, serif", + "slug": "im-fell-english", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/imfellenglish/v14/Ktk1ALSLW8zDe0rthJysWrnLsAz3F6mZVY9Y5w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "IM Fell English" + }, + { + "src": "http://fonts.gstatic.com/s/imfellenglish/v14/Ktk3ALSLW8zDe0rthJysWrnLsAzHFaOdd4pI59zg.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "IM Fell English" + } + ] + }, + { + "name": "IM Fell English SC", + "fontFamily": "IM Fell English SC, serif", + "slug": "im-fell-english-sc", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/imfellenglishsc/v16/a8IENpD3CDX-4zrWfr1VY879qFF05pZLO4gOg0shzA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "IM Fell English SC" + } + ] + }, + { + "name": "IM Fell French Canon", + "fontFamily": "IM Fell French Canon, serif", + "slug": "im-fell-french-canon", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/imfellfrenchcanon/v21/-F6ufiNtDWYfYc-tDiyiw08rrghJszkK6coVPt1ozoPz.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "IM Fell French Canon" + }, + { + "src": "http://fonts.gstatic.com/s/imfellfrenchcanon/v21/-F6gfiNtDWYfYc-tDiyiw08rrghJszkK6foXNNlKy5PzzrU.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "IM Fell French Canon" + } + ] + }, + { + "name": "IM Fell French Canon SC", + "fontFamily": "IM Fell French Canon SC, serif", + "slug": "im-fell-french-canon-sc", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/imfellfrenchcanonsc/v22/FBVmdCru5-ifcor2bgq9V89khWcmQghEURY7H3c0UBCVIVqH.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "IM Fell French Canon SC" + } + ] + }, + { + "name": "IM Fell Great Primer", + "fontFamily": "IM Fell Great Primer, serif", + "slug": "im-fell-great-primer", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/imfellgreatprimer/v21/bx6aNwSJtayYxOkbYFsT6hMsLzX7u85rJorXvDo3SQY1.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "IM Fell Great Primer" + }, + { + "src": "http://fonts.gstatic.com/s/imfellgreatprimer/v21/bx6UNwSJtayYxOkbYFsT6hMsLzX7u85rJrrVtj4VTBY1N6U.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "IM Fell Great Primer" + } + ] + }, + { + "name": "IM Fell Great Primer SC", + "fontFamily": "IM Fell Great Primer SC, serif", + "slug": "im-fell-great-primer-sc", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/imfellgreatprimersc/v21/ga6daxBOxyt6sCqz3fjZCTFCTUDMHagsQKdDTLf9BXz0s8FG.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "IM Fell Great Primer SC" + } + ] + }, + { + "name": "Ibarra Real Nova", + "fontFamily": "Ibarra Real Nova, serif", + "slug": "ibarra-real-nova", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ibarrarealnova/v25/sZlSdQiA-DBIDCcaWtQzL4BZHoiDundw4ATyjed3EXdg5MDtVT9TWIvS.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Ibarra Real Nova" + }, + { + "src": "http://fonts.gstatic.com/s/ibarrarealnova/v25/sZlSdQiA-DBIDCcaWtQzL4BZHoiDundw4ATyjed3EXdS5MDtVT9TWIvS.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Ibarra Real Nova" + }, + { + "src": "http://fonts.gstatic.com/s/ibarrarealnova/v25/sZlSdQiA-DBIDCcaWtQzL4BZHoiDundw4ATyjed3EXe-48DtVT9TWIvS.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Ibarra Real Nova" + }, + { + "src": "http://fonts.gstatic.com/s/ibarrarealnova/v25/sZlSdQiA-DBIDCcaWtQzL4BZHoiDundw4ATyjed3EXeH48DtVT9TWIvS.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Ibarra Real Nova" + }, + { + "src": "http://fonts.gstatic.com/s/ibarrarealnova/v25/sZlsdQiA-DBIDCcaWtQzL4BZHoiDkH5CH9yb5n3ZFmKopyiuXztxXZvSkTo.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Ibarra Real Nova" + }, + { + "src": "http://fonts.gstatic.com/s/ibarrarealnova/v25/sZlsdQiA-DBIDCcaWtQzL4BZHoiDkH5CH9yb5n3ZFmKopxquXztxXZvSkTo.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Ibarra Real Nova" + }, + { + "src": "http://fonts.gstatic.com/s/ibarrarealnova/v25/sZlsdQiA-DBIDCcaWtQzL4BZHoiDkH5CH9yb5n3ZFmKop_apXztxXZvSkTo.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Ibarra Real Nova" + }, + { + "src": "http://fonts.gstatic.com/s/ibarrarealnova/v25/sZlsdQiA-DBIDCcaWtQzL4BZHoiDkH5CH9yb5n3ZFmKop8-pXztxXZvSkTo.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Ibarra Real Nova" + } + ] + }, + { + "name": "Iceberg", + "fontFamily": "Iceberg, system-ui", + "slug": "iceberg", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/iceberg/v20/8QIJdijAiM7o-qnZuIgOq7jkAOw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Iceberg" + } + ] + }, + { + "name": "Iceland", + "fontFamily": "Iceland, system-ui", + "slug": "iceland", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/iceland/v16/rax9HiuFsdMNOnWPWKxGADBbg0s.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Iceland" + } + ] + }, + { + "name": "Imbue", + "fontFamily": "Imbue, serif", + "slug": "imbue", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/imbue/v21/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoP8iWfOsNNK-Q4xY.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Imbue" + }, + { + "src": "http://fonts.gstatic.com/s/imbue/v21/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoP0iXfOsNNK-Q4xY.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Imbue" + }, + { + "src": "http://fonts.gstatic.com/s/imbue/v21/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoP5aXfOsNNK-Q4xY.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Imbue" + }, + { + "src": "http://fonts.gstatic.com/s/imbue/v21/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoP8iXfOsNNK-Q4xY.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Imbue" + }, + { + "src": "http://fonts.gstatic.com/s/imbue/v21/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoP_qXfOsNNK-Q4xY.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Imbue" + }, + { + "src": "http://fonts.gstatic.com/s/imbue/v21/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoPxaQfOsNNK-Q4xY.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Imbue" + }, + { + "src": "http://fonts.gstatic.com/s/imbue/v21/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoPy-QfOsNNK-Q4xY.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Imbue" + }, + { + "src": "http://fonts.gstatic.com/s/imbue/v21/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoP0iQfOsNNK-Q4xY.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Imbue" + }, + { + "src": "http://fonts.gstatic.com/s/imbue/v21/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoP2GQfOsNNK-Q4xY.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Imbue" + } + ] + }, + { + "name": "Imperial Script", + "fontFamily": "Imperial Script, cursive", + "slug": "imperial-script", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/imperialscript/v3/5DCPAKrpzy_H98IV2ISnZBbGrVNvPenlvttWNg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Imperial Script" + } + ] + }, + { + "name": "Imprima", + "fontFamily": "Imprima, sans-serif", + "slug": "imprima", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/imprima/v18/VEMxRoN7sY3yuy-7-oWHyDzktPo.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Imprima" + } + ] + }, + { + "name": "Inconsolata", + "fontFamily": "Inconsolata, monospace", + "slug": "inconsolata", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/inconsolata/v31/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7LppwU8aRr8lleY2co.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Inconsolata" + }, + { + "src": "http://fonts.gstatic.com/s/inconsolata/v31/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7Lpp9s8aRr8lleY2co.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Inconsolata" + }, + { + "src": "http://fonts.gstatic.com/s/inconsolata/v31/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7Lpp4U8aRr8lleY2co.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Inconsolata" + }, + { + "src": "http://fonts.gstatic.com/s/inconsolata/v31/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7Lpp7c8aRr8lleY2co.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Inconsolata" + }, + { + "src": "http://fonts.gstatic.com/s/inconsolata/v31/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7Lpp1s7aRr8lleY2co.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Inconsolata" + }, + { + "src": "http://fonts.gstatic.com/s/inconsolata/v31/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7Lpp2I7aRr8lleY2co.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Inconsolata" + }, + { + "src": "http://fonts.gstatic.com/s/inconsolata/v31/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7LppwU7aRr8lleY2co.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Inconsolata" + }, + { + "src": "http://fonts.gstatic.com/s/inconsolata/v31/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7Lppyw7aRr8lleY2co.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Inconsolata" + } + ] + }, + { + "name": "Inder", + "fontFamily": "Inder, sans-serif", + "slug": "inder", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/inder/v14/w8gUH2YoQe8_4vq6pw-P3U4O.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Inder" + } + ] + }, + { + "name": "Indie Flower", + "fontFamily": "Indie Flower, cursive", + "slug": "indie-flower", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/indieflower/v17/m8JVjfNVeKWVnh3QMuKkFcZlbkGG1dKEDw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Indie Flower" + } + ] + }, + { + "name": "Ingrid Darling", + "fontFamily": "Ingrid Darling, cursive", + "slug": "ingrid-darling", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ingriddarling/v2/LDIrapaJNxUtSuFdw-9yf4rCPsLOub458jGL.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Ingrid Darling" + } + ] + }, + { + "name": "Inika", + "fontFamily": "Inika, serif", + "slug": "inika", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/inika/v21/rnCm-x5X3QP-phTHRcc2s2XH.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Inika" + }, + { + "src": "http://fonts.gstatic.com/s/inika/v21/rnCr-x5X3QP-pix7auM-mHnOSOuk.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Inika" + } + ] + }, + { + "name": "Inknut Antiqua", + "fontFamily": "Inknut Antiqua, serif", + "slug": "inknut-antiqua", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/inknutantiqua/v14/Y4GRYax7VC4ot_qNB4nYpBdaKU2vwrj5bBoIYJNf.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Inknut Antiqua" + }, + { + "src": "http://fonts.gstatic.com/s/inknutantiqua/v14/Y4GSYax7VC4ot_qNB4nYpBdaKXUD6pzxRwYB.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Inknut Antiqua" + }, + { + "src": "http://fonts.gstatic.com/s/inknutantiqua/v14/Y4GRYax7VC4ot_qNB4nYpBdaKU33w7j5bBoIYJNf.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Inknut Antiqua" + }, + { + "src": "http://fonts.gstatic.com/s/inknutantiqua/v14/Y4GRYax7VC4ot_qNB4nYpBdaKU3bxLj5bBoIYJNf.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Inknut Antiqua" + }, + { + "src": "http://fonts.gstatic.com/s/inknutantiqua/v14/Y4GRYax7VC4ot_qNB4nYpBdaKU2_xbj5bBoIYJNf.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Inknut Antiqua" + }, + { + "src": "http://fonts.gstatic.com/s/inknutantiqua/v14/Y4GRYax7VC4ot_qNB4nYpBdaKU2jxrj5bBoIYJNf.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Inknut Antiqua" + }, + { + "src": "http://fonts.gstatic.com/s/inknutantiqua/v14/Y4GRYax7VC4ot_qNB4nYpBdaKU2Hx7j5bBoIYJNf.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Inknut Antiqua" + } + ] + }, + { + "name": "Inria Sans", + "fontFamily": "Inria Sans, sans-serif", + "slug": "inria-sans", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/inriasans/v14/ptRPTiqXYfZMCOiVj9kQ3ELaDQtFqeY3fX4.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Inria Sans" + }, + { + "src": "http://fonts.gstatic.com/s/inriasans/v14/ptRRTiqXYfZMCOiVj9kQ1OzAgQlPrcQybX4pQA.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Inria Sans" + }, + { + "src": "http://fonts.gstatic.com/s/inriasans/v14/ptRMTiqXYfZMCOiVj9kQ5O7yKQNute8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Inria Sans" + }, + { + "src": "http://fonts.gstatic.com/s/inriasans/v14/ptROTiqXYfZMCOiVj9kQ1Oz4LSFrpe8uZA.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Inria Sans" + }, + { + "src": "http://fonts.gstatic.com/s/inriasans/v14/ptRPTiqXYfZMCOiVj9kQ3FLdDQtFqeY3fX4.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Inria Sans" + }, + { + "src": "http://fonts.gstatic.com/s/inriasans/v14/ptRRTiqXYfZMCOiVj9kQ1OzAkQ5PrcQybX4pQA.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Inria Sans" + } + ] + }, + { + "name": "Inria Serif", + "fontFamily": "Inria Serif, serif", + "slug": "inria-serif", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/inriaserif/v14/fC14PYxPY3rXxEndZJAzN3wAVQjFhFyta3xN.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Inria Serif" + }, + { + "src": "http://fonts.gstatic.com/s/inriaserif/v14/fC16PYxPY3rXxEndZJAzN3SuT4THjliPbmxN0_E.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Inria Serif" + }, + { + "src": "http://fonts.gstatic.com/s/inriaserif/v14/fC1lPYxPY3rXxEndZJAzN0SsfSzNr0Ck.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Inria Serif" + }, + { + "src": "http://fonts.gstatic.com/s/inriaserif/v14/fC1nPYxPY3rXxEndZJAzN3SudyjvqlCkcmU.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Inria Serif" + }, + { + "src": "http://fonts.gstatic.com/s/inriaserif/v14/fC14PYxPY3rXxEndZJAzN3wQUgjFhFyta3xN.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Inria Serif" + }, + { + "src": "http://fonts.gstatic.com/s/inriaserif/v14/fC16PYxPY3rXxEndZJAzN3SuT5TAjliPbmxN0_E.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Inria Serif" + } + ] + }, + { + "name": "Inspiration", + "fontFamily": "Inspiration, cursive", + "slug": "inspiration", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/inspiration/v3/x3dkckPPZa6L4wIg5cZOEvoGnSrlBBsy.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Inspiration" + } + ] + }, + { + "name": "Instrument Sans", + "fontFamily": "Instrument Sans, sans-serif", + "slug": "instrument-sans", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/instrumentsans/v1/pximypc9vsFDm051Uf6KVwgkfoSxQ0GsQv8ToedPibnr-yp2JGEJOH9npSTF-Qf1mS0v3_7Y.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Instrument Sans" + }, + { + "src": "http://fonts.gstatic.com/s/instrumentsans/v1/pximypc9vsFDm051Uf6KVwgkfoSxQ0GsQv8ToedPibnr-yp2JGEJOH9npST3-Qf1mS0v3_7Y.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Instrument Sans" + }, + { + "src": "http://fonts.gstatic.com/s/instrumentsans/v1/pximypc9vsFDm051Uf6KVwgkfoSxQ0GsQv8ToedPibnr-yp2JGEJOH9npSQb_gf1mS0v3_7Y.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Instrument Sans" + }, + { + "src": "http://fonts.gstatic.com/s/instrumentsans/v1/pximypc9vsFDm051Uf6KVwgkfoSxQ0GsQv8ToedPibnr-yp2JGEJOH9npSQi_gf1mS0v3_7Y.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Instrument Sans" + }, + { + "src": "http://fonts.gstatic.com/s/instrumentsans/v1/pxigypc9vsFDm051Uf6KVwgkfoSbSnNPooZAN0lInHGpCWNE27lgU-XJojENuu-2kykN2u7YUwU.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Instrument Sans" + }, + { + "src": "http://fonts.gstatic.com/s/instrumentsans/v1/pxigypc9vsFDm051Uf6KVwgkfoSbSnNPooZAN0lInHGpCWNE27lgU-XJojENut22kykN2u7YUwU.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Instrument Sans" + }, + { + "src": "http://fonts.gstatic.com/s/instrumentsans/v1/pxigypc9vsFDm051Uf6KVwgkfoSbSnNPooZAN0lInHGpCWNE27lgU-XJojENujGxkykN2u7YUwU.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Instrument Sans" + }, + { + "src": "http://fonts.gstatic.com/s/instrumentsans/v1/pxigypc9vsFDm051Uf6KVwgkfoSbSnNPooZAN0lInHGpCWNE27lgU-XJojENugixkykN2u7YUwU.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Instrument Sans" + } + ] + }, + { + "name": "Instrument Serif", + "fontFamily": "Instrument Serif, serif", + "slug": "instrument-serif", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/instrumentserif/v4/jizBRFtNs2ka5fXjeivQ4LroWlx-2zIZj1bIkNo.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Instrument Serif" + }, + { + "src": "http://fonts.gstatic.com/s/instrumentserif/v4/jizHRFtNs2ka5fXjeivQ4LroWlx-6zATi3TNgNq55w.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Instrument Serif" + } + ] + }, + { + "name": "Inter", + "fontFamily": "Inter, sans-serif", + "slug": "inter", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/inter/v12/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyeMZhrib2Bg-4.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Inter" + }, + { + "src": "http://fonts.gstatic.com/s/inter/v12/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuDyfMZhrib2Bg-4.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Inter" + }, + { + "src": "http://fonts.gstatic.com/s/inter/v12/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuOKfMZhrib2Bg-4.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Inter" + }, + { + "src": "http://fonts.gstatic.com/s/inter/v12/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfMZhrib2Bg-4.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Inter" + }, + { + "src": "http://fonts.gstatic.com/s/inter/v12/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuI6fMZhrib2Bg-4.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Inter" + }, + { + "src": "http://fonts.gstatic.com/s/inter/v12/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuGKYMZhrib2Bg-4.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Inter" + }, + { + "src": "http://fonts.gstatic.com/s/inter/v12/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuFuYMZhrib2Bg-4.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Inter" + }, + { + "src": "http://fonts.gstatic.com/s/inter/v12/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuDyYMZhrib2Bg-4.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Inter" + }, + { + "src": "http://fonts.gstatic.com/s/inter/v12/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuBWYMZhrib2Bg-4.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Inter" + } + ] + }, + { + "name": "Inter Tight", + "fontFamily": "Inter Tight, sans-serif", + "slug": "inter-tight", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/intertight/v3/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mjDw6qXCRToK8EPg.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Inter Tight" + }, + { + "src": "http://fonts.gstatic.com/s/intertight/v3/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mjjw-qXCRToK8EPg.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Inter Tight" + }, + { + "src": "http://fonts.gstatic.com/s/intertight/v3/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mjUQ-qXCRToK8EPg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Inter Tight" + }, + { + "src": "http://fonts.gstatic.com/s/intertight/v3/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mjDw-qXCRToK8EPg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Inter Tight" + }, + { + "src": "http://fonts.gstatic.com/s/intertight/v3/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mjPQ-qXCRToK8EPg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Inter Tight" + }, + { + "src": "http://fonts.gstatic.com/s/intertight/v3/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mj0QiqXCRToK8EPg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Inter Tight" + }, + { + "src": "http://fonts.gstatic.com/s/intertight/v3/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mj6AiqXCRToK8EPg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Inter Tight" + }, + { + "src": "http://fonts.gstatic.com/s/intertight/v3/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mjjwiqXCRToK8EPg.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Inter Tight" + }, + { + "src": "http://fonts.gstatic.com/s/intertight/v3/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mjpgiqXCRToK8EPg.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Inter Tight" + }, + { + "src": "http://fonts.gstatic.com/s/intertight/v3/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0xCHi5XgqoUPvi5.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Inter Tight" + }, + { + "src": "http://fonts.gstatic.com/s/intertight/v3/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0zCHy5XgqoUPvi5.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Inter Tight" + }, + { + "src": "http://fonts.gstatic.com/s/intertight/v3/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0wcHy5XgqoUPvi5.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Inter Tight" + }, + { + "src": "http://fonts.gstatic.com/s/intertight/v3/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0xCHy5XgqoUPvi5.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Inter Tight" + }, + { + "src": "http://fonts.gstatic.com/s/intertight/v3/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0xwHy5XgqoUPvi5.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Inter Tight" + }, + { + "src": "http://fonts.gstatic.com/s/intertight/v3/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0ycGC5XgqoUPvi5.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Inter Tight" + }, + { + "src": "http://fonts.gstatic.com/s/intertight/v3/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0ylGC5XgqoUPvi5.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Inter Tight" + }, + { + "src": "http://fonts.gstatic.com/s/intertight/v3/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0zCGC5XgqoUPvi5.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Inter Tight" + }, + { + "src": "http://fonts.gstatic.com/s/intertight/v3/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0zrGC5XgqoUPvi5.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Inter Tight" + } + ] + }, + { + "name": "Irish Grover", + "fontFamily": "Irish Grover, system-ui", + "slug": "irish-grover", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/irishgrover/v23/buExpoi6YtLz2QW7LA4flVgf-P5Oaiw4cw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Irish Grover" + } + ] + }, + { + "name": "Island Moments", + "fontFamily": "Island Moments, cursive", + "slug": "island-moments", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/islandmoments/v3/NaPBcZfVGvBdxIt7Ar0qzkXJF-TGIohbZ6SY.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Island Moments" + } + ] + }, + { + "name": "Istok Web", + "fontFamily": "Istok Web, sans-serif", + "slug": "istok-web", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/istokweb/v21/3qTvojGmgSyUukBzKslZAWF-9kIIaQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Istok Web" + }, + { + "src": "http://fonts.gstatic.com/s/istokweb/v21/3qTpojGmgSyUukBzKslpA2t61EcYaQ7F.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Istok Web" + }, + { + "src": "http://fonts.gstatic.com/s/istokweb/v21/3qTqojGmgSyUukBzKslhvU5a_mkUYBfcMw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Istok Web" + }, + { + "src": "http://fonts.gstatic.com/s/istokweb/v21/3qT0ojGmgSyUukBzKslpA1PG-2MQQhLMMygN.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Istok Web" + } + ] + }, + { + "name": "Italiana", + "fontFamily": "Italiana, serif", + "slug": "italiana", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/italiana/v16/QldNNTtLsx4E__B0XTmRY31Wx7Vv.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Italiana" + } + ] + }, + { + "name": "Italianno", + "fontFamily": "Italianno, cursive", + "slug": "italianno", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/italianno/v17/dg4n_p3sv6gCJkwzT6Rnj5YpQwM-gg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Italianno" + } + ] + }, + { + "name": "Itim", + "fontFamily": "Itim, cursive", + "slug": "itim", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/itim/v11/0nknC9ziJOYewARKkc7ZdwU.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Itim" + } + ] + }, + { + "name": "Jacques Francois", + "fontFamily": "Jacques Francois, serif", + "slug": "jacques-francois", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/jacquesfrancois/v20/ZXu9e04ZvKeOOHIe1TMahbcIU2cgmcPqoeRWfbs.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Jacques Francois" + } + ] + }, + { + "name": "Jacques Francois Shadow", + "fontFamily": "Jacques Francois Shadow, system-ui", + "slug": "jacques-francois-shadow", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/jacquesfrancoisshadow/v21/KR1FBtOz8PKTMk-kqdkLVrvR0ECFrB6Pin-2_q8VsHuV5ULS.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Jacques Francois Shadow" + } + ] + }, + { + "name": "Jaldi", + "fontFamily": "Jaldi, sans-serif", + "slug": "jaldi", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/jaldi/v12/or3sQ67z0_CI30NUZpD_B6g8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Jaldi" + }, + { + "src": "http://fonts.gstatic.com/s/jaldi/v12/or3hQ67z0_CI33voSbT3LLQ1niPn.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Jaldi" + } + ] + }, + { + "name": "JetBrains Mono", + "fontFamily": "JetBrains Mono, monospace", + "slug": "jetbrains-mono", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/jetbrainsmono/v18/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yK1jPVmUsaaDhw.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "JetBrains Mono" + }, + { + "src": "http://fonts.gstatic.com/s/jetbrainsmono/v18/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8SKxjPVmUsaaDhw.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "JetBrains Mono" + }, + { + "src": "http://fonts.gstatic.com/s/jetbrainsmono/v18/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8lqxjPVmUsaaDhw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "JetBrains Mono" + }, + { + "src": "http://fonts.gstatic.com/s/jetbrainsmono/v18/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKxjPVmUsaaDhw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "JetBrains Mono" + }, + { + "src": "http://fonts.gstatic.com/s/jetbrainsmono/v18/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8-qxjPVmUsaaDhw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "JetBrains Mono" + }, + { + "src": "http://fonts.gstatic.com/s/jetbrainsmono/v18/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8FqtjPVmUsaaDhw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "JetBrains Mono" + }, + { + "src": "http://fonts.gstatic.com/s/jetbrainsmono/v18/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8L6tjPVmUsaaDhw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "JetBrains Mono" + }, + { + "src": "http://fonts.gstatic.com/s/jetbrainsmono/v18/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8SKtjPVmUsaaDhw.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "JetBrains Mono" + }, + { + "src": "http://fonts.gstatic.com/s/jetbrainsmono/v18/tDba2o-flEEny0FZhsfKu5WU4xD-IQ-PuZJJXxfpAO-Lf1OQk6OThxPA.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "JetBrains Mono" + }, + { + "src": "http://fonts.gstatic.com/s/jetbrainsmono/v18/tDba2o-flEEny0FZhsfKu5WU4xD-IQ-PuZJJXxfpAO8LflOQk6OThxPA.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "JetBrains Mono" + }, + { + "src": "http://fonts.gstatic.com/s/jetbrainsmono/v18/tDba2o-flEEny0FZhsfKu5WU4xD-IQ-PuZJJXxfpAO_VflOQk6OThxPA.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "JetBrains Mono" + }, + { + "src": "http://fonts.gstatic.com/s/jetbrainsmono/v18/tDba2o-flEEny0FZhsfKu5WU4xD-IQ-PuZJJXxfpAO-LflOQk6OThxPA.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "JetBrains Mono" + }, + { + "src": "http://fonts.gstatic.com/s/jetbrainsmono/v18/tDba2o-flEEny0FZhsfKu5WU4xD-IQ-PuZJJXxfpAO-5flOQk6OThxPA.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "JetBrains Mono" + }, + { + "src": "http://fonts.gstatic.com/s/jetbrainsmono/v18/tDba2o-flEEny0FZhsfKu5WU4xD-IQ-PuZJJXxfpAO9VeVOQk6OThxPA.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "JetBrains Mono" + }, + { + "src": "http://fonts.gstatic.com/s/jetbrainsmono/v18/tDba2o-flEEny0FZhsfKu5WU4xD-IQ-PuZJJXxfpAO9seVOQk6OThxPA.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "JetBrains Mono" + }, + { + "src": "http://fonts.gstatic.com/s/jetbrainsmono/v18/tDba2o-flEEny0FZhsfKu5WU4xD-IQ-PuZJJXxfpAO8LeVOQk6OThxPA.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "JetBrains Mono" + } + ] + }, + { + "name": "Jim Nightshade", + "fontFamily": "Jim Nightshade, cursive", + "slug": "jim-nightshade", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/jimnightshade/v20/PlIkFlu9Pb08Q8HLM1PxmB0g-OS4V3qKaMxD.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Jim Nightshade" + } + ] + }, + { + "name": "Joan", + "fontFamily": "Joan, serif", + "slug": "joan", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/joan/v2/ZXupe1oZsqWRbRdH8X1p_Ng.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Joan" + } + ] + }, + { + "name": "Jockey One", + "fontFamily": "Jockey One, sans-serif", + "slug": "jockey-one", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/jockeyone/v16/HTxpL2g2KjCFj4x8WI6ArIb7HYOk4xc.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Jockey One" + } + ] + }, + { + "name": "Jolly Lodger", + "fontFamily": "Jolly Lodger, system-ui", + "slug": "jolly-lodger", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/jollylodger/v20/BXRsvFTAh_bGkA1uQ48dlB3VWerT3ZyuqA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Jolly Lodger" + } + ] + }, + { + "name": "Jomhuria", + "fontFamily": "Jomhuria, system-ui", + "slug": "jomhuria", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/jomhuria/v18/Dxxp8j-TMXf-llKur2b1MOGbC3Dh.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Jomhuria" + } + ] + }, + { + "name": "Jomolhari", + "fontFamily": "Jomolhari, serif", + "slug": "jomolhari", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/jomolhari/v14/EvONzA1M1Iw_CBd2hsQCF1IZKq5INg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Jomolhari" + } + ] + }, + { + "name": "Josefin Sans", + "fontFamily": "Josefin Sans, sans-serif", + "slug": "josefin-sans", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/josefinsans/v26/Qw3PZQNVED7rKGKxtqIqX5E-AVSJrOCfjY46_DjRXMFrLgTsQV0.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Josefin Sans" + }, + { + "src": "http://fonts.gstatic.com/s/josefinsans/v26/Qw3PZQNVED7rKGKxtqIqX5E-AVSJrOCfjY46_LjQXMFrLgTsQV0.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Josefin Sans" + }, + { + "src": "http://fonts.gstatic.com/s/josefinsans/v26/Qw3PZQNVED7rKGKxtqIqX5E-AVSJrOCfjY46_GbQXMFrLgTsQV0.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Josefin Sans" + }, + { + "src": "http://fonts.gstatic.com/s/josefinsans/v26/Qw3PZQNVED7rKGKxtqIqX5E-AVSJrOCfjY46_DjQXMFrLgTsQV0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Josefin Sans" + }, + { + "src": "http://fonts.gstatic.com/s/josefinsans/v26/Qw3PZQNVED7rKGKxtqIqX5E-AVSJrOCfjY46_ArQXMFrLgTsQV0.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Josefin Sans" + }, + { + "src": "http://fonts.gstatic.com/s/josefinsans/v26/Qw3PZQNVED7rKGKxtqIqX5E-AVSJrOCfjY46_ObXXMFrLgTsQV0.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Josefin Sans" + }, + { + "src": "http://fonts.gstatic.com/s/josefinsans/v26/Qw3PZQNVED7rKGKxtqIqX5E-AVSJrOCfjY46_N_XXMFrLgTsQV0.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Josefin Sans" + }, + { + "src": "http://fonts.gstatic.com/s/josefinsans/v26/Qw3JZQNVED7rKGKxtqIqX5EUCGZ2dIn0FyA96fCTtINhKibpUV3MEQ.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Josefin Sans" + }, + { + "src": "http://fonts.gstatic.com/s/josefinsans/v26/Qw3JZQNVED7rKGKxtqIqX5EUCGZ2dIn0FyA96fCTNIJhKibpUV3MEQ.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Josefin Sans" + }, + { + "src": "http://fonts.gstatic.com/s/josefinsans/v26/Qw3JZQNVED7rKGKxtqIqX5EUCGZ2dIn0FyA96fCT6oJhKibpUV3MEQ.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Josefin Sans" + }, + { + "src": "http://fonts.gstatic.com/s/josefinsans/v26/Qw3JZQNVED7rKGKxtqIqX5EUCGZ2dIn0FyA96fCTtIJhKibpUV3MEQ.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Josefin Sans" + }, + { + "src": "http://fonts.gstatic.com/s/josefinsans/v26/Qw3JZQNVED7rKGKxtqIqX5EUCGZ2dIn0FyA96fCThoJhKibpUV3MEQ.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Josefin Sans" + }, + { + "src": "http://fonts.gstatic.com/s/josefinsans/v26/Qw3JZQNVED7rKGKxtqIqX5EUCGZ2dIn0FyA96fCTaoVhKibpUV3MEQ.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Josefin Sans" + }, + { + "src": "http://fonts.gstatic.com/s/josefinsans/v26/Qw3JZQNVED7rKGKxtqIqX5EUCGZ2dIn0FyA96fCTU4VhKibpUV3MEQ.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Josefin Sans" + } + ] + }, + { + "name": "Josefin Slab", + "fontFamily": "Josefin Slab, serif", + "slug": "josefin-slab", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/josefinslab/v24/lW-swjwOK3Ps5GSJlNNkMalNpiZe_ldbOR4W71mtd3k3K6CcEyI.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Josefin Slab" + }, + { + "src": "http://fonts.gstatic.com/s/josefinslab/v24/lW-swjwOK3Ps5GSJlNNkMalNpiZe_ldbOR4W79msd3k3K6CcEyI.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Josefin Slab" + }, + { + "src": "http://fonts.gstatic.com/s/josefinslab/v24/lW-swjwOK3Ps5GSJlNNkMalNpiZe_ldbOR4W7wesd3k3K6CcEyI.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Josefin Slab" + }, + { + "src": "http://fonts.gstatic.com/s/josefinslab/v24/lW-swjwOK3Ps5GSJlNNkMalNpiZe_ldbOR4W71msd3k3K6CcEyI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Josefin Slab" + }, + { + "src": "http://fonts.gstatic.com/s/josefinslab/v24/lW-swjwOK3Ps5GSJlNNkMalNpiZe_ldbOR4W72usd3k3K6CcEyI.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Josefin Slab" + }, + { + "src": "http://fonts.gstatic.com/s/josefinslab/v24/lW-swjwOK3Ps5GSJlNNkMalNpiZe_ldbOR4W74erd3k3K6CcEyI.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Josefin Slab" + }, + { + "src": "http://fonts.gstatic.com/s/josefinslab/v24/lW-swjwOK3Ps5GSJlNNkMalNpiZe_ldbOR4W776rd3k3K6CcEyI.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Josefin Slab" + }, + { + "src": "http://fonts.gstatic.com/s/josefinslab/v24/lW-qwjwOK3Ps5GSJlNNkMalnrxShJj4wo7AR-pHvnzs9L4KZAyK43w.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Josefin Slab" + }, + { + "src": "http://fonts.gstatic.com/s/josefinslab/v24/lW-qwjwOK3Ps5GSJlNNkMalnrxShJj4wo7AR-pHvHzo9L4KZAyK43w.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Josefin Slab" + }, + { + "src": "http://fonts.gstatic.com/s/josefinslab/v24/lW-qwjwOK3Ps5GSJlNNkMalnrxShJj4wo7AR-pHvwTo9L4KZAyK43w.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Josefin Slab" + }, + { + "src": "http://fonts.gstatic.com/s/josefinslab/v24/lW-qwjwOK3Ps5GSJlNNkMalnrxShJj4wo7AR-pHvnzo9L4KZAyK43w.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Josefin Slab" + }, + { + "src": "http://fonts.gstatic.com/s/josefinslab/v24/lW-qwjwOK3Ps5GSJlNNkMalnrxShJj4wo7AR-pHvrTo9L4KZAyK43w.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Josefin Slab" + }, + { + "src": "http://fonts.gstatic.com/s/josefinslab/v24/lW-qwjwOK3Ps5GSJlNNkMalnrxShJj4wo7AR-pHvQT09L4KZAyK43w.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Josefin Slab" + }, + { + "src": "http://fonts.gstatic.com/s/josefinslab/v24/lW-qwjwOK3Ps5GSJlNNkMalnrxShJj4wo7AR-pHveD09L4KZAyK43w.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Josefin Slab" + } + ] + }, + { + "name": "Jost", + "fontFamily": "Jost, sans-serif", + "slug": "jost", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/jost/v14/92zPtBhPNqw79Ij1E865zBUv7myjJAVGPokMmuHL.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Jost" + }, + { + "src": "http://fonts.gstatic.com/s/jost/v14/92zPtBhPNqw79Ij1E865zBUv7mwjJQVGPokMmuHL.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Jost" + }, + { + "src": "http://fonts.gstatic.com/s/jost/v14/92zPtBhPNqw79Ij1E865zBUv7mz9JQVGPokMmuHL.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Jost" + }, + { + "src": "http://fonts.gstatic.com/s/jost/v14/92zPtBhPNqw79Ij1E865zBUv7myjJQVGPokMmuHL.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Jost" + }, + { + "src": "http://fonts.gstatic.com/s/jost/v14/92zPtBhPNqw79Ij1E865zBUv7myRJQVGPokMmuHL.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Jost" + }, + { + "src": "http://fonts.gstatic.com/s/jost/v14/92zPtBhPNqw79Ij1E865zBUv7mx9IgVGPokMmuHL.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Jost" + }, + { + "src": "http://fonts.gstatic.com/s/jost/v14/92zPtBhPNqw79Ij1E865zBUv7mxEIgVGPokMmuHL.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Jost" + }, + { + "src": "http://fonts.gstatic.com/s/jost/v14/92zPtBhPNqw79Ij1E865zBUv7mwjIgVGPokMmuHL.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Jost" + }, + { + "src": "http://fonts.gstatic.com/s/jost/v14/92zPtBhPNqw79Ij1E865zBUv7mwKIgVGPokMmuHL.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Jost" + }, + { + "src": "http://fonts.gstatic.com/s/jost/v14/92zJtBhPNqw73oHH7BbQp4-B6XlrZu0ENI0un_HLMEo.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Jost" + }, + { + "src": "http://fonts.gstatic.com/s/jost/v14/92zJtBhPNqw73oHH7BbQp4-B6XlrZm0FNI0un_HLMEo.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Jost" + }, + { + "src": "http://fonts.gstatic.com/s/jost/v14/92zJtBhPNqw73oHH7BbQp4-B6XlrZrMFNI0un_HLMEo.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Jost" + }, + { + "src": "http://fonts.gstatic.com/s/jost/v14/92zJtBhPNqw73oHH7BbQp4-B6XlrZu0FNI0un_HLMEo.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Jost" + }, + { + "src": "http://fonts.gstatic.com/s/jost/v14/92zJtBhPNqw73oHH7BbQp4-B6XlrZt8FNI0un_HLMEo.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Jost" + }, + { + "src": "http://fonts.gstatic.com/s/jost/v14/92zJtBhPNqw73oHH7BbQp4-B6XlrZjMCNI0un_HLMEo.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Jost" + }, + { + "src": "http://fonts.gstatic.com/s/jost/v14/92zJtBhPNqw73oHH7BbQp4-B6XlrZgoCNI0un_HLMEo.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Jost" + }, + { + "src": "http://fonts.gstatic.com/s/jost/v14/92zJtBhPNqw73oHH7BbQp4-B6XlrZm0CNI0un_HLMEo.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Jost" + }, + { + "src": "http://fonts.gstatic.com/s/jost/v14/92zJtBhPNqw73oHH7BbQp4-B6XlrZkQCNI0un_HLMEo.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Jost" + } + ] + }, + { + "name": "Joti One", + "fontFamily": "Joti One, system-ui", + "slug": "joti-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/jotione/v22/Z9XVDmdJQAmWm9TwaYTe4u2El6GC.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Joti One" + } + ] + }, + { + "name": "Jua", + "fontFamily": "Jua, sans-serif", + "slug": "jua", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/jua/v13/co3KmW9ljjAjc-DZCsKgsg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Jua" + } + ] + }, + { + "name": "Judson", + "fontFamily": "Judson, serif", + "slug": "judson", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/judson/v19/FeVRS0Fbvbc14VxRD7N01bV7kg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Judson" + }, + { + "src": "http://fonts.gstatic.com/s/judson/v19/FeVTS0Fbvbc14VxhDblw97BrknZf.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Judson" + }, + { + "src": "http://fonts.gstatic.com/s/judson/v19/FeVSS0Fbvbc14Vxps5xQ3Z5nm29Gww.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Judson" + } + ] + }, + { + "name": "Julee", + "fontFamily": "Julee, cursive", + "slug": "julee", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/julee/v25/TuGfUVB3RpZPQ6ZLodgzydtk.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Julee" + } + ] + }, + { + "name": "Julius Sans One", + "fontFamily": "Julius Sans One, sans-serif", + "slug": "julius-sans-one", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/juliussansone/v14/1Pt2g8TAX_SGgBGUi0tGOYEga5W-xXEW6aGXHw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Julius Sans One" + } + ] + }, + { + "name": "Junge", + "fontFamily": "Junge, serif", + "slug": "junge", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/junge/v20/gokgH670Gl1lUqAdvhB7SnKm.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Junge" + } + ] + }, + { + "name": "Jura", + "fontFamily": "Jura, sans-serif", + "slug": "jura", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/jura/v29/z7NOdRfiaC4Vd8hhoPzfb5vBTP0D7auhTfmrH_rt.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Jura" + }, + { + "src": "http://fonts.gstatic.com/s/jura/v29/z7NOdRfiaC4Vd8hhoPzfb5vBTP1d7auhTfmrH_rt.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Jura" + }, + { + "src": "http://fonts.gstatic.com/s/jura/v29/z7NOdRfiaC4Vd8hhoPzfb5vBTP1v7auhTfmrH_rt.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Jura" + }, + { + "src": "http://fonts.gstatic.com/s/jura/v29/z7NOdRfiaC4Vd8hhoPzfb5vBTP2D6quhTfmrH_rt.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Jura" + }, + { + "src": "http://fonts.gstatic.com/s/jura/v29/z7NOdRfiaC4Vd8hhoPzfb5vBTP266quhTfmrH_rt.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Jura" + } + ] + }, + { + "name": "Just Another Hand", + "fontFamily": "Just Another Hand, cursive", + "slug": "just-another-hand", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/justanotherhand/v19/845CNN4-AJyIGvIou-6yJKyptyOpOcr_BmmlS5aw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Just Another Hand" + } + ] + }, + { + "name": "Just Me Again Down Here", + "fontFamily": "Just Me Again Down Here, cursive", + "slug": "just-me-again-down-here", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/justmeagaindownhere/v24/MwQmbgXtz-Wc6RUEGNMc0QpRrfUh2hSdBBMoAuwHvqDwc_fg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Just Me Again Down Here" + } + ] + }, + { + "name": "K2D", + "fontFamily": "K2D, sans-serif", + "slug": "k2d", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/k2d/v9/J7aRnpF2V0ErE6UpvrIw74NL.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "K2D" + }, + { + "src": "http://fonts.gstatic.com/s/k2d/v9/J7afnpF2V0EjdZ1NtLYS6pNLAjk.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "K2D" + }, + { + "src": "http://fonts.gstatic.com/s/k2d/v9/J7aenpF2V0Erv4QJlJw85ppSGw.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "K2D" + }, + { + "src": "http://fonts.gstatic.com/s/k2d/v9/J7acnpF2V0EjdZ3hlZY4xJ9CGyAa.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "K2D" + }, + { + "src": "http://fonts.gstatic.com/s/k2d/v9/J7aenpF2V0Er24cJlJw85ppSGw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "K2D" + }, + { + "src": "http://fonts.gstatic.com/s/k2d/v9/J7acnpF2V0EjdZ2FlpY4xJ9CGyAa.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "K2D" + }, + { + "src": "http://fonts.gstatic.com/s/k2d/v9/J7aTnpF2V0ETd68tnLcg7w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "K2D" + }, + { + "src": "http://fonts.gstatic.com/s/k2d/v9/J7aRnpF2V0EjdaUpvrIw74NL.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "K2D" + }, + { + "src": "http://fonts.gstatic.com/s/k2d/v9/J7aenpF2V0Erg4YJlJw85ppSGw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "K2D" + }, + { + "src": "http://fonts.gstatic.com/s/k2d/v9/J7acnpF2V0EjdZ3dl5Y4xJ9CGyAa.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "K2D" + }, + { + "src": "http://fonts.gstatic.com/s/k2d/v9/J7aenpF2V0Err4EJlJw85ppSGw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "K2D" + }, + { + "src": "http://fonts.gstatic.com/s/k2d/v9/J7acnpF2V0EjdZ3xkJY4xJ9CGyAa.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "K2D" + }, + { + "src": "http://fonts.gstatic.com/s/k2d/v9/J7aenpF2V0Ery4AJlJw85ppSGw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "K2D" + }, + { + "src": "http://fonts.gstatic.com/s/k2d/v9/J7acnpF2V0EjdZ2VkZY4xJ9CGyAa.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "K2D" + }, + { + "src": "http://fonts.gstatic.com/s/k2d/v9/J7aenpF2V0Er14MJlJw85ppSGw.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "K2D" + }, + { + "src": "http://fonts.gstatic.com/s/k2d/v9/J7acnpF2V0EjdZ2JkpY4xJ9CGyAa.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "K2D" + } + ] + }, + { + "name": "Kadwa", + "fontFamily": "Kadwa, serif", + "slug": "kadwa", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kadwa/v10/rnCm-x5V0g7iphTHRcc2s2XH.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kadwa" + }, + { + "src": "http://fonts.gstatic.com/s/kadwa/v10/rnCr-x5V0g7ipix7auM-mHnOSOuk.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Kadwa" + } + ] + }, + { + "name": "Kaisei Decol", + "fontFamily": "Kaisei Decol, serif", + "slug": "kaisei-decol", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kaiseidecol/v8/bMrwmSqP45sidWf3QmfFW6iyW1EP22OjoA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kaisei Decol" + }, + { + "src": "http://fonts.gstatic.com/s/kaiseidecol/v8/bMrvmSqP45sidWf3QmfFW6iKr3gr00i_qb57kA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Kaisei Decol" + }, + { + "src": "http://fonts.gstatic.com/s/kaiseidecol/v8/bMrvmSqP45sidWf3QmfFW6iK534r00i_qb57kA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Kaisei Decol" + } + ] + }, + { + "name": "Kaisei HarunoUmi", + "fontFamily": "Kaisei HarunoUmi, serif", + "slug": "kaisei-harunoumi", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kaiseiharunoumi/v8/HI_RiZQSLqBQoAHhK_C6N_nzy_jcGsv5sM8u3mk.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kaisei HarunoUmi" + }, + { + "src": "http://fonts.gstatic.com/s/kaiseiharunoumi/v8/HI_WiZQSLqBQoAHhK_C6N_nzy_jcIj_QlMcFwmC9FAU.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Kaisei HarunoUmi" + }, + { + "src": "http://fonts.gstatic.com/s/kaiseiharunoumi/v8/HI_WiZQSLqBQoAHhK_C6N_nzy_jcInfWlMcFwmC9FAU.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Kaisei HarunoUmi" + } + ] + }, + { + "name": "Kaisei Opti", + "fontFamily": "Kaisei Opti, serif", + "slug": "kaisei-opti", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kaiseiopti/v8/QldKNThJphYb8_g6c2nlIFle7KlmxuHx.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kaisei Opti" + }, + { + "src": "http://fonts.gstatic.com/s/kaiseiopti/v8/QldXNThJphYb8_g6c2nlIGGqxY1u7f34DYwn.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Kaisei Opti" + }, + { + "src": "http://fonts.gstatic.com/s/kaiseiopti/v8/QldXNThJphYb8_g6c2nlIGHiw41u7f34DYwn.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Kaisei Opti" + } + ] + }, + { + "name": "Kaisei Tokumin", + "fontFamily": "Kaisei Tokumin, serif", + "slug": "kaisei-tokumin", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kaiseitokumin/v8/Gg8sN5wdZg7xCwuMsylww2ZiQkJf1l0pj946.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kaisei Tokumin" + }, + { + "src": "http://fonts.gstatic.com/s/kaiseitokumin/v8/Gg8vN5wdZg7xCwuMsylww2ZiQnqr_3khpMIzeI6v.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Kaisei Tokumin" + }, + { + "src": "http://fonts.gstatic.com/s/kaiseitokumin/v8/Gg8vN5wdZg7xCwuMsylww2ZiQnrj-XkhpMIzeI6v.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Kaisei Tokumin" + }, + { + "src": "http://fonts.gstatic.com/s/kaiseitokumin/v8/Gg8vN5wdZg7xCwuMsylww2ZiQnr_-nkhpMIzeI6v.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Kaisei Tokumin" + } + ] + }, + { + "name": "Kalam", + "fontFamily": "Kalam, cursive", + "slug": "kalam", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kalam/v16/YA9Qr0Wd4kDdMtD6GgLLmCUItqGt.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Kalam" + }, + { + "src": "http://fonts.gstatic.com/s/kalam/v16/YA9dr0Wd4kDdMuhWMibDszkB.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kalam" + }, + { + "src": "http://fonts.gstatic.com/s/kalam/v16/YA9Qr0Wd4kDdMtDqHQLLmCUItqGt.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Kalam" + } + ] + }, + { + "name": "Kameron", + "fontFamily": "Kameron, serif", + "slug": "kameron", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kameron/v15/vm82dR7vXErQxuznsL4wL-XIYH8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kameron" + }, + { + "src": "http://fonts.gstatic.com/s/kameron/v15/vm8zdR7vXErQxuzniAIfC-3jfHb--NY.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Kameron" + } + ] + }, + { + "name": "Kanit", + "fontFamily": "Kanit, sans-serif", + "slug": "kanit", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kanit/v13/nKKX-Go6G5tXcr72GwWKcaxALFs.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Kanit" + }, + { + "src": "http://fonts.gstatic.com/s/kanit/v13/nKKV-Go6G5tXcraQI2GAdY5FPFtrGw.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Kanit" + }, + { + "src": "http://fonts.gstatic.com/s/kanit/v13/nKKU-Go6G5tXcr5aOiWgX6BJNUJy.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Kanit" + }, + { + "src": "http://fonts.gstatic.com/s/kanit/v13/nKKS-Go6G5tXcraQI82hVaRrMFJyAu4.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Kanit" + }, + { + "src": "http://fonts.gstatic.com/s/kanit/v13/nKKU-Go6G5tXcr4-OSWgX6BJNUJy.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Kanit" + }, + { + "src": "http://fonts.gstatic.com/s/kanit/v13/nKKS-Go6G5tXcraQI6miVaRrMFJyAu4.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Kanit" + }, + { + "src": "http://fonts.gstatic.com/s/kanit/v13/nKKZ-Go6G5tXcoaSEQGodLxA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kanit" + }, + { + "src": "http://fonts.gstatic.com/s/kanit/v13/nKKX-Go6G5tXcraQGwWKcaxALFs.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Kanit" + }, + { + "src": "http://fonts.gstatic.com/s/kanit/v13/nKKU-Go6G5tXcr5mOCWgX6BJNUJy.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Kanit" + }, + { + "src": "http://fonts.gstatic.com/s/kanit/v13/nKKS-Go6G5tXcraQI_GjVaRrMFJyAu4.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Kanit" + }, + { + "src": "http://fonts.gstatic.com/s/kanit/v13/nKKU-Go6G5tXcr5KPyWgX6BJNUJy.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Kanit" + }, + { + "src": "http://fonts.gstatic.com/s/kanit/v13/nKKS-Go6G5tXcraQI92kVaRrMFJyAu4.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Kanit" + }, + { + "src": "http://fonts.gstatic.com/s/kanit/v13/nKKU-Go6G5tXcr4uPiWgX6BJNUJy.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Kanit" + }, + { + "src": "http://fonts.gstatic.com/s/kanit/v13/nKKS-Go6G5tXcraQI7mlVaRrMFJyAu4.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Kanit" + }, + { + "src": "http://fonts.gstatic.com/s/kanit/v13/nKKU-Go6G5tXcr4yPSWgX6BJNUJy.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Kanit" + }, + { + "src": "http://fonts.gstatic.com/s/kanit/v13/nKKS-Go6G5tXcraQI6WmVaRrMFJyAu4.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Kanit" + }, + { + "src": "http://fonts.gstatic.com/s/kanit/v13/nKKU-Go6G5tXcr4WPCWgX6BJNUJy.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Kanit" + }, + { + "src": "http://fonts.gstatic.com/s/kanit/v13/nKKS-Go6G5tXcraQI4GnVaRrMFJyAu4.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Kanit" + } + ] + }, + { + "name": "Kantumruy Pro", + "fontFamily": "Kantumruy Pro, sans-serif", + "slug": "kantumruy-pro", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kantumruypro/v8/1q2TY5aECkp34vEBSPFOmJxwvk_pilU8OGNfyg1urUs0M34dR6dW.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Kantumruy Pro" + }, + { + "src": "http://fonts.gstatic.com/s/kantumruypro/v8/1q2TY5aECkp34vEBSPFOmJxwvk_pilU8OGNfyg3urEs0M34dR6dW.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Kantumruy Pro" + }, + { + "src": "http://fonts.gstatic.com/s/kantumruypro/v8/1q2TY5aECkp34vEBSPFOmJxwvk_pilU8OGNfyg0wrEs0M34dR6dW.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Kantumruy Pro" + }, + { + "src": "http://fonts.gstatic.com/s/kantumruypro/v8/1q2TY5aECkp34vEBSPFOmJxwvk_pilU8OGNfyg1urEs0M34dR6dW.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kantumruy Pro" + }, + { + "src": "http://fonts.gstatic.com/s/kantumruypro/v8/1q2TY5aECkp34vEBSPFOmJxwvk_pilU8OGNfyg1crEs0M34dR6dW.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Kantumruy Pro" + }, + { + "src": "http://fonts.gstatic.com/s/kantumruypro/v8/1q2TY5aECkp34vEBSPFOmJxwvk_pilU8OGNfyg2wq0s0M34dR6dW.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Kantumruy Pro" + }, + { + "src": "http://fonts.gstatic.com/s/kantumruypro/v8/1q2TY5aECkp34vEBSPFOmJxwvk_pilU8OGNfyg2Jq0s0M34dR6dW.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Kantumruy Pro" + }, + { + "src": "http://fonts.gstatic.com/s/kantumruypro/v8/1q2RY5aECkp34vEBSPFOmJxwlEbbdY1VU_nxzRim76N2OXo_QrdWlcU.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Kantumruy Pro" + }, + { + "src": "http://fonts.gstatic.com/s/kantumruypro/v8/1q2RY5aECkp34vEBSPFOmJxwlEbbdY1VU_nxzRim7yN3OXo_QrdWlcU.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Kantumruy Pro" + }, + { + "src": "http://fonts.gstatic.com/s/kantumruypro/v8/1q2RY5aECkp34vEBSPFOmJxwlEbbdY1VU_nxzRim7_13OXo_QrdWlcU.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Kantumruy Pro" + }, + { + "src": "http://fonts.gstatic.com/s/kantumruypro/v8/1q2RY5aECkp34vEBSPFOmJxwlEbbdY1VU_nxzRim76N3OXo_QrdWlcU.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Kantumruy Pro" + }, + { + "src": "http://fonts.gstatic.com/s/kantumruypro/v8/1q2RY5aECkp34vEBSPFOmJxwlEbbdY1VU_nxzRim75F3OXo_QrdWlcU.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Kantumruy Pro" + }, + { + "src": "http://fonts.gstatic.com/s/kantumruypro/v8/1q2RY5aECkp34vEBSPFOmJxwlEbbdY1VU_nxzRim731wOXo_QrdWlcU.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Kantumruy Pro" + }, + { + "src": "http://fonts.gstatic.com/s/kantumruypro/v8/1q2RY5aECkp34vEBSPFOmJxwlEbbdY1VU_nxzRim70RwOXo_QrdWlcU.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Kantumruy Pro" + } + ] + }, + { + "name": "Karantina", + "fontFamily": "Karantina, system-ui", + "slug": "karantina", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/karantina/v11/buExpo24ccnh31GVMABxXCgf-P5Oaiw4cw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Karantina" + }, + { + "src": "http://fonts.gstatic.com/s/karantina/v11/buE0po24ccnh31GVMABJ8AA78NVSYw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Karantina" + }, + { + "src": "http://fonts.gstatic.com/s/karantina/v11/buExpo24ccnh31GVMABxTC8f-P5Oaiw4cw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Karantina" + } + ] + }, + { + "name": "Karla", + "fontFamily": "Karla, sans-serif", + "slug": "karla", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/karla/v30/qkBIXvYC6trAT55ZBi1ueQVIjQTDeJqqFENLR7fHGw.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Karla" + }, + { + "src": "http://fonts.gstatic.com/s/karla/v30/qkBIXvYC6trAT55ZBi1ueQVIjQTDppqqFENLR7fHGw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Karla" + }, + { + "src": "http://fonts.gstatic.com/s/karla/v30/qkBIXvYC6trAT55ZBi1ueQVIjQTD-JqqFENLR7fHGw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Karla" + }, + { + "src": "http://fonts.gstatic.com/s/karla/v30/qkBIXvYC6trAT55ZBi1ueQVIjQTDypqqFENLR7fHGw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Karla" + }, + { + "src": "http://fonts.gstatic.com/s/karla/v30/qkBIXvYC6trAT55ZBi1ueQVIjQTDJp2qFENLR7fHGw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Karla" + }, + { + "src": "http://fonts.gstatic.com/s/karla/v30/qkBIXvYC6trAT55ZBi1ueQVIjQTDH52qFENLR7fHGw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Karla" + }, + { + "src": "http://fonts.gstatic.com/s/karla/v30/qkBIXvYC6trAT55ZBi1ueQVIjQTDeJ2qFENLR7fHGw.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Karla" + }, + { + "src": "http://fonts.gstatic.com/s/karla/v30/qkBKXvYC6trAT7RQNNK2EG7SIwPWMNnCV0lPZbLXGxGR.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Karla" + }, + { + "src": "http://fonts.gstatic.com/s/karla/v30/qkBKXvYC6trAT7RQNNK2EG7SIwPWMNkcV0lPZbLXGxGR.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Karla" + }, + { + "src": "http://fonts.gstatic.com/s/karla/v30/qkBKXvYC6trAT7RQNNK2EG7SIwPWMNlCV0lPZbLXGxGR.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Karla" + }, + { + "src": "http://fonts.gstatic.com/s/karla/v30/qkBKXvYC6trAT7RQNNK2EG7SIwPWMNlwV0lPZbLXGxGR.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Karla" + }, + { + "src": "http://fonts.gstatic.com/s/karla/v30/qkBKXvYC6trAT7RQNNK2EG7SIwPWMNmcUElPZbLXGxGR.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Karla" + }, + { + "src": "http://fonts.gstatic.com/s/karla/v30/qkBKXvYC6trAT7RQNNK2EG7SIwPWMNmlUElPZbLXGxGR.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Karla" + }, + { + "src": "http://fonts.gstatic.com/s/karla/v30/qkBKXvYC6trAT7RQNNK2EG7SIwPWMNnCUElPZbLXGxGR.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Karla" + } + ] + }, + { + "name": "Karma", + "fontFamily": "Karma, serif", + "slug": "karma", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/karma/v16/va9F4kzAzMZRGLjDY8Z_uqzGQC_-.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Karma" + }, + { + "src": "http://fonts.gstatic.com/s/karma/v16/va9I4kzAzMZRGIBvS-J3kbDP.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Karma" + }, + { + "src": "http://fonts.gstatic.com/s/karma/v16/va9F4kzAzMZRGLibYsZ_uqzGQC_-.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Karma" + }, + { + "src": "http://fonts.gstatic.com/s/karma/v16/va9F4kzAzMZRGLi3ZcZ_uqzGQC_-.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Karma" + }, + { + "src": "http://fonts.gstatic.com/s/karma/v16/va9F4kzAzMZRGLjTZMZ_uqzGQC_-.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Karma" + } + ] + }, + { + "name": "Katibeh", + "fontFamily": "Katibeh, system-ui", + "slug": "katibeh", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/katibeh/v17/ZGjXol5MQJog4bxDaC1RVDNdGDs.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Katibeh" + } + ] + }, + { + "name": "Kaushan Script", + "fontFamily": "Kaushan Script, cursive", + "slug": "kaushan-script", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kaushanscript/v14/vm8vdRfvXFLG3OLnsO15WYS5DF7_ytN3M48a.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kaushan Script" + } + ] + }, + { + "name": "Kavivanar", + "fontFamily": "Kavivanar, cursive", + "slug": "kavivanar", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kavivanar/v18/o-0IIpQgyXYSwhxP7_Jb4j5Ba_2c7A.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kavivanar" + } + ] + }, + { + "name": "Kavoon", + "fontFamily": "Kavoon, system-ui", + "slug": "kavoon", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kavoon/v21/pxiFyp4_scRYhlU4NLr6f1pdEQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kavoon" + } + ] + }, + { + "name": "Kdam Thmor Pro", + "fontFamily": "Kdam Thmor Pro, sans-serif", + "slug": "kdam-thmor-pro", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kdamthmorpro/v1/EJRPQgAzVdcI-Qdvt34jzurnGA7_j89I8ZWb.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kdam Thmor Pro" + } + ] + }, + { + "name": "Keania One", + "fontFamily": "Keania One, system-ui", + "slug": "keania-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/keaniaone/v21/zOL54pXJk65E8pXardnuycRuv-hHkOs.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Keania One" + } + ] + }, + { + "name": "Kelly Slab", + "fontFamily": "Kelly Slab, system-ui", + "slug": "kelly-slab", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kellyslab/v15/-W_7XJX0Rz3cxUnJC5t6TkMBf50kbiM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kelly Slab" + } + ] + }, + { + "name": "Kenia", + "fontFamily": "Kenia, system-ui", + "slug": "kenia", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kenia/v24/jizURE5PuHQH9qCONUGswfGM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kenia" + } + ] + }, + { + "name": "Khand", + "fontFamily": "Khand, sans-serif", + "slug": "khand", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/khand/v17/TwMN-IINQlQQ0bL5cFE3ZwaH__-C.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Khand" + }, + { + "src": "http://fonts.gstatic.com/s/khand/v17/TwMA-IINQlQQ0YpVWHU_TBqO.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Khand" + }, + { + "src": "http://fonts.gstatic.com/s/khand/v17/TwMN-IINQlQQ0bKhcVE3ZwaH__-C.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Khand" + }, + { + "src": "http://fonts.gstatic.com/s/khand/v17/TwMN-IINQlQQ0bKNdlE3ZwaH__-C.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Khand" + }, + { + "src": "http://fonts.gstatic.com/s/khand/v17/TwMN-IINQlQQ0bLpd1E3ZwaH__-C.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Khand" + } + ] + }, + { + "name": "Khmer", + "fontFamily": "Khmer, system-ui", + "slug": "khmer", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/khmer/v25/MjQImit_vPPwpF-BpN2EeYmD.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Khmer" + } + ] + }, + { + "name": "Khula", + "fontFamily": "Khula, sans-serif", + "slug": "khula", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/khula/v12/OpNPnoEOns3V7G-ljCvUrC59XwXD.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Khula" + }, + { + "src": "http://fonts.gstatic.com/s/khula/v12/OpNCnoEOns3V7FcJpA_chzJ0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Khula" + }, + { + "src": "http://fonts.gstatic.com/s/khula/v12/OpNPnoEOns3V7G_RiivUrC59XwXD.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Khula" + }, + { + "src": "http://fonts.gstatic.com/s/khula/v12/OpNPnoEOns3V7G-1iyvUrC59XwXD.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Khula" + }, + { + "src": "http://fonts.gstatic.com/s/khula/v12/OpNPnoEOns3V7G-piCvUrC59XwXD.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Khula" + } + ] + }, + { + "name": "Kings", + "fontFamily": "Kings, cursive", + "slug": "kings", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kings/v5/8AtnGsK4O5CYXU_Iq6GSPaHS.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kings" + } + ] + }, + { + "name": "Kirang Haerang", + "fontFamily": "Kirang Haerang, system-ui", + "slug": "kirang-haerang", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kiranghaerang/v20/E21-_dn_gvvIjhYON1lpIU4-bcqvWPaJq4no.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kirang Haerang" + } + ] + }, + { + "name": "Kite One", + "fontFamily": "Kite One, sans-serif", + "slug": "kite-one", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kiteone/v22/70lQu7shLnA_E02vyq1b6HnGO4uA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kite One" + } + ] + }, + { + "name": "Kiwi Maru", + "fontFamily": "Kiwi Maru, serif", + "slug": "kiwi-maru", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kiwimaru/v14/R70djykGkuuDep-hRg6gNCi0Vxn9R5ShnA.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Kiwi Maru" + }, + { + "src": "http://fonts.gstatic.com/s/kiwimaru/v14/R70YjykGkuuDep-hRg6YmACQXzLhTg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kiwi Maru" + }, + { + "src": "http://fonts.gstatic.com/s/kiwimaru/v14/R70djykGkuuDep-hRg6gbCm0Vxn9R5ShnA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Kiwi Maru" + } + ] + }, + { + "name": "Klee One", + "fontFamily": "Klee One, cursive", + "slug": "klee-one", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kleeone/v7/LDIxapCLNRc6A8oT4q4AOeekWPrP.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Klee One" + }, + { + "src": "http://fonts.gstatic.com/s/kleeone/v7/LDI2apCLNRc6A8oT4pbYF8Osc-bGkqIw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Klee One" + } + ] + }, + { + "name": "Knewave", + "fontFamily": "Knewave, system-ui", + "slug": "knewave", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/knewave/v14/sykz-yx0lLcxQaSItSq9-trEvlQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Knewave" + } + ] + }, + { + "name": "KoHo", + "fontFamily": "KoHo, sans-serif", + "slug": "koho", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/koho/v16/K2FxfZ5fmddNPuE1WJ75JoKhHys.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "KoHo" + }, + { + "src": "http://fonts.gstatic.com/s/koho/v16/K2FzfZ5fmddNNisssJ_zIqCkDyvqZA.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "KoHo" + }, + { + "src": "http://fonts.gstatic.com/s/koho/v16/K2FxfZ5fmddNPoU2WJ75JoKhHys.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "KoHo" + }, + { + "src": "http://fonts.gstatic.com/s/koho/v16/K2FzfZ5fmddNNiss1JzzIqCkDyvqZA.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "KoHo" + }, + { + "src": "http://fonts.gstatic.com/s/koho/v16/K2F-fZ5fmddNBikefJbSOos.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "KoHo" + }, + { + "src": "http://fonts.gstatic.com/s/koho/v16/K2FwfZ5fmddNNisUeLTXKou4Bg.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "KoHo" + }, + { + "src": "http://fonts.gstatic.com/s/koho/v16/K2FxfZ5fmddNPt03WJ75JoKhHys.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "KoHo" + }, + { + "src": "http://fonts.gstatic.com/s/koho/v16/K2FzfZ5fmddNNissjJ3zIqCkDyvqZA.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "KoHo" + }, + { + "src": "http://fonts.gstatic.com/s/koho/v16/K2FxfZ5fmddNPvEwWJ75JoKhHys.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "KoHo" + }, + { + "src": "http://fonts.gstatic.com/s/koho/v16/K2FzfZ5fmddNNissoJrzIqCkDyvqZA.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "KoHo" + }, + { + "src": "http://fonts.gstatic.com/s/koho/v16/K2FxfZ5fmddNPpUxWJ75JoKhHys.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "KoHo" + }, + { + "src": "http://fonts.gstatic.com/s/koho/v16/K2FzfZ5fmddNNissxJvzIqCkDyvqZA.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "KoHo" + } + ] + }, + { + "name": "Kodchasan", + "fontFamily": "Kodchasan, sans-serif", + "slug": "kodchasan", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kodchasan/v17/1cX0aUPOAJv9sG4I-DJeR1Cggeqo3eMeoA.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Kodchasan" + }, + { + "src": "http://fonts.gstatic.com/s/kodchasan/v17/1cXqaUPOAJv9sG4I-DJWjUlIgOCs_-YOoIgN.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Kodchasan" + }, + { + "src": "http://fonts.gstatic.com/s/kodchasan/v17/1cX0aUPOAJv9sG4I-DJeI1Oggeqo3eMeoA.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Kodchasan" + }, + { + "src": "http://fonts.gstatic.com/s/kodchasan/v17/1cXqaUPOAJv9sG4I-DJWjUksg-Cs_-YOoIgN.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Kodchasan" + }, + { + "src": "http://fonts.gstatic.com/s/kodchasan/v17/1cXxaUPOAJv9sG4I-DJmj3uEicG01A.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kodchasan" + }, + { + "src": "http://fonts.gstatic.com/s/kodchasan/v17/1cX3aUPOAJv9sG4I-DJWjXGAq8Sk1PoH.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Kodchasan" + }, + { + "src": "http://fonts.gstatic.com/s/kodchasan/v17/1cX0aUPOAJv9sG4I-DJee1Kggeqo3eMeoA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Kodchasan" + }, + { + "src": "http://fonts.gstatic.com/s/kodchasan/v17/1cXqaUPOAJv9sG4I-DJWjUl0guCs_-YOoIgN.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Kodchasan" + }, + { + "src": "http://fonts.gstatic.com/s/kodchasan/v17/1cX0aUPOAJv9sG4I-DJeV1Wggeqo3eMeoA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Kodchasan" + }, + { + "src": "http://fonts.gstatic.com/s/kodchasan/v17/1cXqaUPOAJv9sG4I-DJWjUlYheCs_-YOoIgN.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Kodchasan" + }, + { + "src": "http://fonts.gstatic.com/s/kodchasan/v17/1cX0aUPOAJv9sG4I-DJeM1Sggeqo3eMeoA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Kodchasan" + }, + { + "src": "http://fonts.gstatic.com/s/kodchasan/v17/1cXqaUPOAJv9sG4I-DJWjUk8hOCs_-YOoIgN.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Kodchasan" + } + ] + }, + { + "name": "Koh Santepheap", + "fontFamily": "Koh Santepheap, system-ui", + "slug": "koh-santepheap", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kohsantepheap/v9/gNMfW3p6SJbwyGj2rBZyeOrTjNuFHVyTtjNJUWU.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Koh Santepheap" + }, + { + "src": "http://fonts.gstatic.com/s/kohsantepheap/v9/gNMeW3p6SJbwyGj2rBZyeOrTjNtNP3y5mD9ASHz5.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Koh Santepheap" + }, + { + "src": "http://fonts.gstatic.com/s/kohsantepheap/v9/gNMdW3p6SJbwyGj2rBZyeOrTjOPhF1ixsyNJ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Koh Santepheap" + }, + { + "src": "http://fonts.gstatic.com/s/kohsantepheap/v9/gNMeW3p6SJbwyGj2rBZyeOrTjNtdOHy5mD9ASHz5.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Koh Santepheap" + }, + { + "src": "http://fonts.gstatic.com/s/kohsantepheap/v9/gNMeW3p6SJbwyGj2rBZyeOrTjNtlOny5mD9ASHz5.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Koh Santepheap" + } + ] + }, + { + "name": "Kolker Brush", + "fontFamily": "Kolker Brush, cursive", + "slug": "kolker-brush", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kolkerbrush/v3/iJWDBXWRZjfKWdvmzwvvog3-7KJ6x8qNUQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kolker Brush" + } + ] + }, + { + "name": "Konkhmer Sleokchher", + "fontFamily": "Konkhmer Sleokchher, system-ui", + "slug": "konkhmer-sleokchher", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/konkhmersleokchher/v2/_Xmw-GE-rjmabA_M-aPOZOsCrUv825LFI3507E0d-W0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Konkhmer Sleokchher" + } + ] + }, + { + "name": "Kosugi", + "fontFamily": "Kosugi, sans-serif", + "slug": "kosugi", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kosugi/v15/pxiFyp4_v8FCjlI4NLr6f1pdEQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kosugi" + } + ] + }, + { + "name": "Kosugi Maru", + "fontFamily": "Kosugi Maru, sans-serif", + "slug": "kosugi-maru", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kosugimaru/v14/0nksC9PgP_wGh21A2KeqGiTqivr9iBq_.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kosugi Maru" + } + ] + }, + { + "name": "Kotta One", + "fontFamily": "Kotta One, serif", + "slug": "kotta-one", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kottaone/v20/S6u_w41LXzPc_jlfNWqPHA3s5dwt7w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kotta One" + } + ] + }, + { + "name": "Koulen", + "fontFamily": "Koulen, system-ui", + "slug": "koulen", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/koulen/v25/AMOQz46as3KIBPeWgnA9kuYMUg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Koulen" + } + ] + }, + { + "name": "Kranky", + "fontFamily": "Kranky, system-ui", + "slug": "kranky", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kranky/v24/hESw6XVgJzlPsFnMpheEZo_H_w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kranky" + } + ] + }, + { + "name": "Kreon", + "fontFamily": "Kreon, serif", + "slug": "kreon", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kreon/v37/t5t9IRIUKY-TFF_LW5lnMR3v2DnvPNimejUfp2dWNg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Kreon" + }, + { + "src": "http://fonts.gstatic.com/s/kreon/v37/t5t9IRIUKY-TFF_LW5lnMR3v2DnvYtimejUfp2dWNg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kreon" + }, + { + "src": "http://fonts.gstatic.com/s/kreon/v37/t5t9IRIUKY-TFF_LW5lnMR3v2DnvUNimejUfp2dWNg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Kreon" + }, + { + "src": "http://fonts.gstatic.com/s/kreon/v37/t5t9IRIUKY-TFF_LW5lnMR3v2DnvvN-mejUfp2dWNg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Kreon" + }, + { + "src": "http://fonts.gstatic.com/s/kreon/v37/t5t9IRIUKY-TFF_LW5lnMR3v2Dnvhd-mejUfp2dWNg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Kreon" + } + ] + }, + { + "name": "Kristi", + "fontFamily": "Kristi, cursive", + "slug": "kristi", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kristi/v17/uK_y4ricdeU6zwdRCh0TMv6EXw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kristi" + } + ] + }, + { + "name": "Krona One", + "fontFamily": "Krona One, sans-serif", + "slug": "krona-one", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kronaone/v14/jAnEgHdjHcjgfIb1ZcUCMY-h3cWkWg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Krona One" + } + ] + }, + { + "name": "Krub", + "fontFamily": "Krub, sans-serif", + "slug": "krub", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/krub/v9/sZlEdRyC6CRYZo47KLF4R6gWaf8.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Krub" + }, + { + "src": "http://fonts.gstatic.com/s/krub/v9/sZlGdRyC6CRYbkQiwLByQ4oTef_6gQ.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Krub" + }, + { + "src": "http://fonts.gstatic.com/s/krub/v9/sZlEdRyC6CRYZuo4KLF4R6gWaf8.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Krub" + }, + { + "src": "http://fonts.gstatic.com/s/krub/v9/sZlGdRyC6CRYbkQipLNyQ4oTef_6gQ.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Krub" + }, + { + "src": "http://fonts.gstatic.com/s/krub/v9/sZlLdRyC6CRYXkYQDLlTW6E.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Krub" + }, + { + "src": "http://fonts.gstatic.com/s/krub/v9/sZlFdRyC6CRYbkQaCJtWS6EPcA.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Krub" + }, + { + "src": "http://fonts.gstatic.com/s/krub/v9/sZlEdRyC6CRYZrI5KLF4R6gWaf8.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Krub" + }, + { + "src": "http://fonts.gstatic.com/s/krub/v9/sZlGdRyC6CRYbkQi_LJyQ4oTef_6gQ.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Krub" + }, + { + "src": "http://fonts.gstatic.com/s/krub/v9/sZlEdRyC6CRYZp4-KLF4R6gWaf8.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Krub" + }, + { + "src": "http://fonts.gstatic.com/s/krub/v9/sZlGdRyC6CRYbkQi0LVyQ4oTef_6gQ.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Krub" + }, + { + "src": "http://fonts.gstatic.com/s/krub/v9/sZlEdRyC6CRYZvo_KLF4R6gWaf8.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Krub" + }, + { + "src": "http://fonts.gstatic.com/s/krub/v9/sZlGdRyC6CRYbkQitLRyQ4oTef_6gQ.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Krub" + } + ] + }, + { + "name": "Kufam", + "fontFamily": "Kufam, sans-serif", + "slug": "kufam", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kufam/v20/C8c-4cY7pG7w_oSJDszBXsKCcBH3lqk7qQCJHvIwYg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kufam" + }, + { + "src": "http://fonts.gstatic.com/s/kufam/v20/C8c-4cY7pG7w_oSJDszBXsKCcBH3pKk7qQCJHvIwYg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Kufam" + }, + { + "src": "http://fonts.gstatic.com/s/kufam/v20/C8c-4cY7pG7w_oSJDszBXsKCcBH3SK47qQCJHvIwYg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Kufam" + }, + { + "src": "http://fonts.gstatic.com/s/kufam/v20/C8c-4cY7pG7w_oSJDszBXsKCcBH3ca47qQCJHvIwYg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Kufam" + }, + { + "src": "http://fonts.gstatic.com/s/kufam/v20/C8c-4cY7pG7w_oSJDszBXsKCcBH3Fq47qQCJHvIwYg.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Kufam" + }, + { + "src": "http://fonts.gstatic.com/s/kufam/v20/C8c-4cY7pG7w_oSJDszBXsKCcBH3P647qQCJHvIwYg.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Kufam" + }, + { + "src": "http://fonts.gstatic.com/s/kufam/v20/C8c84cY7pG7w_q6APDMZN6kY3hbiXurT6gqNPPcgYp0i.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Kufam" + }, + { + "src": "http://fonts.gstatic.com/s/kufam/v20/C8c84cY7pG7w_q6APDMZN6kY3hbiXurh6gqNPPcgYp0i.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Kufam" + }, + { + "src": "http://fonts.gstatic.com/s/kufam/v20/C8c84cY7pG7w_q6APDMZN6kY3hbiXuoN7QqNPPcgYp0i.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Kufam" + }, + { + "src": "http://fonts.gstatic.com/s/kufam/v20/C8c84cY7pG7w_q6APDMZN6kY3hbiXuo07QqNPPcgYp0i.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Kufam" + }, + { + "src": "http://fonts.gstatic.com/s/kufam/v20/C8c84cY7pG7w_q6APDMZN6kY3hbiXupT7QqNPPcgYp0i.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Kufam" + }, + { + "src": "http://fonts.gstatic.com/s/kufam/v20/C8c84cY7pG7w_q6APDMZN6kY3hbiXup67QqNPPcgYp0i.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Kufam" + } + ] + }, + { + "name": "Kulim Park", + "fontFamily": "Kulim Park, sans-serif", + "slug": "kulim-park", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kulimpark/v14/fdN49secq3hflz1Uu3IwjJYNwa5aZbUvGjU.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Kulim Park" + }, + { + "src": "http://fonts.gstatic.com/s/kulimpark/v14/fdNm9secq3hflz1Uu3IwhFwUKa9QYZcqCjVVUA.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Kulim Park" + }, + { + "src": "http://fonts.gstatic.com/s/kulimpark/v14/fdN49secq3hflz1Uu3IwjPIOwa5aZbUvGjU.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Kulim Park" + }, + { + "src": "http://fonts.gstatic.com/s/kulimpark/v14/fdNm9secq3hflz1Uu3IwhFwUTaxQYZcqCjVVUA.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Kulim Park" + }, + { + "src": "http://fonts.gstatic.com/s/kulimpark/v14/fdN79secq3hflz1Uu3IwtF4m5aZxebw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kulim Park" + }, + { + "src": "http://fonts.gstatic.com/s/kulimpark/v14/fdN59secq3hflz1Uu3IwhFws4YR0abw2Aw.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Kulim Park" + }, + { + "src": "http://fonts.gstatic.com/s/kulimpark/v14/fdN49secq3hflz1Uu3IwjIYIwa5aZbUvGjU.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Kulim Park" + }, + { + "src": "http://fonts.gstatic.com/s/kulimpark/v14/fdNm9secq3hflz1Uu3IwhFwUOapQYZcqCjVVUA.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Kulim Park" + }, + { + "src": "http://fonts.gstatic.com/s/kulimpark/v14/fdN49secq3hflz1Uu3IwjOIJwa5aZbUvGjU.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Kulim Park" + }, + { + "src": "http://fonts.gstatic.com/s/kulimpark/v14/fdNm9secq3hflz1Uu3IwhFwUXatQYZcqCjVVUA.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Kulim Park" + } + ] + }, + { + "name": "Kumar One", + "fontFamily": "Kumar One, system-ui", + "slug": "kumar-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kumarone/v18/bMr1mS-P958wYi6YaGeGNO6WU3oT0g.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kumar One" + } + ] + }, + { + "name": "Kumar One Outline", + "fontFamily": "Kumar One Outline, system-ui", + "slug": "kumar-one-outline", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kumaroneoutline/v17/Noao6VH62pyLP0fsrZ-v18wlUEcX9zDwRQu8EGKF.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kumar One Outline" + } + ] + }, + { + "name": "Kumbh Sans", + "fontFamily": "Kumbh Sans, sans-serif", + "slug": "kumbh-sans", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kumbhsans/v20/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQkZcA8bTuUkqaLg.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Kumbh Sans" + }, + { + "src": "http://fonts.gstatic.com/s/kumbhsans/v20/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQEZYA8bTuUkqaLg.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Kumbh Sans" + }, + { + "src": "http://fonts.gstatic.com/s/kumbhsans/v20/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQz5YA8bTuUkqaLg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Kumbh Sans" + }, + { + "src": "http://fonts.gstatic.com/s/kumbhsans/v20/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQkZYA8bTuUkqaLg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kumbh Sans" + }, + { + "src": "http://fonts.gstatic.com/s/kumbhsans/v20/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQo5YA8bTuUkqaLg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Kumbh Sans" + }, + { + "src": "http://fonts.gstatic.com/s/kumbhsans/v20/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQT5EA8bTuUkqaLg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Kumbh Sans" + }, + { + "src": "http://fonts.gstatic.com/s/kumbhsans/v20/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQdpEA8bTuUkqaLg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Kumbh Sans" + }, + { + "src": "http://fonts.gstatic.com/s/kumbhsans/v20/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQEZEA8bTuUkqaLg.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Kumbh Sans" + }, + { + "src": "http://fonts.gstatic.com/s/kumbhsans/v20/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQOJEA8bTuUkqaLg.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Kumbh Sans" + } + ] + }, + { + "name": "Kurale", + "fontFamily": "Kurale, serif", + "slug": "kurale", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/kurale/v11/4iCs6KV9e9dXjho6eAT3v02QFg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Kurale" + } + ] + }, + { + "name": "La Belle Aurore", + "fontFamily": "La Belle Aurore, cursive", + "slug": "la-belle-aurore", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/labelleaurore/v16/RrQIbot8-mNYKnGNDkWlocovHeIIG-eFNVmULg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "La Belle Aurore" + } + ] + }, + { + "name": "Labrada", + "fontFamily": "Labrada, serif", + "slug": "labrada", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/labrada/v2/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9VTSgM4QPdUej17.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Labrada" + }, + { + "src": "http://fonts.gstatic.com/s/labrada/v2/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9XTSwM4QPdUej17.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Labrada" + }, + { + "src": "http://fonts.gstatic.com/s/labrada/v2/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9UNSwM4QPdUej17.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Labrada" + }, + { + "src": "http://fonts.gstatic.com/s/labrada/v2/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9VTSwM4QPdUej17.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Labrada" + }, + { + "src": "http://fonts.gstatic.com/s/labrada/v2/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9VhSwM4QPdUej17.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Labrada" + }, + { + "src": "http://fonts.gstatic.com/s/labrada/v2/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9WNTAM4QPdUej17.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Labrada" + }, + { + "src": "http://fonts.gstatic.com/s/labrada/v2/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9W0TAM4QPdUej17.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Labrada" + }, + { + "src": "http://fonts.gstatic.com/s/labrada/v2/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9XTTAM4QPdUej17.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Labrada" + }, + { + "src": "http://fonts.gstatic.com/s/labrada/v2/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9X6TAM4QPdUej17.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Labrada" + }, + { + "src": "http://fonts.gstatic.com/s/labrada/v2/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCOt6SvN2fy17-dE.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Labrada" + }, + { + "src": "http://fonts.gstatic.com/s/labrada/v2/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCGt7SvN2fy17-dE.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Labrada" + }, + { + "src": "http://fonts.gstatic.com/s/labrada/v2/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCLV7SvN2fy17-dE.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Labrada" + }, + { + "src": "http://fonts.gstatic.com/s/labrada/v2/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCOt7SvN2fy17-dE.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Labrada" + }, + { + "src": "http://fonts.gstatic.com/s/labrada/v2/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCNl7SvN2fy17-dE.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Labrada" + }, + { + "src": "http://fonts.gstatic.com/s/labrada/v2/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCDV8SvN2fy17-dE.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Labrada" + }, + { + "src": "http://fonts.gstatic.com/s/labrada/v2/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCAx8SvN2fy17-dE.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Labrada" + }, + { + "src": "http://fonts.gstatic.com/s/labrada/v2/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCGt8SvN2fy17-dE.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Labrada" + }, + { + "src": "http://fonts.gstatic.com/s/labrada/v2/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCEJ8SvN2fy17-dE.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Labrada" + } + ] + }, + { + "name": "Lacquer", + "fontFamily": "Lacquer, system-ui", + "slug": "lacquer", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/lacquer/v15/EYqzma1QwqpG4_BBB7-AXhttQ5I.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Lacquer" + } + ] + }, + { + "name": "Laila", + "fontFamily": "Laila, sans-serif", + "slug": "laila", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/laila/v13/LYjBdG_8nE8jDLzxogNAh14nVcfe.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Laila" + }, + { + "src": "http://fonts.gstatic.com/s/laila/v13/LYjMdG_8nE8jDIRdiidIrEIu.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Laila" + }, + { + "src": "http://fonts.gstatic.com/s/laila/v13/LYjBdG_8nE8jDLypowNAh14nVcfe.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Laila" + }, + { + "src": "http://fonts.gstatic.com/s/laila/v13/LYjBdG_8nE8jDLyFpANAh14nVcfe.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Laila" + }, + { + "src": "http://fonts.gstatic.com/s/laila/v13/LYjBdG_8nE8jDLzhpQNAh14nVcfe.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Laila" + } + ] + }, + { + "name": "Lakki Reddy", + "fontFamily": "Lakki Reddy, cursive", + "slug": "lakki-reddy", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/lakkireddy/v19/S6u5w49MUSzD9jlCPmvLZQfox9k97-xZ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Lakki Reddy" + } + ] + }, + { + "name": "Lalezar", + "fontFamily": "Lalezar, system-ui", + "slug": "lalezar", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/lalezar/v14/zrfl0HLVx-HwTP82UaDyIiL0RCg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Lalezar" + } + ] + }, + { + "name": "Lancelot", + "fontFamily": "Lancelot, system-ui", + "slug": "lancelot", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/lancelot/v23/J7acnppxBGtQEulG4JY4xJ9CGyAa.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Lancelot" + } + ] + }, + { + "name": "Langar", + "fontFamily": "Langar, system-ui", + "slug": "langar", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/langar/v27/kJEyBukW7AIlgjGVrTVZ99sqrQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Langar" + } + ] + }, + { + "name": "Lateef", + "fontFamily": "Lateef, serif", + "slug": "lateef", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/lateef/v29/hESz6XVnNCxEvkb0bjygbqTb9nQ-RA.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Lateef" + }, + { + "src": "http://fonts.gstatic.com/s/lateef/v29/hESz6XVnNCxEvkb0Cj-gbqTb9nQ-RA.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Lateef" + }, + { + "src": "http://fonts.gstatic.com/s/lateef/v29/hESw6XVnNCxEvkbMpheEZo_H_w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Lateef" + }, + { + "src": "http://fonts.gstatic.com/s/lateef/v29/hESz6XVnNCxEvkb0Uj6gbqTb9nQ-RA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Lateef" + }, + { + "src": "http://fonts.gstatic.com/s/lateef/v29/hESz6XVnNCxEvkb0fjmgbqTb9nQ-RA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Lateef" + }, + { + "src": "http://fonts.gstatic.com/s/lateef/v29/hESz6XVnNCxEvkb0GjigbqTb9nQ-RA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Lateef" + }, + { + "src": "http://fonts.gstatic.com/s/lateef/v29/hESz6XVnNCxEvkb0BjugbqTb9nQ-RA.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Lateef" + } + ] + }, + { + "name": "Lato", + "fontFamily": "Lato, sans-serif", + "slug": "lato", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/lato/v24/S6u8w4BMUTPHh30wWyWrFCbw7A.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Lato" + }, + { + "src": "http://fonts.gstatic.com/s/lato/v24/S6u-w4BMUTPHjxsIPy-vNiPg7MU0.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Lato" + }, + { + "src": "http://fonts.gstatic.com/s/lato/v24/S6u9w4BMUTPHh7USew-FGC_p9dw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Lato" + }, + { + "src": "http://fonts.gstatic.com/s/lato/v24/S6u_w4BMUTPHjxsI9w2PHA3s5dwt7w.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Lato" + }, + { + "src": "http://fonts.gstatic.com/s/lato/v24/S6uyw4BMUTPHvxk6XweuBCY.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Lato" + }, + { + "src": "http://fonts.gstatic.com/s/lato/v24/S6u8w4BMUTPHjxswWyWrFCbw7A.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Lato" + }, + { + "src": "http://fonts.gstatic.com/s/lato/v24/S6u9w4BMUTPHh6UVew-FGC_p9dw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Lato" + }, + { + "src": "http://fonts.gstatic.com/s/lato/v24/S6u_w4BMUTPHjxsI5wqPHA3s5dwt7w.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Lato" + }, + { + "src": "http://fonts.gstatic.com/s/lato/v24/S6u9w4BMUTPHh50Xew-FGC_p9dw.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Lato" + }, + { + "src": "http://fonts.gstatic.com/s/lato/v24/S6u_w4BMUTPHjxsI3wiPHA3s5dwt7w.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Lato" + } + ] + }, + { + "name": "Lavishly Yours", + "fontFamily": "Lavishly Yours, cursive", + "slug": "lavishly-yours", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/lavishlyyours/v2/jizDREVIvGwH5OjiZmX9r5z_WxUY0TY7ikbI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Lavishly Yours" + } + ] + }, + { + "name": "League Gothic", + "fontFamily": "League Gothic, sans-serif", + "slug": "league-gothic", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/leaguegothic/v6/qFdR35CBi4tvBz81xy7WG7ep-BQAY7Krj7feObpH_-amidQ6Q9hn.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "League Gothic" + } + ] + }, + { + "name": "League Script", + "fontFamily": "League Script, cursive", + "slug": "league-script", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/leaguescript/v24/CSR54zpSlumSWj9CGVsoBZdeaNNUuOwkC2s.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "League Script" + } + ] + }, + { + "name": "League Spartan", + "fontFamily": "League Spartan, sans-serif", + "slug": "league-spartan", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/leaguespartan/v11/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvM_oXpBMdcFguczA.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "League Spartan" + }, + { + "src": "http://fonts.gstatic.com/s/leaguespartan/v11/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvMfoTpBMdcFguczA.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "League Spartan" + }, + { + "src": "http://fonts.gstatic.com/s/leaguespartan/v11/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvMoITpBMdcFguczA.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "League Spartan" + }, + { + "src": "http://fonts.gstatic.com/s/leaguespartan/v11/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvM_oTpBMdcFguczA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "League Spartan" + }, + { + "src": "http://fonts.gstatic.com/s/leaguespartan/v11/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvMzITpBMdcFguczA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "League Spartan" + }, + { + "src": "http://fonts.gstatic.com/s/leaguespartan/v11/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvMIIPpBMdcFguczA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "League Spartan" + }, + { + "src": "http://fonts.gstatic.com/s/leaguespartan/v11/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvMGYPpBMdcFguczA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "League Spartan" + }, + { + "src": "http://fonts.gstatic.com/s/leaguespartan/v11/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvMfoPpBMdcFguczA.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "League Spartan" + }, + { + "src": "http://fonts.gstatic.com/s/leaguespartan/v11/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvMV4PpBMdcFguczA.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "League Spartan" + } + ] + }, + { + "name": "Leckerli One", + "fontFamily": "Leckerli One, cursive", + "slug": "leckerli-one", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/leckerlione/v16/V8mCoQH8VCsNttEnxnGQ-1itLZxcBtItFw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Leckerli One" + } + ] + }, + { + "name": "Ledger", + "fontFamily": "Ledger, serif", + "slug": "ledger", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ledger/v16/j8_q6-HK1L3if_sxm8DwHTBhHw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Ledger" + } + ] + }, + { + "name": "Lekton", + "fontFamily": "Lekton, sans-serif", + "slug": "lekton", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/lekton/v17/SZc43FDmLaWmWpBeXxfonUPL6Q.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Lekton" + }, + { + "src": "http://fonts.gstatic.com/s/lekton/v17/SZc63FDmLaWmWpBuXR3sv0bb6StO.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Lekton" + }, + { + "src": "http://fonts.gstatic.com/s/lekton/v17/SZc73FDmLaWmWpBm4zjMlWjX4DJXgQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Lekton" + } + ] + }, + { + "name": "Lemon", + "fontFamily": "Lemon, system-ui", + "slug": "lemon", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/lemon/v15/HI_EiYEVKqRMq0jBSZXAQ4-d.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Lemon" + } + ] + }, + { + "name": "Lemonada", + "fontFamily": "Lemonada, system-ui", + "slug": "lemonada", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/lemonada/v26/0QI-MXFD9oygTWy_R-FFlwV-bgfR7QJGJOt2mfWc3Z2pTg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Lemonada" + }, + { + "src": "http://fonts.gstatic.com/s/lemonada/v26/0QI-MXFD9oygTWy_R-FFlwV-bgfR7QJGeut2mfWc3Z2pTg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Lemonada" + }, + { + "src": "http://fonts.gstatic.com/s/lemonada/v26/0QI-MXFD9oygTWy_R-FFlwV-bgfR7QJGSOt2mfWc3Z2pTg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Lemonada" + }, + { + "src": "http://fonts.gstatic.com/s/lemonada/v26/0QI-MXFD9oygTWy_R-FFlwV-bgfR7QJGpOx2mfWc3Z2pTg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Lemonada" + }, + { + "src": "http://fonts.gstatic.com/s/lemonada/v26/0QI-MXFD9oygTWy_R-FFlwV-bgfR7QJGnex2mfWc3Z2pTg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Lemonada" + } + ] + }, + { + "name": "Lexend", + "fontFamily": "Lexend, sans-serif", + "slug": "lexend", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/lexend/v18/wlptgwvFAVdoq2_F94zlCfv0bz1WCzsX_LBte6KuGEo.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Lexend" + }, + { + "src": "http://fonts.gstatic.com/s/lexend/v18/wlptgwvFAVdoq2_F94zlCfv0bz1WC7sW_LBte6KuGEo.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Lexend" + }, + { + "src": "http://fonts.gstatic.com/s/lexend/v18/wlptgwvFAVdoq2_F94zlCfv0bz1WC2UW_LBte6KuGEo.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Lexend" + }, + { + "src": "http://fonts.gstatic.com/s/lexend/v18/wlptgwvFAVdoq2_F94zlCfv0bz1WCzsW_LBte6KuGEo.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Lexend" + }, + { + "src": "http://fonts.gstatic.com/s/lexend/v18/wlptgwvFAVdoq2_F94zlCfv0bz1WCwkW_LBte6KuGEo.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Lexend" + }, + { + "src": "http://fonts.gstatic.com/s/lexend/v18/wlptgwvFAVdoq2_F94zlCfv0bz1WC-UR_LBte6KuGEo.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Lexend" + }, + { + "src": "http://fonts.gstatic.com/s/lexend/v18/wlptgwvFAVdoq2_F94zlCfv0bz1WC9wR_LBte6KuGEo.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Lexend" + }, + { + "src": "http://fonts.gstatic.com/s/lexend/v18/wlptgwvFAVdoq2_F94zlCfv0bz1WC7sR_LBte6KuGEo.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Lexend" + }, + { + "src": "http://fonts.gstatic.com/s/lexend/v18/wlptgwvFAVdoq2_F94zlCfv0bz1WC5IR_LBte6KuGEo.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Lexend" + } + ] + }, + { + "name": "Lexend Deca", + "fontFamily": "Lexend Deca, sans-serif", + "slug": "lexend-deca", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/lexenddeca/v21/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U48MxArBPCqLNflg.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Lexend Deca" + }, + { + "src": "http://fonts.gstatic.com/s/lexenddeca/v21/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4cM1ArBPCqLNflg.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Lexend Deca" + }, + { + "src": "http://fonts.gstatic.com/s/lexenddeca/v21/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4rs1ArBPCqLNflg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Lexend Deca" + }, + { + "src": "http://fonts.gstatic.com/s/lexenddeca/v21/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U48M1ArBPCqLNflg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Lexend Deca" + }, + { + "src": "http://fonts.gstatic.com/s/lexenddeca/v21/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4ws1ArBPCqLNflg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Lexend Deca" + }, + { + "src": "http://fonts.gstatic.com/s/lexenddeca/v21/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4LspArBPCqLNflg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Lexend Deca" + }, + { + "src": "http://fonts.gstatic.com/s/lexenddeca/v21/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4F8pArBPCqLNflg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Lexend Deca" + }, + { + "src": "http://fonts.gstatic.com/s/lexenddeca/v21/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4cMpArBPCqLNflg.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Lexend Deca" + }, + { + "src": "http://fonts.gstatic.com/s/lexenddeca/v21/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4WcpArBPCqLNflg.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Lexend Deca" + } + ] + }, + { + "name": "Lexend Exa", + "fontFamily": "Lexend Exa, sans-serif", + "slug": "lexend-exa", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/lexendexa/v30/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9r7T6bHHJ8BRq0b.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Lexend Exa" + }, + { + "src": "http://fonts.gstatic.com/s/lexendexa/v30/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9p7TqbHHJ8BRq0b.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Lexend Exa" + }, + { + "src": "http://fonts.gstatic.com/s/lexendexa/v30/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9qlTqbHHJ8BRq0b.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Lexend Exa" + }, + { + "src": "http://fonts.gstatic.com/s/lexendexa/v30/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9r7TqbHHJ8BRq0b.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Lexend Exa" + }, + { + "src": "http://fonts.gstatic.com/s/lexendexa/v30/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9rJTqbHHJ8BRq0b.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Lexend Exa" + }, + { + "src": "http://fonts.gstatic.com/s/lexendexa/v30/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9olSabHHJ8BRq0b.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Lexend Exa" + }, + { + "src": "http://fonts.gstatic.com/s/lexendexa/v30/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9ocSabHHJ8BRq0b.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Lexend Exa" + }, + { + "src": "http://fonts.gstatic.com/s/lexendexa/v30/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9p7SabHHJ8BRq0b.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Lexend Exa" + }, + { + "src": "http://fonts.gstatic.com/s/lexendexa/v30/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9pSSabHHJ8BRq0b.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Lexend Exa" + } + ] + }, + { + "name": "Lexend Giga", + "fontFamily": "Lexend Giga, sans-serif", + "slug": "lexend-giga", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/lexendgiga/v24/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRC2LmE68oo6eepYQ.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Lexend Giga" + }, + { + "src": "http://fonts.gstatic.com/s/lexendgiga/v24/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRCWLiE68oo6eepYQ.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Lexend Giga" + }, + { + "src": "http://fonts.gstatic.com/s/lexendgiga/v24/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRChriE68oo6eepYQ.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Lexend Giga" + }, + { + "src": "http://fonts.gstatic.com/s/lexendgiga/v24/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRC2LiE68oo6eepYQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Lexend Giga" + }, + { + "src": "http://fonts.gstatic.com/s/lexendgiga/v24/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRC6riE68oo6eepYQ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Lexend Giga" + }, + { + "src": "http://fonts.gstatic.com/s/lexendgiga/v24/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRCBr-E68oo6eepYQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Lexend Giga" + }, + { + "src": "http://fonts.gstatic.com/s/lexendgiga/v24/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRCP7-E68oo6eepYQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Lexend Giga" + }, + { + "src": "http://fonts.gstatic.com/s/lexendgiga/v24/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRCWL-E68oo6eepYQ.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Lexend Giga" + }, + { + "src": "http://fonts.gstatic.com/s/lexendgiga/v24/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRCcb-E68oo6eepYQ.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Lexend Giga" + } + ] + }, + { + "name": "Lexend Mega", + "fontFamily": "Lexend Mega, sans-serif", + "slug": "lexend-mega", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/lexendmega/v24/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDL8fivveyiq9EqQw.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Lexend Mega" + }, + { + "src": "http://fonts.gstatic.com/s/lexendmega/v24/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDLcfmvveyiq9EqQw.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Lexend Mega" + }, + { + "src": "http://fonts.gstatic.com/s/lexendmega/v24/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDLr_mvveyiq9EqQw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Lexend Mega" + }, + { + "src": "http://fonts.gstatic.com/s/lexendmega/v24/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDL8fmvveyiq9EqQw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Lexend Mega" + }, + { + "src": "http://fonts.gstatic.com/s/lexendmega/v24/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDLw_mvveyiq9EqQw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Lexend Mega" + }, + { + "src": "http://fonts.gstatic.com/s/lexendmega/v24/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDLL_6vveyiq9EqQw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Lexend Mega" + }, + { + "src": "http://fonts.gstatic.com/s/lexendmega/v24/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDLFv6vveyiq9EqQw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Lexend Mega" + }, + { + "src": "http://fonts.gstatic.com/s/lexendmega/v24/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDLcf6vveyiq9EqQw.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Lexend Mega" + }, + { + "src": "http://fonts.gstatic.com/s/lexendmega/v24/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDLWP6vveyiq9EqQw.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Lexend Mega" + } + ] + }, + { + "name": "Lexend Peta", + "fontFamily": "Lexend Peta, sans-serif", + "slug": "lexend-peta", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/lexendpeta/v27/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgR6SFyW1YuRTsnfw.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Lexend Peta" + }, + { + "src": "http://fonts.gstatic.com/s/lexendpeta/v27/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgRaSByW1YuRTsnfw.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Lexend Peta" + }, + { + "src": "http://fonts.gstatic.com/s/lexendpeta/v27/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgRtyByW1YuRTsnfw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Lexend Peta" + }, + { + "src": "http://fonts.gstatic.com/s/lexendpeta/v27/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgR6SByW1YuRTsnfw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Lexend Peta" + }, + { + "src": "http://fonts.gstatic.com/s/lexendpeta/v27/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgR2yByW1YuRTsnfw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Lexend Peta" + }, + { + "src": "http://fonts.gstatic.com/s/lexendpeta/v27/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgRNydyW1YuRTsnfw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Lexend Peta" + }, + { + "src": "http://fonts.gstatic.com/s/lexendpeta/v27/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgRDidyW1YuRTsnfw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Lexend Peta" + }, + { + "src": "http://fonts.gstatic.com/s/lexendpeta/v27/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgRaSdyW1YuRTsnfw.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Lexend Peta" + }, + { + "src": "http://fonts.gstatic.com/s/lexendpeta/v27/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgRQCdyW1YuRTsnfw.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Lexend Peta" + } + ] + }, + { + "name": "Lexend Tera", + "fontFamily": "Lexend Tera, sans-serif", + "slug": "lexend-tera", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/lexendtera/v27/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiM5zITdpz0fYxcrQ.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Lexend Tera" + }, + { + "src": "http://fonts.gstatic.com/s/lexendtera/v27/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiMZzMTdpz0fYxcrQ.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Lexend Tera" + }, + { + "src": "http://fonts.gstatic.com/s/lexendtera/v27/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiMuTMTdpz0fYxcrQ.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Lexend Tera" + }, + { + "src": "http://fonts.gstatic.com/s/lexendtera/v27/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiM5zMTdpz0fYxcrQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Lexend Tera" + }, + { + "src": "http://fonts.gstatic.com/s/lexendtera/v27/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiM1TMTdpz0fYxcrQ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Lexend Tera" + }, + { + "src": "http://fonts.gstatic.com/s/lexendtera/v27/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiMOTQTdpz0fYxcrQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Lexend Tera" + }, + { + "src": "http://fonts.gstatic.com/s/lexendtera/v27/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiMADQTdpz0fYxcrQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Lexend Tera" + }, + { + "src": "http://fonts.gstatic.com/s/lexendtera/v27/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiMZzQTdpz0fYxcrQ.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Lexend Tera" + }, + { + "src": "http://fonts.gstatic.com/s/lexendtera/v27/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiMTjQTdpz0fYxcrQ.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Lexend Tera" + } + ] + }, + { + "name": "Lexend Zetta", + "fontFamily": "Lexend Zetta, sans-serif", + "slug": "lexend-zetta", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/lexendzetta/v28/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCy9bH0z5jbs8qbts.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Lexend Zetta" + }, + { + "src": "http://fonts.gstatic.com/s/lexendzetta/v28/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCy1bG0z5jbs8qbts.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Lexend Zetta" + }, + { + "src": "http://fonts.gstatic.com/s/lexendzetta/v28/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCy4jG0z5jbs8qbts.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Lexend Zetta" + }, + { + "src": "http://fonts.gstatic.com/s/lexendzetta/v28/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCy9bG0z5jbs8qbts.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Lexend Zetta" + }, + { + "src": "http://fonts.gstatic.com/s/lexendzetta/v28/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCy-TG0z5jbs8qbts.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Lexend Zetta" + }, + { + "src": "http://fonts.gstatic.com/s/lexendzetta/v28/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCywjB0z5jbs8qbts.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Lexend Zetta" + }, + { + "src": "http://fonts.gstatic.com/s/lexendzetta/v28/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCyzHB0z5jbs8qbts.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Lexend Zetta" + }, + { + "src": "http://fonts.gstatic.com/s/lexendzetta/v28/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCy1bB0z5jbs8qbts.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Lexend Zetta" + }, + { + "src": "http://fonts.gstatic.com/s/lexendzetta/v28/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCy3_B0z5jbs8qbts.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Lexend Zetta" + } + ] + }, + { + "name": "Libre Barcode 128", + "fontFamily": "Libre Barcode 128, system-ui", + "slug": "libre-barcode-128", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/librebarcode128/v26/cIfnMbdUsUoiW3O_hVviCwVjuLtXeJ_A_gMk0izH.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Libre Barcode 128" + } + ] + }, + { + "name": "Libre Barcode 128 Text", + "fontFamily": "Libre Barcode 128 Text, system-ui", + "slug": "libre-barcode-128-text", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/librebarcode128text/v26/fdNv9tubt3ZEnz1Gu3I4-zppwZ9CWZ16Z0w5cV3Y6M90w4k.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Libre Barcode 128 Text" + } + ] + }, + { + "name": "Libre Barcode 39", + "fontFamily": "Libre Barcode 39, system-ui", + "slug": "libre-barcode-39", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/librebarcode39/v19/-nFnOHM08vwC6h8Li1eQnP_AHzI2K_d709jy92k.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Libre Barcode 39" + } + ] + }, + { + "name": "Libre Barcode 39 Extended", + "fontFamily": "Libre Barcode 39 Extended, system-ui", + "slug": "libre-barcode-39-extended", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/librebarcode39extended/v25/8At7Gt6_O5yNS0-K4Nf5U922qSzhJ3dUdfJpwNUgfNRCOZ1GOBw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Libre Barcode 39 Extended" + } + ] + }, + { + "name": "Libre Barcode 39 Extended Text", + "fontFamily": "Libre Barcode 39 Extended Text, system-ui", + "slug": "libre-barcode-39-extended-text", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/librebarcode39extendedtext/v25/eLG1P_rwIgOiDA7yrs9LoKaYRVLQ1YldrrOnnL7xPO4jNP68fLIiPopNNA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Libre Barcode 39 Extended Text" + } + ] + }, + { + "name": "Libre Barcode 39 Text", + "fontFamily": "Libre Barcode 39 Text, system-ui", + "slug": "libre-barcode-39-text", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/librebarcode39text/v26/sJoa3KhViNKANw_E3LwoDXvs5Un0HQ1vT-031RRL-9rYaw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Libre Barcode 39 Text" + } + ] + }, + { + "name": "Libre Barcode EAN13 Text", + "fontFamily": "Libre Barcode EAN13 Text, system-ui", + "slug": "libre-barcode-ean13-text", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/librebarcodeean13text/v19/wlpigxXFDU1_oCu9nfZytgIqSG0XRcJm_OQiB96PAGEki52WfA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Libre Barcode EAN13 Text" + } + ] + }, + { + "name": "Libre Baskerville", + "fontFamily": "Libre Baskerville, serif", + "slug": "libre-baskerville", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/librebaskerville/v14/kmKnZrc3Hgbbcjq75U4uslyuy4kn0pNeYRI4CN2V.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Libre Baskerville" + }, + { + "src": "http://fonts.gstatic.com/s/librebaskerville/v14/kmKhZrc3Hgbbcjq75U4uslyuy4kn0qNcaxYaDc2V2ro.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Libre Baskerville" + }, + { + "src": "http://fonts.gstatic.com/s/librebaskerville/v14/kmKiZrc3Hgbbcjq75U4uslyuy4kn0qviTjYwI8Gcw6Oi.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Libre Baskerville" + } + ] + }, + { + "name": "Libre Bodoni", + "fontFamily": "Libre Bodoni, serif", + "slug": "libre-bodoni", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/librebodoni/v5/_Xm--H45qDWDYULr5OfyZudXzSBgY2oMBGte6I1fwWzZcOb3U3s.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Libre Bodoni" + }, + { + "src": "http://fonts.gstatic.com/s/librebodoni/v5/_Xm--H45qDWDYULr5OfyZudXzSBgY2oMBGte6L9fwWzZcOb3U3s.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Libre Bodoni" + }, + { + "src": "http://fonts.gstatic.com/s/librebodoni/v5/_Xm--H45qDWDYULr5OfyZudXzSBgY2oMBGte6FNYwWzZcOb3U3s.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Libre Bodoni" + }, + { + "src": "http://fonts.gstatic.com/s/librebodoni/v5/_Xm--H45qDWDYULr5OfyZudXzSBgY2oMBGte6GpYwWzZcOb3U3s.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Libre Bodoni" + }, + { + "src": "http://fonts.gstatic.com/s/librebodoni/v5/_Xm4-H45qDWDYULr5OfyZud9xBKfuwNnnsVZ_UUcKS_TdMTyQ3syLg.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Libre Bodoni" + }, + { + "src": "http://fonts.gstatic.com/s/librebodoni/v5/_Xm4-H45qDWDYULr5OfyZud9xBKfuwNnnsVZ_UUcGy_TdMTyQ3syLg.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Libre Bodoni" + }, + { + "src": "http://fonts.gstatic.com/s/librebodoni/v5/_Xm4-H45qDWDYULr5OfyZud9xBKfuwNnnsVZ_UUc9yjTdMTyQ3syLg.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Libre Bodoni" + }, + { + "src": "http://fonts.gstatic.com/s/librebodoni/v5/_Xm4-H45qDWDYULr5OfyZud9xBKfuwNnnsVZ_UUczijTdMTyQ3syLg.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Libre Bodoni" + } + ] + }, + { + "name": "Libre Caslon Display", + "fontFamily": "Libre Caslon Display, serif", + "slug": "libre-caslon-display", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/librecaslondisplay/v14/TuGOUUFxWphYQ6YI6q9Xp61FQzxDRKmzr2lRdRhtCC4d.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Libre Caslon Display" + } + ] + }, + { + "name": "Libre Caslon Text", + "fontFamily": "Libre Caslon Text, serif", + "slug": "libre-caslon-text", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/librecaslontext/v5/DdT878IGsGw1aF1JU10PUbTvNNaDMcq_3eNrHgO1.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Libre Caslon Text" + }, + { + "src": "http://fonts.gstatic.com/s/librecaslontext/v5/DdT678IGsGw1aF1JU10PUbTvNNaDMfq91-dJGxO1q9o.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Libre Caslon Text" + }, + { + "src": "http://fonts.gstatic.com/s/librecaslontext/v5/DdT578IGsGw1aF1JU10PUbTvNNaDMfID8sdjNR-8ssPt.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Libre Caslon Text" + } + ] + }, + { + "name": "Libre Franklin", + "fontFamily": "Libre Franklin, sans-serif", + "slug": "libre-franklin", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhLsSUB9rIb-JH1g.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Libre Franklin" + }, + { + "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhrsWUB9rIb-JH1g.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Libre Franklin" + }, + { + "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhcMWUB9rIb-JH1g.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Libre Franklin" + }, + { + "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhLsWUB9rIb-JH1g.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Libre Franklin" + }, + { + "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhHMWUB9rIb-JH1g.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Libre Franklin" + }, + { + "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduh8MKUB9rIb-JH1g.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Libre Franklin" + }, + { + "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhycKUB9rIb-JH1g.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Libre Franklin" + }, + { + "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhrsKUB9rIb-JH1g.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Libre Franklin" + }, + { + "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhh8KUB9rIb-JH1g.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Libre Franklin" + }, + { + "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05oZ8RdDMTedX1sGE.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Libre Franklin" + }, + { + "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05ob8RNDMTedX1sGE.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Libre Franklin" + }, + { + "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05oYiRNDMTedX1sGE.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Libre Franklin" + }, + { + "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05oZ8RNDMTedX1sGE.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Libre Franklin" + }, + { + "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05oZORNDMTedX1sGE.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Libre Franklin" + }, + { + "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05oaiQ9DMTedX1sGE.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Libre Franklin" + }, + { + "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05oabQ9DMTedX1sGE.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Libre Franklin" + }, + { + "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05ob8Q9DMTedX1sGE.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Libre Franklin" + }, + { + "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05obVQ9DMTedX1sGE.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Libre Franklin" + } + ] + }, + { + "name": "Licorice", + "fontFamily": "Licorice, cursive", + "slug": "licorice", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/licorice/v3/t5tjIR8TMomTCAyjNk23hqLgzCHu.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Licorice" + } + ] + }, + { + "name": "Life Savers", + "fontFamily": "Life Savers, system-ui", + "slug": "life-savers", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/lifesavers/v18/ZXuie1UftKKabUQMgxAal_lrFgpbuNvB.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Life Savers" + }, + { + "src": "http://fonts.gstatic.com/s/lifesavers/v18/ZXu_e1UftKKabUQMgxAal8HXOS5Tk8fIpPRW.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Life Savers" + }, + { + "src": "http://fonts.gstatic.com/s/lifesavers/v18/ZXu_e1UftKKabUQMgxAal8HLOi5Tk8fIpPRW.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Life Savers" + } + ] + }, + { + "name": "Lilita One", + "fontFamily": "Lilita One, system-ui", + "slug": "lilita-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/lilitaone/v13/i7dPIFZ9Zz-WBtRtedDbUEZ2RFq7AwU.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Lilita One" + } + ] + }, + { + "name": "Lily Script One", + "fontFamily": "Lily Script One, system-ui", + "slug": "lily-script-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/lilyscriptone/v15/LhW9MV7ZMfIPdMxeBjBvFN8SXLS4gsSjQNsRMg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Lily Script One" + } + ] + }, + { + "name": "Limelight", + "fontFamily": "Limelight, system-ui", + "slug": "limelight", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/limelight/v17/XLYkIZL7aopJVbZJHDuYPeNGrnY2TA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Limelight" + } + ] + }, + { + "name": "Linden Hill", + "fontFamily": "Linden Hill, serif", + "slug": "linden-hill", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/lindenhill/v22/-F61fjxoKSg9Yc3hZgO8ygFI7CwC009k.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Linden Hill" + }, + { + "src": "http://fonts.gstatic.com/s/lindenhill/v22/-F63fjxoKSg9Yc3hZgO8yjFK5igg1l9kn-s.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Linden Hill" + } + ] + }, + { + "name": "Literata", + "fontFamily": "Literata, serif", + "slug": "literata", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/literata/v34/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbJG_F_bcTWCWp8g.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Literata" + }, + { + "src": "http://fonts.gstatic.com/s/literata/v34/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbE-_F_bcTWCWp8g.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Literata" + }, + { + "src": "http://fonts.gstatic.com/s/literata/v34/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbBG_F_bcTWCWp8g.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Literata" + }, + { + "src": "http://fonts.gstatic.com/s/literata/v34/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbCO_F_bcTWCWp8g.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Literata" + }, + { + "src": "http://fonts.gstatic.com/s/literata/v34/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbM-4F_bcTWCWp8g.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Literata" + }, + { + "src": "http://fonts.gstatic.com/s/literata/v34/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbPa4F_bcTWCWp8g.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Literata" + }, + { + "src": "http://fonts.gstatic.com/s/literata/v34/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbJG4F_bcTWCWp8g.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Literata" + }, + { + "src": "http://fonts.gstatic.com/s/literata/v34/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbLi4F_bcTWCWp8g.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Literata" + }, + { + "src": "http://fonts.gstatic.com/s/literata/v34/or3NQ6P12-iJxAIgLYT1PLs1Zd0nfUwAbeGVKoRYzNiCp1OUedn8f7XWSUKTt8iVow.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Literata" + }, + { + "src": "http://fonts.gstatic.com/s/literata/v34/or3NQ6P12-iJxAIgLYT1PLs1Zd0nfUwAbeGVKoRYzNiCp1OUedn8obXWSUKTt8iVow.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Literata" + }, + { + "src": "http://fonts.gstatic.com/s/literata/v34/or3NQ6P12-iJxAIgLYT1PLs1Zd0nfUwAbeGVKoRYzNiCp1OUedn8_7XWSUKTt8iVow.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Literata" + }, + { + "src": "http://fonts.gstatic.com/s/literata/v34/or3NQ6P12-iJxAIgLYT1PLs1Zd0nfUwAbeGVKoRYzNiCp1OUedn8zbXWSUKTt8iVow.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Literata" + }, + { + "src": "http://fonts.gstatic.com/s/literata/v34/or3NQ6P12-iJxAIgLYT1PLs1Zd0nfUwAbeGVKoRYzNiCp1OUedn8IbLWSUKTt8iVow.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Literata" + }, + { + "src": "http://fonts.gstatic.com/s/literata/v34/or3NQ6P12-iJxAIgLYT1PLs1Zd0nfUwAbeGVKoRYzNiCp1OUedn8GLLWSUKTt8iVow.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Literata" + }, + { + "src": "http://fonts.gstatic.com/s/literata/v34/or3NQ6P12-iJxAIgLYT1PLs1Zd0nfUwAbeGVKoRYzNiCp1OUedn8f7LWSUKTt8iVow.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Literata" + }, + { + "src": "http://fonts.gstatic.com/s/literata/v34/or3NQ6P12-iJxAIgLYT1PLs1Zd0nfUwAbeGVKoRYzNiCp1OUedn8VrLWSUKTt8iVow.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Literata" + } + ] + }, + { + "name": "Liu Jian Mao Cao", + "fontFamily": "Liu Jian Mao Cao, cursive", + "slug": "liu-jian-mao-cao", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/liujianmaocao/v15/~ChIKEExpdSBKaWFuIE1hbyBDYW8gACoECAEYAQ==.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Liu Jian Mao Cao" + } + ] + }, + { + "name": "Livvic", + "fontFamily": "Livvic, sans-serif", + "slug": "livvic", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/livvic/v14/rnCr-x1S2hzjrlffC-M-mHnOSOuk.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Livvic" + }, + { + "src": "http://fonts.gstatic.com/s/livvic/v14/rnCt-x1S2hzjrlfXbdtakn3sTfukQHs.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Livvic" + }, + { + "src": "http://fonts.gstatic.com/s/livvic/v14/rnCq-x1S2hzjrlffp8IeslfCQfK9WQ.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Livvic" + }, + { + "src": "http://fonts.gstatic.com/s/livvic/v14/rnCs-x1S2hzjrlfXbdv2s13GY_etWWIJ.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Livvic" + }, + { + "src": "http://fonts.gstatic.com/s/livvic/v14/rnCq-x1S2hzjrlffw8EeslfCQfK9WQ.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Livvic" + }, + { + "src": "http://fonts.gstatic.com/s/livvic/v14/rnCs-x1S2hzjrlfXbduSsF3GY_etWWIJ.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Livvic" + }, + { + "src": "http://fonts.gstatic.com/s/livvic/v14/rnCp-x1S2hzjrlfnb-k6unzeSA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Livvic" + }, + { + "src": "http://fonts.gstatic.com/s/livvic/v14/rnCr-x1S2hzjrlfXbeM-mHnOSOuk.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Livvic" + }, + { + "src": "http://fonts.gstatic.com/s/livvic/v14/rnCq-x1S2hzjrlffm8AeslfCQfK9WQ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Livvic" + }, + { + "src": "http://fonts.gstatic.com/s/livvic/v14/rnCs-x1S2hzjrlfXbdvKsV3GY_etWWIJ.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Livvic" + }, + { + "src": "http://fonts.gstatic.com/s/livvic/v14/rnCq-x1S2hzjrlfft8ceslfCQfK9WQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Livvic" + }, + { + "src": "http://fonts.gstatic.com/s/livvic/v14/rnCs-x1S2hzjrlfXbdvmtl3GY_etWWIJ.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Livvic" + }, + { + "src": "http://fonts.gstatic.com/s/livvic/v14/rnCq-x1S2hzjrlff08YeslfCQfK9WQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Livvic" + }, + { + "src": "http://fonts.gstatic.com/s/livvic/v14/rnCs-x1S2hzjrlfXbduCt13GY_etWWIJ.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Livvic" + }, + { + "src": "http://fonts.gstatic.com/s/livvic/v14/rnCq-x1S2hzjrlff68QeslfCQfK9WQ.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Livvic" + }, + { + "src": "http://fonts.gstatic.com/s/livvic/v14/rnCs-x1S2hzjrlfXbdu6tV3GY_etWWIJ.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Livvic" + } + ] + }, + { + "name": "Lobster", + "fontFamily": "Lobster, system-ui", + "slug": "lobster", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/lobster/v28/neILzCirqoswsqX9_oWsMqEzSJQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Lobster" + } + ] + }, + { + "name": "Lobster Two", + "fontFamily": "Lobster Two, system-ui", + "slug": "lobster-two", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/lobstertwo/v18/BngMUXZGTXPUvIoyV6yN59fK7KSJ4ACD.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Lobster Two" + }, + { + "src": "http://fonts.gstatic.com/s/lobstertwo/v18/BngOUXZGTXPUvIoyV6yN5-fI5qCr5RCDY_k.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Lobster Two" + }, + { + "src": "http://fonts.gstatic.com/s/lobstertwo/v18/BngRUXZGTXPUvIoyV6yN5-92w4CByxyKeuDp.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Lobster Two" + }, + { + "src": "http://fonts.gstatic.com/s/lobstertwo/v18/BngTUXZGTXPUvIoyV6yN5-fI3hyEwRiof_DpXMY.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Lobster Two" + } + ] + }, + { + "name": "Londrina Outline", + "fontFamily": "Londrina Outline, system-ui", + "slug": "londrina-outline", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/londrinaoutline/v23/C8c44dM8vmb14dfsZxhetg3pDH-SfuoxrSKMDvI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Londrina Outline" + } + ] + }, + { + "name": "Londrina Shadow", + "fontFamily": "Londrina Shadow, system-ui", + "slug": "londrina-shadow", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/londrinashadow/v22/oPWX_kB4kOQoWNJmjxLV5JuoCUlXRlaSxkrMCQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Londrina Shadow" + } + ] + }, + { + "name": "Londrina Sketch", + "fontFamily": "Londrina Sketch, system-ui", + "slug": "londrina-sketch", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/londrinasketch/v21/c4m41npxGMTnomOHtRU68eIJn8qfWWn5Pos6CA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Londrina Sketch" + } + ] + }, + { + "name": "Londrina Solid", + "fontFamily": "Londrina Solid, system-ui", + "slug": "londrina-solid", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/londrinasolid/v15/flUjRq6sw40kQEJxWNgkLuudGfs9KBYesZHhV64.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Londrina Solid" + }, + { + "src": "http://fonts.gstatic.com/s/londrinasolid/v15/flUiRq6sw40kQEJxWNgkLuudGfv1CjY0n53oTrcL.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Londrina Solid" + }, + { + "src": "http://fonts.gstatic.com/s/londrinasolid/v15/flUhRq6sw40kQEJxWNgkLuudGcNZIhI8tIHh.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Londrina Solid" + }, + { + "src": "http://fonts.gstatic.com/s/londrinasolid/v15/flUiRq6sw40kQEJxWNgkLuudGfvdDzY0n53oTrcL.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Londrina Solid" + } + ] + }, + { + "name": "Long Cang", + "fontFamily": "Long Cang, cursive", + "slug": "long-cang", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/longcang/v17/LYjAdGP8kkgoTec8zkRgrXArXN7HWQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Long Cang" + } + ] + }, + { + "name": "Lora", + "fontFamily": "Lora, serif", + "slug": "lora", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/lora/v32/0QI6MX1D_JOuGQbT0gvTJPa787weuyJGmKxemMeZ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Lora" + }, + { + "src": "http://fonts.gstatic.com/s/lora/v32/0QI6MX1D_JOuGQbT0gvTJPa787wsuyJGmKxemMeZ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Lora" + }, + { + "src": "http://fonts.gstatic.com/s/lora/v32/0QI6MX1D_JOuGQbT0gvTJPa787zAvCJGmKxemMeZ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Lora" + }, + { + "src": "http://fonts.gstatic.com/s/lora/v32/0QI6MX1D_JOuGQbT0gvTJPa787z5vCJGmKxemMeZ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Lora" + }, + { + "src": "http://fonts.gstatic.com/s/lora/v32/0QI8MX1D_JOuMw_hLdO6T2wV9KnW-MoFkqh8ndeZzZ0.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Lora" + }, + { + "src": "http://fonts.gstatic.com/s/lora/v32/0QI8MX1D_JOuMw_hLdO6T2wV9KnW-PgFkqh8ndeZzZ0.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Lora" + }, + { + "src": "http://fonts.gstatic.com/s/lora/v32/0QI8MX1D_JOuMw_hLdO6T2wV9KnW-BQCkqh8ndeZzZ0.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Lora" + }, + { + "src": "http://fonts.gstatic.com/s/lora/v32/0QI8MX1D_JOuMw_hLdO6T2wV9KnW-C0Ckqh8ndeZzZ0.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Lora" + } + ] + }, + { + "name": "Love Light", + "fontFamily": "Love Light, cursive", + "slug": "love-light", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/lovelight/v3/t5tlIR0TNJyZWimpNAXDjKbCyTHuspo.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Love Light" + } + ] + }, + { + "name": "Love Ya Like A Sister", + "fontFamily": "Love Ya Like A Sister, system-ui", + "slug": "love-ya-like-a-sister", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/loveyalikeasister/v16/R70EjzUBlOqPeouhFDfR80-0FhOqJubN-Be78nZcsGGycA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Love Ya Like A Sister" + } + ] + }, + { + "name": "Loved by the King", + "fontFamily": "Loved by the King, cursive", + "slug": "loved-by-the-king", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/lovedbytheking/v17/Gw6gwdP76VDVJNXerebZxUMeRXUF2PiNlXFu2R64.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Loved by the King" + } + ] + }, + { + "name": "Lovers Quarrel", + "fontFamily": "Lovers Quarrel, cursive", + "slug": "lovers-quarrel", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/loversquarrel/v21/Yq6N-LSKXTL-5bCy8ksBzpQ_-zAsY7pO6siz.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Lovers Quarrel" + } + ] + }, + { + "name": "Luckiest Guy", + "fontFamily": "Luckiest Guy, system-ui", + "slug": "luckiest-guy", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/luckiestguy/v18/_gP_1RrxsjcxVyin9l9n_j2RStR3qDpraA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Luckiest Guy" + } + ] + }, + { + "name": "Lusitana", + "fontFamily": "Lusitana, serif", + "slug": "lusitana", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/lusitana/v13/CSR84z9ShvucWzsMKxhaRuMiSct_.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Lusitana" + }, + { + "src": "http://fonts.gstatic.com/s/lusitana/v13/CSR74z9ShvucWzsMKyDmaccqYtd2vfwk.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Lusitana" + } + ] + }, + { + "name": "Lustria", + "fontFamily": "Lustria, serif", + "slug": "lustria", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/lustria/v13/9oRONYodvDEyjuhOrCg5MtPyAcg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Lustria" + } + ] + }, + { + "name": "Luxurious Roman", + "fontFamily": "Luxurious Roman, system-ui", + "slug": "luxurious-roman", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/luxuriousroman/v4/buEupou_ZcP1w0yTKxJJokVSmbpqYgckeo9RMw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Luxurious Roman" + } + ] + }, + { + "name": "Luxurious Script", + "fontFamily": "Luxurious Script, cursive", + "slug": "luxurious-script", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/luxuriousscript/v5/ahcCv9e7yydulT32KZ0rBIoD7DzMg0rOby1JtYk.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Luxurious Script" + } + ] + }, + { + "name": "M PLUS 1", + "fontFamily": "M PLUS 1, sans-serif", + "slug": "m-plus-1", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mplus1/v6/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW5VSe78nZcsGGycA.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "M PLUS 1" + }, + { + "src": "http://fonts.gstatic.com/s/mplus1/v6/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW51Sa78nZcsGGycA.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "M PLUS 1" + }, + { + "src": "http://fonts.gstatic.com/s/mplus1/v6/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW5Cya78nZcsGGycA.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "M PLUS 1" + }, + { + "src": "http://fonts.gstatic.com/s/mplus1/v6/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW5VSa78nZcsGGycA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "M PLUS 1" + }, + { + "src": "http://fonts.gstatic.com/s/mplus1/v6/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW5Zya78nZcsGGycA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "M PLUS 1" + }, + { + "src": "http://fonts.gstatic.com/s/mplus1/v6/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW5iyG78nZcsGGycA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "M PLUS 1" + }, + { + "src": "http://fonts.gstatic.com/s/mplus1/v6/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW5siG78nZcsGGycA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "M PLUS 1" + }, + { + "src": "http://fonts.gstatic.com/s/mplus1/v6/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW51SG78nZcsGGycA.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "M PLUS 1" + }, + { + "src": "http://fonts.gstatic.com/s/mplus1/v6/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW5_CG78nZcsGGycA.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "M PLUS 1" + } + ] + }, + { + "name": "M PLUS 1 Code", + "fontFamily": "M PLUS 1 Code, sans-serif", + "slug": "m-plus-1-code", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mplus1code/v7/ypvMbXOOx2xFpzmYJS3N2_J2hBN6RZ5oIp8m_7iN0XHpapwmdZhY.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "M PLUS 1 Code" + }, + { + "src": "http://fonts.gstatic.com/s/mplus1code/v7/ypvMbXOOx2xFpzmYJS3N2_J2hBN6RZ5oIp8m_7gN0HHpapwmdZhY.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "M PLUS 1 Code" + }, + { + "src": "http://fonts.gstatic.com/s/mplus1code/v7/ypvMbXOOx2xFpzmYJS3N2_J2hBN6RZ5oIp8m_7jT0HHpapwmdZhY.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "M PLUS 1 Code" + }, + { + "src": "http://fonts.gstatic.com/s/mplus1code/v7/ypvMbXOOx2xFpzmYJS3N2_J2hBN6RZ5oIp8m_7iN0HHpapwmdZhY.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "M PLUS 1 Code" + }, + { + "src": "http://fonts.gstatic.com/s/mplus1code/v7/ypvMbXOOx2xFpzmYJS3N2_J2hBN6RZ5oIp8m_7i_0HHpapwmdZhY.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "M PLUS 1 Code" + }, + { + "src": "http://fonts.gstatic.com/s/mplus1code/v7/ypvMbXOOx2xFpzmYJS3N2_J2hBN6RZ5oIp8m_7hT13HpapwmdZhY.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "M PLUS 1 Code" + }, + { + "src": "http://fonts.gstatic.com/s/mplus1code/v7/ypvMbXOOx2xFpzmYJS3N2_J2hBN6RZ5oIp8m_7hq13HpapwmdZhY.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "M PLUS 1 Code" + } + ] + }, + { + "name": "M PLUS 1p", + "fontFamily": "M PLUS 1p, sans-serif", + "slug": "m-plus-1p", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mplus1p/v28/e3tleuShHdiFyPFzBRrQnDQAUW3aq-5N.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "M PLUS 1p" + }, + { + "src": "http://fonts.gstatic.com/s/mplus1p/v28/e3tmeuShHdiFyPFzBRrQVBYge0PWovdU4w.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "M PLUS 1p" + }, + { + "src": "http://fonts.gstatic.com/s/mplus1p/v28/e3tjeuShHdiFyPFzBRro-D4Ec2jKqw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "M PLUS 1p" + }, + { + "src": "http://fonts.gstatic.com/s/mplus1p/v28/e3tmeuShHdiFyPFzBRrQDBcge0PWovdU4w.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "M PLUS 1p" + }, + { + "src": "http://fonts.gstatic.com/s/mplus1p/v28/e3tmeuShHdiFyPFzBRrQRBEge0PWovdU4w.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "M PLUS 1p" + }, + { + "src": "http://fonts.gstatic.com/s/mplus1p/v28/e3tmeuShHdiFyPFzBRrQWBIge0PWovdU4w.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "M PLUS 1p" + }, + { + "src": "http://fonts.gstatic.com/s/mplus1p/v28/e3tmeuShHdiFyPFzBRrQfBMge0PWovdU4w.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "M PLUS 1p" + } + ] + }, + { + "name": "M PLUS 2", + "fontFamily": "M PLUS 2, sans-serif", + "slug": "m-plus-2", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mplus2/v6/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkwOa-VxlqHrzNgAw.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "M PLUS 2" + }, + { + "src": "http://fonts.gstatic.com/s/mplus2/v6/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkwua6VxlqHrzNgAw.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "M PLUS 2" + }, + { + "src": "http://fonts.gstatic.com/s/mplus2/v6/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkwZ66VxlqHrzNgAw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "M PLUS 2" + }, + { + "src": "http://fonts.gstatic.com/s/mplus2/v6/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkwOa6VxlqHrzNgAw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "M PLUS 2" + }, + { + "src": "http://fonts.gstatic.com/s/mplus2/v6/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkwC66VxlqHrzNgAw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "M PLUS 2" + }, + { + "src": "http://fonts.gstatic.com/s/mplus2/v6/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkw56mVxlqHrzNgAw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "M PLUS 2" + }, + { + "src": "http://fonts.gstatic.com/s/mplus2/v6/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkw3qmVxlqHrzNgAw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "M PLUS 2" + }, + { + "src": "http://fonts.gstatic.com/s/mplus2/v6/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkwuamVxlqHrzNgAw.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "M PLUS 2" + }, + { + "src": "http://fonts.gstatic.com/s/mplus2/v6/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkwkKmVxlqHrzNgAw.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "M PLUS 2" + } + ] + }, + { + "name": "M PLUS Code Latin", + "fontFamily": "M PLUS Code Latin, sans-serif", + "slug": "m-plus-code-latin", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mpluscodelatin/v11/hv-ylyV-aXg7x7tULiNXXBA0Np4WMS8fDIymHY8fy8wn4_ifLAtrObKDO0Xf1EbB6i5MqF9TRwg.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "M PLUS Code Latin" + }, + { + "src": "http://fonts.gstatic.com/s/mpluscodelatin/v11/hv-ylyV-aXg7x7tULiNXXBA0Np4WMS8fDIymHY8fy8wn4_ifLAtrObKDO0Xf1MbA6i5MqF9TRwg.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "M PLUS Code Latin" + }, + { + "src": "http://fonts.gstatic.com/s/mpluscodelatin/v11/hv-ylyV-aXg7x7tULiNXXBA0Np4WMS8fDIymHY8fy8wn4_ifLAtrObKDO0Xf1BjA6i5MqF9TRwg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "M PLUS Code Latin" + }, + { + "src": "http://fonts.gstatic.com/s/mpluscodelatin/v11/hv-ylyV-aXg7x7tULiNXXBA0Np4WMS8fDIymHY8fy8wn4_ifLAtrObKDO0Xf1EbA6i5MqF9TRwg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "M PLUS Code Latin" + }, + { + "src": "http://fonts.gstatic.com/s/mpluscodelatin/v11/hv-ylyV-aXg7x7tULiNXXBA0Np4WMS8fDIymHY8fy8wn4_ifLAtrObKDO0Xf1HTA6i5MqF9TRwg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "M PLUS Code Latin" + }, + { + "src": "http://fonts.gstatic.com/s/mpluscodelatin/v11/hv-ylyV-aXg7x7tULiNXXBA0Np4WMS8fDIymHY8fy8wn4_ifLAtrObKDO0Xf1JjH6i5MqF9TRwg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "M PLUS Code Latin" + }, + { + "src": "http://fonts.gstatic.com/s/mpluscodelatin/v11/hv-ylyV-aXg7x7tULiNXXBA0Np4WMS8fDIymHY8fy8wn4_ifLAtrObKDO0Xf1KHH6i5MqF9TRwg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "M PLUS Code Latin" + } + ] + }, + { + "name": "M PLUS Rounded 1c", + "fontFamily": "M PLUS Rounded 1c, sans-serif", + "slug": "m-plus-rounded-1c", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mplusrounded1c/v15/VdGCAYIAV6gnpUpoWwNkYvrugw9RuM3ixLsg6-av1x0.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "M PLUS Rounded 1c" + }, + { + "src": "http://fonts.gstatic.com/s/mplusrounded1c/v15/VdGBAYIAV6gnpUpoWwNkYvrugw9RuM0q5psKxeqmzgRK.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "M PLUS Rounded 1c" + }, + { + "src": "http://fonts.gstatic.com/s/mplusrounded1c/v15/VdGEAYIAV6gnpUpoWwNkYvrugw9RuPWGzr8C7vav.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "M PLUS Rounded 1c" + }, + { + "src": "http://fonts.gstatic.com/s/mplusrounded1c/v15/VdGBAYIAV6gnpUpoWwNkYvrugw9RuM1y55sKxeqmzgRK.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "M PLUS Rounded 1c" + }, + { + "src": "http://fonts.gstatic.com/s/mplusrounded1c/v15/VdGBAYIAV6gnpUpoWwNkYvrugw9RuM064ZsKxeqmzgRK.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "M PLUS Rounded 1c" + }, + { + "src": "http://fonts.gstatic.com/s/mplusrounded1c/v15/VdGBAYIAV6gnpUpoWwNkYvrugw9RuM0m4psKxeqmzgRK.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "M PLUS Rounded 1c" + }, + { + "src": "http://fonts.gstatic.com/s/mplusrounded1c/v15/VdGBAYIAV6gnpUpoWwNkYvrugw9RuM0C45sKxeqmzgRK.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "M PLUS Rounded 1c" + } + ] + }, + { + "name": "Ma Shan Zheng", + "fontFamily": "Ma Shan Zheng, cursive", + "slug": "ma-shan-zheng", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mashanzheng/v10/NaPecZTRCLxvwo41b4gvzkXaRMTsDIRSfr0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Ma Shan Zheng" + } + ] + }, + { + "name": "Macondo", + "fontFamily": "Macondo, system-ui", + "slug": "macondo", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/macondo/v21/RrQQboN9-iB1IXmOS2XO0LBBd4Y.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Macondo" + } + ] + }, + { + "name": "Macondo Swash Caps", + "fontFamily": "Macondo Swash Caps, system-ui", + "slug": "macondo-swash-caps", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/macondoswashcaps/v20/6NUL8EaAJgGKZA7lpt941Z9s6ZYgDq6Oekoa_mm5bA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Macondo Swash Caps" + } + ] + }, + { + "name": "Mada", + "fontFamily": "Mada, sans-serif", + "slug": "mada", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mada/v19/7Aulp_0qnzeSVz7u3PJLcUMYOFlOkHkw2-m9x2iC.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Mada" + }, + { + "src": "http://fonts.gstatic.com/s/mada/v19/7Aulp_0qnzeSVz7u3PJLcUMYOFmQkHkw2-m9x2iC.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Mada" + }, + { + "src": "http://fonts.gstatic.com/s/mada/v19/7Aulp_0qnzeSVz7u3PJLcUMYOFnOkHkw2-m9x2iC.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Mada" + }, + { + "src": "http://fonts.gstatic.com/s/mada/v19/7Aulp_0qnzeSVz7u3PJLcUMYOFn8kHkw2-m9x2iC.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Mada" + }, + { + "src": "http://fonts.gstatic.com/s/mada/v19/7Aulp_0qnzeSVz7u3PJLcUMYOFkQl3kw2-m9x2iC.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Mada" + }, + { + "src": "http://fonts.gstatic.com/s/mada/v19/7Aulp_0qnzeSVz7u3PJLcUMYOFkpl3kw2-m9x2iC.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Mada" + }, + { + "src": "http://fonts.gstatic.com/s/mada/v19/7Aulp_0qnzeSVz7u3PJLcUMYOFlOl3kw2-m9x2iC.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Mada" + }, + { + "src": "http://fonts.gstatic.com/s/mada/v19/7Aulp_0qnzeSVz7u3PJLcUMYOFlnl3kw2-m9x2iC.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Mada" + } + ] + }, + { + "name": "Magra", + "fontFamily": "Magra, sans-serif", + "slug": "magra", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/magra/v14/uK_94ruaZus72k5xIDMfO-ed.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Magra" + }, + { + "src": "http://fonts.gstatic.com/s/magra/v14/uK_w4ruaZus72nbNDxcXEPuUX1ow.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Magra" + } + ] + }, + { + "name": "Maiden Orange", + "fontFamily": "Maiden Orange, system-ui", + "slug": "maiden-orange", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/maidenorange/v25/kJE1BuIX7AUmhi2V4m08kb1XjOZdCZS8FY8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Maiden Orange" + } + ] + }, + { + "name": "Maitree", + "fontFamily": "Maitree, serif", + "slug": "maitree", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/maitree/v10/MjQDmil5tffhpBrklhGNWJGovLdh6OE.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Maitree" + }, + { + "src": "http://fonts.gstatic.com/s/maitree/v10/MjQDmil5tffhpBrklnWOWJGovLdh6OE.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Maitree" + }, + { + "src": "http://fonts.gstatic.com/s/maitree/v10/MjQGmil5tffhpBrkrtmmfJmDoL4.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Maitree" + }, + { + "src": "http://fonts.gstatic.com/s/maitree/v10/MjQDmil5tffhpBrkli2PWJGovLdh6OE.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Maitree" + }, + { + "src": "http://fonts.gstatic.com/s/maitree/v10/MjQDmil5tffhpBrklgGIWJGovLdh6OE.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Maitree" + }, + { + "src": "http://fonts.gstatic.com/s/maitree/v10/MjQDmil5tffhpBrklmWJWJGovLdh6OE.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Maitree" + } + ] + }, + { + "name": "Major Mono Display", + "fontFamily": "Major Mono Display, monospace", + "slug": "major-mono-display", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/majormonodisplay/v13/RWmVoLyb5fEqtsfBX9PDZIGr2tFubRhLCn2QIndPww.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Major Mono Display" + } + ] + }, + { + "name": "Mako", + "fontFamily": "Mako, sans-serif", + "slug": "mako", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mako/v18/H4coBX6Mmc_Z0ST09g478Lo.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Mako" + } + ] + }, + { + "name": "Mali", + "fontFamily": "Mali, cursive", + "slug": "mali", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mali/v10/N0bV2SRONuN4QOLlKlRaJdbWgdY.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Mali" + }, + { + "src": "http://fonts.gstatic.com/s/mali/v10/N0bX2SRONuN4SCj8wlVQIfTTkdbJYA.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Mali" + }, + { + "src": "http://fonts.gstatic.com/s/mali/v10/N0bV2SRONuN4QIbmKlRaJdbWgdY.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Mali" + }, + { + "src": "http://fonts.gstatic.com/s/mali/v10/N0bX2SRONuN4SCj8plZQIfTTkdbJYA.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Mali" + }, + { + "src": "http://fonts.gstatic.com/s/mali/v10/N0ba2SRONuN4eCrODlxxOd8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Mali" + }, + { + "src": "http://fonts.gstatic.com/s/mali/v10/N0bU2SRONuN4SCjECn50Kd_PmA.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Mali" + }, + { + "src": "http://fonts.gstatic.com/s/mali/v10/N0bV2SRONuN4QN7nKlRaJdbWgdY.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Mali" + }, + { + "src": "http://fonts.gstatic.com/s/mali/v10/N0bX2SRONuN4SCj8_ldQIfTTkdbJYA.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Mali" + }, + { + "src": "http://fonts.gstatic.com/s/mali/v10/N0bV2SRONuN4QPLgKlRaJdbWgdY.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Mali" + }, + { + "src": "http://fonts.gstatic.com/s/mali/v10/N0bX2SRONuN4SCj80lBQIfTTkdbJYA.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Mali" + }, + { + "src": "http://fonts.gstatic.com/s/mali/v10/N0bV2SRONuN4QJbhKlRaJdbWgdY.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Mali" + }, + { + "src": "http://fonts.gstatic.com/s/mali/v10/N0bX2SRONuN4SCj8tlFQIfTTkdbJYA.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Mali" + } + ] + }, + { + "name": "Mallanna", + "fontFamily": "Mallanna, sans-serif", + "slug": "mallanna", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mallanna/v13/hv-Vlzx-KEQb84YaDGwzEzRwVvJ-.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Mallanna" + } + ] + }, + { + "name": "Mandali", + "fontFamily": "Mandali, sans-serif", + "slug": "mandali", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mandali/v14/LhWlMVbYOfASNfNUVFk1ZPdcKtA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Mandali" + } + ] + }, + { + "name": "Manjari", + "fontFamily": "Manjari, sans-serif", + "slug": "manjari", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/manjari/v9/k3kSo8UPMOBO2w1UdbroK2vFIaOV8A.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Manjari" + }, + { + "src": "http://fonts.gstatic.com/s/manjari/v9/k3kQo8UPMOBO2w1UTd7iL0nAMaM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Manjari" + }, + { + "src": "http://fonts.gstatic.com/s/manjari/v9/k3kVo8UPMOBO2w1UdWLNC0HrLaqM6Q4.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Manjari" + } + ] + }, + { + "name": "Manrope", + "fontFamily": "Manrope, sans-serif", + "slug": "manrope", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/manrope/v14/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk59FO_F87jxeN7B.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Manrope" + }, + { + "src": "http://fonts.gstatic.com/s/manrope/v14/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk6jFO_F87jxeN7B.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Manrope" + }, + { + "src": "http://fonts.gstatic.com/s/manrope/v14/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk79FO_F87jxeN7B.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Manrope" + }, + { + "src": "http://fonts.gstatic.com/s/manrope/v14/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk7PFO_F87jxeN7B.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Manrope" + }, + { + "src": "http://fonts.gstatic.com/s/manrope/v14/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk4jE-_F87jxeN7B.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Manrope" + }, + { + "src": "http://fonts.gstatic.com/s/manrope/v14/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk4aE-_F87jxeN7B.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Manrope" + }, + { + "src": "http://fonts.gstatic.com/s/manrope/v14/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk59E-_F87jxeN7B.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Manrope" + } + ] + }, + { + "name": "Mansalva", + "fontFamily": "Mansalva, cursive", + "slug": "mansalva", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mansalva/v12/aWB4m0aacbtDfvq5NJllI47vdyBg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Mansalva" + } + ] + }, + { + "name": "Manuale", + "fontFamily": "Manuale, serif", + "slug": "manuale", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/manuale/v28/f0Xp0eas_8Z-TFZdHv3mMxFaSqASeeG6e7wD1TB_JHHY.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Manuale" + }, + { + "src": "http://fonts.gstatic.com/s/manuale/v28/f0Xp0eas_8Z-TFZdHv3mMxFaSqASeeHke7wD1TB_JHHY.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Manuale" + }, + { + "src": "http://fonts.gstatic.com/s/manuale/v28/f0Xp0eas_8Z-TFZdHv3mMxFaSqASeeHWe7wD1TB_JHHY.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Manuale" + }, + { + "src": "http://fonts.gstatic.com/s/manuale/v28/f0Xp0eas_8Z-TFZdHv3mMxFaSqASeeE6fLwD1TB_JHHY.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Manuale" + }, + { + "src": "http://fonts.gstatic.com/s/manuale/v28/f0Xp0eas_8Z-TFZdHv3mMxFaSqASeeEDfLwD1TB_JHHY.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Manuale" + }, + { + "src": "http://fonts.gstatic.com/s/manuale/v28/f0Xp0eas_8Z-TFZdHv3mMxFaSqASeeFkfLwD1TB_JHHY.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Manuale" + }, + { + "src": "http://fonts.gstatic.com/s/manuale/v28/f0Xn0eas_8Z-TFZdNPTUzMkzITq8fvQsOApA3zRdIWHYr8M.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Manuale" + }, + { + "src": "http://fonts.gstatic.com/s/manuale/v28/f0Xn0eas_8Z-TFZdNPTUzMkzITq8fvQsOFRA3zRdIWHYr8M.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Manuale" + }, + { + "src": "http://fonts.gstatic.com/s/manuale/v28/f0Xn0eas_8Z-TFZdNPTUzMkzITq8fvQsOGZA3zRdIWHYr8M.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Manuale" + }, + { + "src": "http://fonts.gstatic.com/s/manuale/v28/f0Xn0eas_8Z-TFZdNPTUzMkzITq8fvQsOIpH3zRdIWHYr8M.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Manuale" + }, + { + "src": "http://fonts.gstatic.com/s/manuale/v28/f0Xn0eas_8Z-TFZdNPTUzMkzITq8fvQsOLNH3zRdIWHYr8M.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Manuale" + }, + { + "src": "http://fonts.gstatic.com/s/manuale/v28/f0Xn0eas_8Z-TFZdNPTUzMkzITq8fvQsONRH3zRdIWHYr8M.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Manuale" + } + ] + }, + { + "name": "Marcellus", + "fontFamily": "Marcellus, serif", + "slug": "marcellus", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/marcellus/v13/wEO_EBrOk8hQLDvIAF8FUfAL3EsHiA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Marcellus" + } + ] + }, + { + "name": "Marcellus SC", + "fontFamily": "Marcellus SC, serif", + "slug": "marcellus-sc", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/marcellussc/v13/ke8iOgUHP1dg-Rmi6RWjbLEPgdydGKikhA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Marcellus SC" + } + ] + }, + { + "name": "Marck Script", + "fontFamily": "Marck Script, cursive", + "slug": "marck-script", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/marckscript/v17/nwpTtK2oNgBA3Or78gapdwuCzyI-aMPF7Q.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Marck Script" + } + ] + }, + { + "name": "Margarine", + "fontFamily": "Margarine, system-ui", + "slug": "margarine", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/margarine/v22/qkBXXvoE6trLT9Y7YLye5JRLkAXbMQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Margarine" + } + ] + }, + { + "name": "Marhey", + "fontFamily": "Marhey, system-ui", + "slug": "marhey", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/marhey/v4/x3d8ck7Laq-T7wl7mqfVrEe9sDvtBZVwO2cXiGevOMw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Marhey" + }, + { + "src": "http://fonts.gstatic.com/s/marhey/v4/x3d8ck7Laq-T7wl7mqfVrEe9sDvtBctwO2cXiGevOMw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Marhey" + }, + { + "src": "http://fonts.gstatic.com/s/marhey/v4/x3d8ck7Laq-T7wl7mqfVrEe9sDvtBflwO2cXiGevOMw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Marhey" + }, + { + "src": "http://fonts.gstatic.com/s/marhey/v4/x3d8ck7Laq-T7wl7mqfVrEe9sDvtBRV3O2cXiGevOMw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Marhey" + }, + { + "src": "http://fonts.gstatic.com/s/marhey/v4/x3d8ck7Laq-T7wl7mqfVrEe9sDvtBSx3O2cXiGevOMw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Marhey" + } + ] + }, + { + "name": "Markazi Text", + "fontFamily": "Markazi Text, serif", + "slug": "markazi-text", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/markazitext/v22/sykh-ydym6AtQaiEtX7yhqb_rV1k_81ZVYYZtfSQT4MlBekmJLo.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Markazi Text" + }, + { + "src": "http://fonts.gstatic.com/s/markazitext/v22/sykh-ydym6AtQaiEtX7yhqb_rV1k_81ZVYYZtcaQT4MlBekmJLo.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Markazi Text" + }, + { + "src": "http://fonts.gstatic.com/s/markazitext/v22/sykh-ydym6AtQaiEtX7yhqb_rV1k_81ZVYYZtSqXT4MlBekmJLo.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Markazi Text" + }, + { + "src": "http://fonts.gstatic.com/s/markazitext/v22/sykh-ydym6AtQaiEtX7yhqb_rV1k_81ZVYYZtROXT4MlBekmJLo.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Markazi Text" + } + ] + }, + { + "name": "Marko One", + "fontFamily": "Marko One, serif", + "slug": "marko-one", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/markoone/v22/9Btq3DFG0cnVM5lw1haaKpUfrHPzUw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Marko One" + } + ] + }, + { + "name": "Marmelad", + "fontFamily": "Marmelad, sans-serif", + "slug": "marmelad", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/marmelad/v18/Qw3eZQdSHj_jK2e-8tFLG-YMC0R8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Marmelad" + } + ] + }, + { + "name": "Martel", + "fontFamily": "Martel, serif", + "slug": "martel", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/martel/v10/PN_yRfK9oXHga0XVqekahRbX9vnDzw.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Martel" + }, + { + "src": "http://fonts.gstatic.com/s/martel/v10/PN_yRfK9oXHga0XVzeoahRbX9vnDzw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Martel" + }, + { + "src": "http://fonts.gstatic.com/s/martel/v10/PN_xRfK9oXHga0XtYcI-jT3L_w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Martel" + }, + { + "src": "http://fonts.gstatic.com/s/martel/v10/PN_yRfK9oXHga0XVuewahRbX9vnDzw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Martel" + }, + { + "src": "http://fonts.gstatic.com/s/martel/v10/PN_yRfK9oXHga0XV3e0ahRbX9vnDzw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Martel" + }, + { + "src": "http://fonts.gstatic.com/s/martel/v10/PN_yRfK9oXHga0XVwe4ahRbX9vnDzw.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Martel" + }, + { + "src": "http://fonts.gstatic.com/s/martel/v10/PN_yRfK9oXHga0XV5e8ahRbX9vnDzw.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Martel" + } + ] + }, + { + "name": "Martel Sans", + "fontFamily": "Martel Sans, sans-serif", + "slug": "martel-sans", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/martelsans/v12/h0GxssGi7VdzDgKjM-4d8hAX5suHFUknqMxQ.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Martel Sans" + }, + { + "src": "http://fonts.gstatic.com/s/martelsans/v12/h0GxssGi7VdzDgKjM-4d8hBz5cuHFUknqMxQ.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Martel Sans" + }, + { + "src": "http://fonts.gstatic.com/s/martelsans/v12/h0GsssGi7VdzDgKjM-4d8ijfze-PPlUu.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Martel Sans" + }, + { + "src": "http://fonts.gstatic.com/s/martelsans/v12/h0GxssGi7VdzDgKjM-4d8hAH48uHFUknqMxQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Martel Sans" + }, + { + "src": "http://fonts.gstatic.com/s/martelsans/v12/h0GxssGi7VdzDgKjM-4d8hBj4suHFUknqMxQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Martel Sans" + }, + { + "src": "http://fonts.gstatic.com/s/martelsans/v12/h0GxssGi7VdzDgKjM-4d8hB_4cuHFUknqMxQ.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Martel Sans" + }, + { + "src": "http://fonts.gstatic.com/s/martelsans/v12/h0GxssGi7VdzDgKjM-4d8hBb4MuHFUknqMxQ.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Martel Sans" + } + ] + }, + { + "name": "Martian Mono", + "fontFamily": "Martian Mono, monospace", + "slug": "martian-mono", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/martianmono/v3/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY1qus6WD75kdpF2.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Martian Mono" + }, + { + "src": "http://fonts.gstatic.com/s/martianmono/v3/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY3qu86WD75kdpF2.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Martian Mono" + }, + { + "src": "http://fonts.gstatic.com/s/martianmono/v3/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY00u86WD75kdpF2.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Martian Mono" + }, + { + "src": "http://fonts.gstatic.com/s/martianmono/v3/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY1qu86WD75kdpF2.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Martian Mono" + }, + { + "src": "http://fonts.gstatic.com/s/martianmono/v3/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY1Yu86WD75kdpF2.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Martian Mono" + }, + { + "src": "http://fonts.gstatic.com/s/martianmono/v3/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY20vM6WD75kdpF2.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Martian Mono" + }, + { + "src": "http://fonts.gstatic.com/s/martianmono/v3/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY2NvM6WD75kdpF2.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Martian Mono" + }, + { + "src": "http://fonts.gstatic.com/s/martianmono/v3/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY3qvM6WD75kdpF2.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Martian Mono" + } + ] + }, + { + "name": "Marvel", + "fontFamily": "Marvel, sans-serif", + "slug": "marvel", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/marvel/v14/nwpVtKeoNgBV0qaIkV7ED366zg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Marvel" + }, + { + "src": "http://fonts.gstatic.com/s/marvel/v14/nwpXtKeoNgBV0qa4k1TALXuqzhA7.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Marvel" + }, + { + "src": "http://fonts.gstatic.com/s/marvel/v14/nwpWtKeoNgBV0qawLXHgB1WmxwkiYQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Marvel" + }, + { + "src": "http://fonts.gstatic.com/s/marvel/v14/nwpQtKeoNgBV0qa4k2x8Al-i5QwyYdrc.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Marvel" + } + ] + }, + { + "name": "Mate", + "fontFamily": "Mate, serif", + "slug": "mate", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mate/v15/m8JdjftRd7WZ2z28WoXSaLU.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Mate" + }, + { + "src": "http://fonts.gstatic.com/s/mate/v15/m8JTjftRd7WZ6z-2XqfXeLVdbw.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Mate" + } + ] + }, + { + "name": "Mate SC", + "fontFamily": "Mate SC, serif", + "slug": "mate-sc", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/matesc/v22/-nF8OGQ1-uoVr2wKyiXZ95OkJwA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Mate SC" + } + ] + }, + { + "name": "Material Icons", + "fontFamily": "Material Icons, monospace", + "slug": "material-icons", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/materialicons/v140/flUhRq6tzZclQEJ-Vdg-IuiaDsNZIhI8tIHh.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Material Icons" + } + ] + }, + { + "name": "Material Icons Outlined", + "fontFamily": "Material Icons Outlined, monospace", + "slug": "material-icons-outlined", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/materialiconsoutlined/v109/gok-H7zzDkdnRel8-DQ6KAXJ69wP1tGnf4ZGhUcdl5GuI2Ze.otf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Material Icons Outlined" + } + ] + }, + { + "name": "Material Icons Round", + "fontFamily": "Material Icons Round, monospace", + "slug": "material-icons-round", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/materialiconsround/v108/LDItaoyNOAY6Uewc665JcIzCKsKc_M9flwmMq_fTTvg-.otf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Material Icons Round" + } + ] + }, + { + "name": "Material Icons Sharp", + "fontFamily": "Material Icons Sharp, monospace", + "slug": "material-icons-sharp", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/materialiconssharp/v109/oPWQ_lt5nv4pWNJpghLP75WiFR4kLh3kvmvSImEyc0vd.otf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Material Icons Sharp" + } + ] + }, + { + "name": "Material Icons Two Tone", + "fontFamily": "Material Icons Two Tone, monospace", + "slug": "material-icons-two-tone", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/materialiconstwotone/v112/hESh6WRmNCxEqUmNyh3JDeGxjVVyMg4tHGctNCu3NjDrH_77.otf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Material Icons Two Tone" + } + ] + }, + { + "name": "Material Symbols Outlined", + "fontFamily": "Material Symbols Outlined, monospace", + "slug": "material-symbols-outlined", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/materialsymbolsoutlined/v114/kJF1BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY43zj-jCxv3fzvRNU22ZXGJpEpjC_1v-p_4MrImHCIJIZrDCvHeembd5zrTgt.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Material Symbols Outlined" + }, + { + "src": "http://fonts.gstatic.com/s/materialsymbolsoutlined/v114/kJF1BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY43zj-jCxv3fzvRNU22ZXGJpEpjC_1v-p_4MrImHCIJIZrDAvHOembd5zrTgt.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Material Symbols Outlined" + }, + { + "src": "http://fonts.gstatic.com/s/materialsymbolsoutlined/v114/kJF1BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY43zj-jCxv3fzvRNU22ZXGJpEpjC_1v-p_4MrImHCIJIZrDDxHOembd5zrTgt.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Material Symbols Outlined" + }, + { + "src": "http://fonts.gstatic.com/s/materialsymbolsoutlined/v114/kJF1BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY43zj-jCxv3fzvRNU22ZXGJpEpjC_1v-p_4MrImHCIJIZrDCvHOembd5zrTgt.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Material Symbols Outlined" + }, + { + "src": "http://fonts.gstatic.com/s/materialsymbolsoutlined/v114/kJF1BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY43zj-jCxv3fzvRNU22ZXGJpEpjC_1v-p_4MrImHCIJIZrDCdHOembd5zrTgt.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Material Symbols Outlined" + }, + { + "src": "http://fonts.gstatic.com/s/materialsymbolsoutlined/v114/kJF1BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY43zj-jCxv3fzvRNU22ZXGJpEpjC_1v-p_4MrImHCIJIZrDBxG-embd5zrTgt.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Material Symbols Outlined" + }, + { + "src": "http://fonts.gstatic.com/s/materialsymbolsoutlined/v114/kJF1BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY43zj-jCxv3fzvRNU22ZXGJpEpjC_1v-p_4MrImHCIJIZrDBIG-embd5zrTgt.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Material Symbols Outlined" + } + ] + }, + { + "name": "Material Symbols Rounded", + "fontFamily": "Material Symbols Rounded, monospace", + "slug": "material-symbols-rounded", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/materialsymbolsrounded/v113/syl0-zNym6YjUruM-QrEh7-nyTnjDwKNJ_190FjpZIvDmUSVOK7BDB_Qb9vUSzq3wzLK-P0J-V_Zs-QtQth3-jOcbTCVpeRL2w5rwZu2rIekXxKJKJBjAa8.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Material Symbols Rounded" + }, + { + "src": "http://fonts.gstatic.com/s/materialsymbolsrounded/v113/syl0-zNym6YjUruM-QrEh7-nyTnjDwKNJ_190FjpZIvDmUSVOK7BDB_Qb9vUSzq3wzLK-P0J-V_Zs-QtQth3-jOcbTCVpeRL2w5rwZu2rAelXxKJKJBjAa8.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Material Symbols Rounded" + }, + { + "src": "http://fonts.gstatic.com/s/materialsymbolsrounded/v113/syl0-zNym6YjUruM-QrEh7-nyTnjDwKNJ_190FjpZIvDmUSVOK7BDB_Qb9vUSzq3wzLK-P0J-V_Zs-QtQth3-jOcbTCVpeRL2w5rwZu2rNmlXxKJKJBjAa8.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Material Symbols Rounded" + }, + { + "src": "http://fonts.gstatic.com/s/materialsymbolsrounded/v113/syl0-zNym6YjUruM-QrEh7-nyTnjDwKNJ_190FjpZIvDmUSVOK7BDB_Qb9vUSzq3wzLK-P0J-V_Zs-QtQth3-jOcbTCVpeRL2w5rwZu2rIelXxKJKJBjAa8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Material Symbols Rounded" + }, + { + "src": "http://fonts.gstatic.com/s/materialsymbolsrounded/v113/syl0-zNym6YjUruM-QrEh7-nyTnjDwKNJ_190FjpZIvDmUSVOK7BDB_Qb9vUSzq3wzLK-P0J-V_Zs-QtQth3-jOcbTCVpeRL2w5rwZu2rLWlXxKJKJBjAa8.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Material Symbols Rounded" + }, + { + "src": "http://fonts.gstatic.com/s/materialsymbolsrounded/v113/syl0-zNym6YjUruM-QrEh7-nyTnjDwKNJ_190FjpZIvDmUSVOK7BDB_Qb9vUSzq3wzLK-P0J-V_Zs-QtQth3-jOcbTCVpeRL2w5rwZu2rFmiXxKJKJBjAa8.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Material Symbols Rounded" + }, + { + "src": "http://fonts.gstatic.com/s/materialsymbolsrounded/v113/syl0-zNym6YjUruM-QrEh7-nyTnjDwKNJ_190FjpZIvDmUSVOK7BDB_Qb9vUSzq3wzLK-P0J-V_Zs-QtQth3-jOcbTCVpeRL2w5rwZu2rGCiXxKJKJBjAa8.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Material Symbols Rounded" + } + ] + }, + { + "name": "Material Symbols Sharp", + "fontFamily": "Material Symbols Sharp, monospace", + "slug": "material-symbols-sharp", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/materialsymbolssharp/v110/gNNBW2J8Roq16WD5tFNRaeLQk6-SHQ_R00k4c2_whPnoY9ruReaU4bHmz74m0ZkGH-VBYe1x0TV6x4yFH8F-H5OdzEL3sVTgJtfbYxOLozCOJ1H7-knk.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Material Symbols Sharp" + }, + { + "src": "http://fonts.gstatic.com/s/materialsymbolssharp/v110/gNNBW2J8Roq16WD5tFNRaeLQk6-SHQ_R00k4c2_whPnoY9ruReaU4bHmz74m0ZkGH-VBYe1x0TV6x4yFH8F-H5OdzEL3sVTgJtfbYxMLojCOJ1H7-knk.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Material Symbols Sharp" + }, + { + "src": "http://fonts.gstatic.com/s/materialsymbolssharp/v110/gNNBW2J8Roq16WD5tFNRaeLQk6-SHQ_R00k4c2_whPnoY9ruReaU4bHmz74m0ZkGH-VBYe1x0TV6x4yFH8F-H5OdzEL3sVTgJtfbYxPVojCOJ1H7-knk.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Material Symbols Sharp" + }, + { + "src": "http://fonts.gstatic.com/s/materialsymbolssharp/v110/gNNBW2J8Roq16WD5tFNRaeLQk6-SHQ_R00k4c2_whPnoY9ruReaU4bHmz74m0ZkGH-VBYe1x0TV6x4yFH8F-H5OdzEL3sVTgJtfbYxOLojCOJ1H7-knk.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Material Symbols Sharp" + }, + { + "src": "http://fonts.gstatic.com/s/materialsymbolssharp/v110/gNNBW2J8Roq16WD5tFNRaeLQk6-SHQ_R00k4c2_whPnoY9ruReaU4bHmz74m0ZkGH-VBYe1x0TV6x4yFH8F-H5OdzEL3sVTgJtfbYxO5ojCOJ1H7-knk.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Material Symbols Sharp" + }, + { + "src": "http://fonts.gstatic.com/s/materialsymbolssharp/v110/gNNBW2J8Roq16WD5tFNRaeLQk6-SHQ_R00k4c2_whPnoY9ruReaU4bHmz74m0ZkGH-VBYe1x0TV6x4yFH8F-H5OdzEL3sVTgJtfbYxNVpTCOJ1H7-knk.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Material Symbols Sharp" + }, + { + "src": "http://fonts.gstatic.com/s/materialsymbolssharp/v110/gNNBW2J8Roq16WD5tFNRaeLQk6-SHQ_R00k4c2_whPnoY9ruReaU4bHmz74m0ZkGH-VBYe1x0TV6x4yFH8F-H5OdzEL3sVTgJtfbYxNspTCOJ1H7-knk.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Material Symbols Sharp" + } + ] + }, + { + "name": "Maven Pro", + "fontFamily": "Maven Pro, sans-serif", + "slug": "maven-pro", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mavenpro/v32/7Auup_AqnyWWAxW2Wk3swUz56MS91Eww8SX25nCpozp5GvU.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Maven Pro" + }, + { + "src": "http://fonts.gstatic.com/s/mavenpro/v32/7Auup_AqnyWWAxW2Wk3swUz56MS91Eww8Rf25nCpozp5GvU.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Maven Pro" + }, + { + "src": "http://fonts.gstatic.com/s/mavenpro/v32/7Auup_AqnyWWAxW2Wk3swUz56MS91Eww8fvx5nCpozp5GvU.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Maven Pro" + }, + { + "src": "http://fonts.gstatic.com/s/mavenpro/v32/7Auup_AqnyWWAxW2Wk3swUz56MS91Eww8cLx5nCpozp5GvU.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Maven Pro" + }, + { + "src": "http://fonts.gstatic.com/s/mavenpro/v32/7Auup_AqnyWWAxW2Wk3swUz56MS91Eww8aXx5nCpozp5GvU.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Maven Pro" + }, + { + "src": "http://fonts.gstatic.com/s/mavenpro/v32/7Auup_AqnyWWAxW2Wk3swUz56MS91Eww8Yzx5nCpozp5GvU.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Maven Pro" + } + ] + }, + { + "name": "McLaren", + "fontFamily": "McLaren, system-ui", + "slug": "mclaren", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mclaren/v14/2EbnL-ZuAXFqZFXISYYf8z2Yt_c.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "McLaren" + } + ] + }, + { + "name": "Mea Culpa", + "fontFamily": "Mea Culpa, cursive", + "slug": "mea-culpa", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/meaculpa/v3/AMOTz4GcuWbEIuza8jsZms0QW3mqyg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Mea Culpa" + } + ] + }, + { + "name": "Meddon", + "fontFamily": "Meddon, cursive", + "slug": "meddon", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/meddon/v20/kmK8ZqA2EgDNeHTZhBdB3y_Aow.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Meddon" + } + ] + }, + { + "name": "MedievalSharp", + "fontFamily": "MedievalSharp, system-ui", + "slug": "medievalsharp", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/medievalsharp/v24/EvOJzAlL3oU5AQl2mP5KdgptAq96MwvXLDk.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "MedievalSharp" + } + ] + }, + { + "name": "Medula One", + "fontFamily": "Medula One, system-ui", + "slug": "medula-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/medulaone/v19/YA9Wr0qb5kjJM6l2V0yukiEqs7GtlvY.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Medula One" + } + ] + }, + { + "name": "Meera Inimai", + "fontFamily": "Meera Inimai, sans-serif", + "slug": "meera-inimai", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/meerainimai/v12/845fNMM5EIqOW5MPuvO3ILep_2jDVevnLQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Meera Inimai" + } + ] + }, + { + "name": "Megrim", + "fontFamily": "Megrim, system-ui", + "slug": "megrim", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/megrim/v16/46kulbz5WjvLqJZlbWXgd0RY1g.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Megrim" + } + ] + }, + { + "name": "Meie Script", + "fontFamily": "Meie Script, cursive", + "slug": "meie-script", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/meiescript/v21/_LOImzDK7erRjhunIspaMjxn5IXg0WDz.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Meie Script" + } + ] + }, + { + "name": "Meow Script", + "fontFamily": "Meow Script, cursive", + "slug": "meow-script", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/meowscript/v5/0FlQVPqanlaJrtr8AnJ0ESch0_0CfDf1.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Meow Script" + } + ] + }, + { + "name": "Merienda", + "fontFamily": "Merienda, cursive", + "slug": "merienda", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/merienda/v19/gNMaW3x8Qoy5_mf8uUkJGHtiYXjmKFy5JHhoSU78QGBV0A.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Merienda" + }, + { + "src": "http://fonts.gstatic.com/s/merienda/v19/gNMaW3x8Qoy5_mf8uUkJGHtiYXjmKFy5enhoSU78QGBV0A.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Merienda" + }, + { + "src": "http://fonts.gstatic.com/s/merienda/v19/gNMaW3x8Qoy5_mf8uUkJGHtiYXjmKFy5SHhoSU78QGBV0A.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Merienda" + }, + { + "src": "http://fonts.gstatic.com/s/merienda/v19/gNMaW3x8Qoy5_mf8uUkJGHtiYXjmKFy5pH9oSU78QGBV0A.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Merienda" + }, + { + "src": "http://fonts.gstatic.com/s/merienda/v19/gNMaW3x8Qoy5_mf8uUkJGHtiYXjmKFy5nX9oSU78QGBV0A.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Merienda" + }, + { + "src": "http://fonts.gstatic.com/s/merienda/v19/gNMaW3x8Qoy5_mf8uUkJGHtiYXjmKFy5-n9oSU78QGBV0A.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Merienda" + }, + { + "src": "http://fonts.gstatic.com/s/merienda/v19/gNMaW3x8Qoy5_mf8uUkJGHtiYXjmKFy5039oSU78QGBV0A.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Merienda" + } + ] + }, + { + "name": "Merriweather", + "fontFamily": "Merriweather, serif", + "slug": "merriweather", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/merriweather/v30/u-4n0qyriQwlOrhSvowK_l521wRpX837pvjxPA.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Merriweather" + }, + { + "src": "http://fonts.gstatic.com/s/merriweather/v30/u-4l0qyriQwlOrhSvowK_l5-eR7lXcf_hP3hPGWH.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Merriweather" + }, + { + "src": "http://fonts.gstatic.com/s/merriweather/v30/u-440qyriQwlOrhSvowK_l5OeyxNV-bnrw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Merriweather" + }, + { + "src": "http://fonts.gstatic.com/s/merriweather/v30/u-4m0qyriQwlOrhSvowK_l5-eSZJdeP3r-Ho.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Merriweather" + }, + { + "src": "http://fonts.gstatic.com/s/merriweather/v30/u-4n0qyriQwlOrhSvowK_l52xwNpX837pvjxPA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Merriweather" + }, + { + "src": "http://fonts.gstatic.com/s/merriweather/v30/u-4l0qyriQwlOrhSvowK_l5-eR71Wsf_hP3hPGWH.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Merriweather" + }, + { + "src": "http://fonts.gstatic.com/s/merriweather/v30/u-4n0qyriQwlOrhSvowK_l52_wFpX837pvjxPA.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Merriweather" + }, + { + "src": "http://fonts.gstatic.com/s/merriweather/v30/u-4l0qyriQwlOrhSvowK_l5-eR7NWMf_hP3hPGWH.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Merriweather" + } + ] + }, + { + "name": "Merriweather Sans", + "fontFamily": "Merriweather Sans, sans-serif", + "slug": "merriweather-sans", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/merriweathersans/v26/2-cO9IRs1JiJN1FRAMjTN5zd9vgsFF_5asQTb6hZ2JKZ_O4ljuEG7xFHnQ.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Merriweather Sans" + }, + { + "src": "http://fonts.gstatic.com/s/merriweathersans/v26/2-cO9IRs1JiJN1FRAMjTN5zd9vgsFF_5asQTb6hZ2JKZou4ljuEG7xFHnQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Merriweather Sans" + }, + { + "src": "http://fonts.gstatic.com/s/merriweathersans/v26/2-cO9IRs1JiJN1FRAMjTN5zd9vgsFF_5asQTb6hZ2JKZkO4ljuEG7xFHnQ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Merriweather Sans" + }, + { + "src": "http://fonts.gstatic.com/s/merriweathersans/v26/2-cO9IRs1JiJN1FRAMjTN5zd9vgsFF_5asQTb6hZ2JKZfOkljuEG7xFHnQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Merriweather Sans" + }, + { + "src": "http://fonts.gstatic.com/s/merriweathersans/v26/2-cO9IRs1JiJN1FRAMjTN5zd9vgsFF_5asQTb6hZ2JKZRekljuEG7xFHnQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Merriweather Sans" + }, + { + "src": "http://fonts.gstatic.com/s/merriweathersans/v26/2-cO9IRs1JiJN1FRAMjTN5zd9vgsFF_5asQTb6hZ2JKZIukljuEG7xFHnQ.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Merriweather Sans" + }, + { + "src": "http://fonts.gstatic.com/s/merriweathersans/v26/2-cM9IRs1JiJN1FRAMjTN5zd9vgsFHXwWDvLBsPDdpWMaq2TzesCzRRXnaur.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Merriweather Sans" + }, + { + "src": "http://fonts.gstatic.com/s/merriweathersans/v26/2-cM9IRs1JiJN1FRAMjTN5zd9vgsFHXwWDvLBsPDdpWMaq3NzesCzRRXnaur.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Merriweather Sans" + }, + { + "src": "http://fonts.gstatic.com/s/merriweathersans/v26/2-cM9IRs1JiJN1FRAMjTN5zd9vgsFHXwWDvLBsPDdpWMaq3_zesCzRRXnaur.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Merriweather Sans" + }, + { + "src": "http://fonts.gstatic.com/s/merriweathersans/v26/2-cM9IRs1JiJN1FRAMjTN5zd9vgsFHXwWDvLBsPDdpWMaq0TyusCzRRXnaur.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Merriweather Sans" + }, + { + "src": "http://fonts.gstatic.com/s/merriweathersans/v26/2-cM9IRs1JiJN1FRAMjTN5zd9vgsFHXwWDvLBsPDdpWMaq0qyusCzRRXnaur.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Merriweather Sans" + }, + { + "src": "http://fonts.gstatic.com/s/merriweathersans/v26/2-cM9IRs1JiJN1FRAMjTN5zd9vgsFHXwWDvLBsPDdpWMaq1NyusCzRRXnaur.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Merriweather Sans" + } + ] + }, + { + "name": "Metal", + "fontFamily": "Metal, system-ui", + "slug": "metal", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/metal/v28/lW-wwjUJIXTo7i3nnoQAUdN2.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Metal" + } + ] + }, + { + "name": "Metal Mania", + "fontFamily": "Metal Mania, system-ui", + "slug": "metal-mania", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/metalmania/v22/RWmMoKWb4e8kqMfBUdPFJeXCg6UKDXlq.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Metal Mania" + } + ] + }, + { + "name": "Metamorphous", + "fontFamily": "Metamorphous, system-ui", + "slug": "metamorphous", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/metamorphous/v18/Wnz8HA03aAXcC39ZEX5y1330PCCthTsmaQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Metamorphous" + } + ] + }, + { + "name": "Metrophobic", + "fontFamily": "Metrophobic, sans-serif", + "slug": "metrophobic", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/metrophobic/v23/sJoA3LZUhMSAPV_u0qwiAT-J737FPEEL.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Metrophobic" + } + ] + }, + { + "name": "Michroma", + "fontFamily": "Michroma, sans-serif", + "slug": "michroma", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/michroma/v16/PN_zRfy9qWD8fEagAMg6rzjb_-Da.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Michroma" + } + ] + }, + { + "name": "Milonga", + "fontFamily": "Milonga, system-ui", + "slug": "milonga", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/milonga/v20/SZc53FHnIaK9W5kffz3GkUrS8DI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Milonga" + } + ] + }, + { + "name": "Miltonian", + "fontFamily": "Miltonian, system-ui", + "slug": "miltonian", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/miltonian/v26/zOL-4pbPn6Ne9JqTg9mr6e5As-FeiQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Miltonian" + } + ] + }, + { + "name": "Miltonian Tattoo", + "fontFamily": "Miltonian Tattoo, system-ui", + "slug": "miltonian-tattoo", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/miltoniantattoo/v28/EvOUzBRL0o0kCxF-lcMCQxlpVsA_FwP8MDBku-s.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Miltonian Tattoo" + } + ] + }, + { + "name": "Mina", + "fontFamily": "Mina, sans-serif", + "slug": "mina", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mina/v11/-nFzOGc18vARrz9j7i3y65o.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Mina" + }, + { + "src": "http://fonts.gstatic.com/s/mina/v11/-nF8OGc18vARl4NMyiXZ95OkJwA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Mina" + } + ] + }, + { + "name": "Mingzat", + "fontFamily": "Mingzat, sans-serif", + "slug": "mingzat", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mingzat/v6/0QIgMX5C-o-oWWyvBttkm_mv670.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Mingzat" + } + ] + }, + { + "name": "Miniver", + "fontFamily": "Miniver, system-ui", + "slug": "miniver", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/miniver/v21/eLGcP-PxIg-5H0vC770Cy8r8fWA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Miniver" + } + ] + }, + { + "name": "Miriam Libre", + "fontFamily": "Miriam Libre, sans-serif", + "slug": "miriam-libre", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/miriamlibre/v14/DdTh798HsHwubBAqfkcBTL_vYJn_Teun9g.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Miriam Libre" + }, + { + "src": "http://fonts.gstatic.com/s/miriamlibre/v14/DdT-798HsHwubBAqfkcBTL_X3LbbRcC7_-Z7Hg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Miriam Libre" + } + ] + }, + { + "name": "Mirza", + "fontFamily": "Mirza, system-ui", + "slug": "mirza", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mirza/v15/co3ImWlikiN5EurdKMewsrvI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Mirza" + }, + { + "src": "http://fonts.gstatic.com/s/mirza/v15/co3FmWlikiN5EtIpAeO4mafBomDi.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Mirza" + }, + { + "src": "http://fonts.gstatic.com/s/mirza/v15/co3FmWlikiN5EtIFBuO4mafBomDi.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Mirza" + }, + { + "src": "http://fonts.gstatic.com/s/mirza/v15/co3FmWlikiN5EtJhB-O4mafBomDi.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Mirza" + } + ] + }, + { + "name": "Miss Fajardose", + "fontFamily": "Miss Fajardose, cursive", + "slug": "miss-fajardose", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/missfajardose/v22/E21-_dn5gvrawDdPFVl-N0Ajb8qvWPaJq4no.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Miss Fajardose" + } + ] + }, + { + "name": "Mitr", + "fontFamily": "Mitr, sans-serif", + "slug": "mitr", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mitr/v11/pxiEypw5ucZF8fMZFJDUc1NECPY.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Mitr" + }, + { + "src": "http://fonts.gstatic.com/s/mitr/v11/pxiEypw5ucZF8ZcaFJDUc1NECPY.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Mitr" + }, + { + "src": "http://fonts.gstatic.com/s/mitr/v11/pxiLypw5ucZFyTsyMJj_b1o.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Mitr" + }, + { + "src": "http://fonts.gstatic.com/s/mitr/v11/pxiEypw5ucZF8c8bFJDUc1NECPY.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Mitr" + }, + { + "src": "http://fonts.gstatic.com/s/mitr/v11/pxiEypw5ucZF8eMcFJDUc1NECPY.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Mitr" + }, + { + "src": "http://fonts.gstatic.com/s/mitr/v11/pxiEypw5ucZF8YcdFJDUc1NECPY.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Mitr" + } + ] + }, + { + "name": "Mochiy Pop One", + "fontFamily": "Mochiy Pop One, sans-serif", + "slug": "mochiy-pop-one", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mochiypopone/v7/QdVPSTA9Jh-gg-5XZP2UmU4O9kwwD3s6ZKAi.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Mochiy Pop One" + } + ] + }, + { + "name": "Mochiy Pop P One", + "fontFamily": "Mochiy Pop P One, sans-serif", + "slug": "mochiy-pop-p-one", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mochiypoppone/v7/Ktk2AKuPeY_td1-h9LayHYWCjAqyN4O3WYZB_sU.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Mochiy Pop P One" + } + ] + }, + { + "name": "Modak", + "fontFamily": "Modak, system-ui", + "slug": "modak", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/modak/v18/EJRYQgs1XtIEsnMH8BVZ76KU.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Modak" + } + ] + }, + { + "name": "Modern Antiqua", + "fontFamily": "Modern Antiqua, system-ui", + "slug": "modern-antiqua", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/modernantiqua/v22/NGStv5TIAUg6Iq_RLNo_2dp1sI1Ea2u0c3Gi.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Modern Antiqua" + } + ] + }, + { + "name": "Mogra", + "fontFamily": "Mogra, system-ui", + "slug": "mogra", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mogra/v19/f0X40eSs8c95TBo4DvLmxtnG.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Mogra" + } + ] + }, + { + "name": "Mohave", + "fontFamily": "Mohave, sans-serif", + "slug": "mohave", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mohave/v8/7cH0v4ksjJunKqMVAOPIMOeSmiojdif_HvCQopLSvBk.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Mohave" + }, + { + "src": "http://fonts.gstatic.com/s/mohave/v8/7cH0v4ksjJunKqMVAOPIMOeSmiojdnn_HvCQopLSvBk.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Mohave" + }, + { + "src": "http://fonts.gstatic.com/s/mohave/v8/7cH0v4ksjJunKqMVAOPIMOeSmiojdkv_HvCQopLSvBk.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Mohave" + }, + { + "src": "http://fonts.gstatic.com/s/mohave/v8/7cH0v4ksjJunKqMVAOPIMOeSmiojdqf4HvCQopLSvBk.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Mohave" + }, + { + "src": "http://fonts.gstatic.com/s/mohave/v8/7cH0v4ksjJunKqMVAOPIMOeSmiojdp74HvCQopLSvBk.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Mohave" + }, + { + "src": "http://fonts.gstatic.com/s/mohave/v8/7cH2v4ksjJunKqM_CdE36I75AIQkY7G8qLOaprDXrBlSVw.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Mohave" + }, + { + "src": "http://fonts.gstatic.com/s/mohave/v8/7cH2v4ksjJunKqM_CdE36I75AIQkY7G89rOaprDXrBlSVw.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Mohave" + }, + { + "src": "http://fonts.gstatic.com/s/mohave/v8/7cH2v4ksjJunKqM_CdE36I75AIQkY7G8xLOaprDXrBlSVw.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Mohave" + }, + { + "src": "http://fonts.gstatic.com/s/mohave/v8/7cH2v4ksjJunKqM_CdE36I75AIQkY7G8KLSaprDXrBlSVw.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Mohave" + }, + { + "src": "http://fonts.gstatic.com/s/mohave/v8/7cH2v4ksjJunKqM_CdE36I75AIQkY7G8EbSaprDXrBlSVw.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Mohave" + } + ] + }, + { + "name": "Molengo", + "fontFamily": "Molengo, sans-serif", + "slug": "molengo", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/molengo/v16/I_uuMpWeuBzZNBtQbbRQkiCvs5Y.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Molengo" + } + ] + }, + { + "name": "Molle", + "fontFamily": "Molle, cursive", + "slug": "molle", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/molle/v21/E21n_dL5hOXFhWEsXzgmVydREus.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Molle" + } + ] + }, + { + "name": "Monda", + "fontFamily": "Monda, sans-serif", + "slug": "monda", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/monda/v16/TK3tWkYFABsmjvpmNBsLvPdG.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Monda" + }, + { + "src": "http://fonts.gstatic.com/s/monda/v16/TK3gWkYFABsmjsLaGz8Dl-tPKo2t.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Monda" + } + ] + }, + { + "name": "Monofett", + "fontFamily": "Monofett, monospace", + "slug": "monofett", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/monofett/v23/mFTyWbofw6zc9NtnW43SuRwr0VJ7.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Monofett" + } + ] + }, + { + "name": "Monomaniac One", + "fontFamily": "Monomaniac One, sans-serif", + "slug": "monomaniac-one", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/monomaniacone/v9/4iC06K17YctZjx50EU-QlwPmcqRnqYkB5kwI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Monomaniac One" + } + ] + }, + { + "name": "Monoton", + "fontFamily": "Monoton, system-ui", + "slug": "monoton", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/monoton/v15/5h1aiZUrOngCibe4fkbBQ2S7FU8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Monoton" + } + ] + }, + { + "name": "Monsieur La Doulaise", + "fontFamily": "Monsieur La Doulaise, cursive", + "slug": "monsieur-la-doulaise", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/monsieurladoulaise/v15/_Xmz-GY4rjmCbQfc-aPRaa4pqV340p7EZl5ewkEU4HTy.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Monsieur La Doulaise" + } + ] + }, + { + "name": "Montaga", + "fontFamily": "Montaga, serif", + "slug": "montaga", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/montaga/v13/H4cnBX2Ml8rCkEO_0gYQ7LO5mqc.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Montaga" + } + ] + }, + { + "name": "Montagu Slab", + "fontFamily": "Montagu Slab, serif", + "slug": "montagu-slab", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/montaguslab/v6/6qLhKZIQtB_zv0xUaXRDWkY_HXsphdLRZF40vm_jzR2jhk_n3T6ACkDbE3P9Fs7bOSO7.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Montagu Slab" + }, + { + "src": "http://fonts.gstatic.com/s/montaguslab/v6/6qLhKZIQtB_zv0xUaXRDWkY_HXsphdLRZF40vm_jzR2jhk_n3T6ACkBbEnP9Fs7bOSO7.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Montagu Slab" + }, + { + "src": "http://fonts.gstatic.com/s/montaguslab/v6/6qLhKZIQtB_zv0xUaXRDWkY_HXsphdLRZF40vm_jzR2jhk_n3T6ACkCFEnP9Fs7bOSO7.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Montagu Slab" + }, + { + "src": "http://fonts.gstatic.com/s/montaguslab/v6/6qLhKZIQtB_zv0xUaXRDWkY_HXsphdLRZF40vm_jzR2jhk_n3T6ACkDbEnP9Fs7bOSO7.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Montagu Slab" + }, + { + "src": "http://fonts.gstatic.com/s/montaguslab/v6/6qLhKZIQtB_zv0xUaXRDWkY_HXsphdLRZF40vm_jzR2jhk_n3T6ACkDpEnP9Fs7bOSO7.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Montagu Slab" + }, + { + "src": "http://fonts.gstatic.com/s/montaguslab/v6/6qLhKZIQtB_zv0xUaXRDWkY_HXsphdLRZF40vm_jzR2jhk_n3T6ACkAFFXP9Fs7bOSO7.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Montagu Slab" + }, + { + "src": "http://fonts.gstatic.com/s/montaguslab/v6/6qLhKZIQtB_zv0xUaXRDWkY_HXsphdLRZF40vm_jzR2jhk_n3T6ACkA8FXP9Fs7bOSO7.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Montagu Slab" + } + ] + }, + { + "name": "MonteCarlo", + "fontFamily": "MonteCarlo, cursive", + "slug": "montecarlo", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/montecarlo/v8/buEzpo6-f9X01GadLA0G0CoV_NxLeiw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "MonteCarlo" + } + ] + }, + { + "name": "Montez", + "fontFamily": "Montez, cursive", + "slug": "montez", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/montez/v18/845ZNMk5GoGIX8lm1LDeSd-R_g.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Montez" + } + ] + }, + { + "name": "Montserrat", + "fontFamily": "Montserrat, sans-serif", + "slug": "montserrat", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Uw-Y3tcoqK5.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Montserrat" + }, + { + "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCvr6Ew-Y3tcoqK5.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Montserrat" + }, + { + "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCs16Ew-Y3tcoqK5.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Montserrat" + }, + { + "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Ew-Y3tcoqK5.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Montserrat" + }, + { + "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtZ6Ew-Y3tcoqK5.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Montserrat" + }, + { + "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCu170w-Y3tcoqK5.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Montserrat" + }, + { + "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCuM70w-Y3tcoqK5.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Montserrat" + }, + { + "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCvr70w-Y3tcoqK5.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Montserrat" + }, + { + "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCvC70w-Y3tcoqK5.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Montserrat" + }, + { + "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq6R8aX9-p7K5ILg.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Montserrat" + }, + { + "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jqyR9aX9-p7K5ILg.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Montserrat" + }, + { + "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq_p9aX9-p7K5ILg.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Montserrat" + }, + { + "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq6R9aX9-p7K5ILg.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Montserrat" + }, + { + "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq5Z9aX9-p7K5ILg.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Montserrat" + }, + { + "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq3p6aX9-p7K5ILg.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Montserrat" + }, + { + "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq0N6aX9-p7K5ILg.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Montserrat" + }, + { + "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jqyR6aX9-p7K5ILg.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Montserrat" + }, + { + "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jqw16aX9-p7K5ILg.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Montserrat" + } + ] + }, + { + "name": "Montserrat Alternates", + "fontFamily": "Montserrat Alternates, sans-serif", + "slug": "montserrat-alternates", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFThWacfw6zH4dthXcyms1lPpC8I_b0juU0xiKfVKphL03l4.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Montserrat Alternates" + }, + { + "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFTjWacfw6zH4dthXcyms1lPpC8I_b0juU057p-xIJxp1ml4imo.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Montserrat Alternates" + }, + { + "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFTiWacfw6zH4dthXcyms1lPpC8I_b0juU0xJIb1ALZH2mBhkw.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Montserrat Alternates" + }, + { + "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFTkWacfw6zH4dthXcyms1lPpC8I_b0juU057p8dAbxD-GVxk3Nd.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Montserrat Alternates" + }, + { + "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFTiWacfw6zH4dthXcyms1lPpC8I_b0juU0xQIX1ALZH2mBhkw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Montserrat Alternates" + }, + { + "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFTkWacfw6zH4dthXcyms1lPpC8I_b0juU057p95ArxD-GVxk3Nd.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Montserrat Alternates" + }, + { + "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFTvWacfw6zH4dthXcyms1lPpC8I_b0juU0J7K3RCJ1b0w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Montserrat Alternates" + }, + { + "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFThWacfw6zH4dthXcyms1lPpC8I_b0juU057qfVKphL03l4.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Montserrat Alternates" + }, + { + "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFTiWacfw6zH4dthXcyms1lPpC8I_b0juU0xGIT1ALZH2mBhkw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Montserrat Alternates" + }, + { + "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFTkWacfw6zH4dthXcyms1lPpC8I_b0juU057p8hA7xD-GVxk3Nd.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Montserrat Alternates" + }, + { + "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFTiWacfw6zH4dthXcyms1lPpC8I_b0juU0xNIP1ALZH2mBhkw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Montserrat Alternates" + }, + { + "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFTkWacfw6zH4dthXcyms1lPpC8I_b0juU057p8NBLxD-GVxk3Nd.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Montserrat Alternates" + }, + { + "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFTiWacfw6zH4dthXcyms1lPpC8I_b0juU0xUIL1ALZH2mBhkw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Montserrat Alternates" + }, + { + "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFTkWacfw6zH4dthXcyms1lPpC8I_b0juU057p9pBbxD-GVxk3Nd.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Montserrat Alternates" + }, + { + "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFTiWacfw6zH4dthXcyms1lPpC8I_b0juU0xTIH1ALZH2mBhkw.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Montserrat Alternates" + }, + { + "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFTkWacfw6zH4dthXcyms1lPpC8I_b0juU057p91BrxD-GVxk3Nd.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Montserrat Alternates" + }, + { + "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFTiWacfw6zH4dthXcyms1lPpC8I_b0juU0xaID1ALZH2mBhkw.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Montserrat Alternates" + }, + { + "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFTkWacfw6zH4dthXcyms1lPpC8I_b0juU057p9RB7xD-GVxk3Nd.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Montserrat Alternates" + } + ] + }, + { + "name": "Montserrat Subrayada", + "fontFamily": "Montserrat Subrayada, sans-serif", + "slug": "montserrat-subrayada", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/montserratsubrayada/v17/U9MD6c-o9H7PgjlTHThBnNHGVUORwteQQE8LYuceqGT-.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Montserrat Subrayada" + }, + { + "src": "http://fonts.gstatic.com/s/montserratsubrayada/v17/U9MM6c-o9H7PgjlTHThBnNHGVUORwteQQHe3TcMWg3j36Ebz.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Montserrat Subrayada" + } + ] + }, + { + "name": "Moo Lah Lah", + "fontFamily": "Moo Lah Lah, system-ui", + "slug": "moo-lah-lah", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/moolahlah/v3/dg4h_p_opKZOA0w1AYcm55wtYQYugjW4.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Moo Lah Lah" + } + ] + }, + { + "name": "Moon Dance", + "fontFamily": "Moon Dance, cursive", + "slug": "moon-dance", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/moondance/v3/WBLgrEbUbFlYW9ekmGawe2XiKMiokE4.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Moon Dance" + } + ] + }, + { + "name": "Moul", + "fontFamily": "Moul, system-ui", + "slug": "moul", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/moul/v25/nuF2D__FSo_3E-RYiJCy-00.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Moul" + } + ] + }, + { + "name": "Moulpali", + "fontFamily": "Moulpali, system-ui", + "slug": "moulpali", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/moulpali/v28/H4ckBXKMl9HagUWymyY6wr-wg763.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Moulpali" + } + ] + }, + { + "name": "Mountains of Christmas", + "fontFamily": "Mountains of Christmas, system-ui", + "slug": "mountains-of-christmas", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mountainsofchristmas/v20/3y9w6a4zcCnn5X0FDyrKi2ZRUBIy8uxoUo7ePNamMPNpJpc.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Mountains of Christmas" + }, + { + "src": "http://fonts.gstatic.com/s/mountainsofchristmas/v20/3y9z6a4zcCnn5X0FDyrKi2ZRUBIy8uxoUo7eBGqJFPtCOp6IaEA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Mountains of Christmas" + } + ] + }, + { + "name": "Mouse Memoirs", + "fontFamily": "Mouse Memoirs, sans-serif", + "slug": "mouse-memoirs", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mousememoirs/v14/t5tmIRoSNJ-PH0WNNgDYxdSb7TnFrpOHYh4.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Mouse Memoirs" + } + ] + }, + { + "name": "Mr Bedfort", + "fontFamily": "Mr Bedfort, cursive", + "slug": "mr-bedfort", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mrbedfort/v22/MQpR-WCtNZSWAdTMwBicliq0XZe_Iy8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Mr Bedfort" + } + ] + }, + { + "name": "Mr Dafoe", + "fontFamily": "Mr Dafoe, cursive", + "slug": "mr-dafoe", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mrdafoe/v14/lJwE-pIzkS5NXuMMrGiqg7MCxz_C.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Mr Dafoe" + } + ] + }, + { + "name": "Mr De Haviland", + "fontFamily": "Mr De Haviland, cursive", + "slug": "mr-de-haviland", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mrdehaviland/v14/OpNVnooIhJj96FdB73296ksbOj3C4ULVNTlB.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Mr De Haviland" + } + ] + }, + { + "name": "Mrs Saint Delafield", + "fontFamily": "Mrs Saint Delafield, cursive", + "slug": "mrs-saint-delafield", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mrssaintdelafield/v13/v6-IGZDIOVXH9xtmTZfRagunqBw5WC62cK4tLsubB2w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Mrs Saint Delafield" + } + ] + }, + { + "name": "Mrs Sheppards", + "fontFamily": "Mrs Sheppards, cursive", + "slug": "mrs-sheppards", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mrssheppards/v21/PN_2Rfm9snC0XUGoEZhb91ig3vjxynMix4Y.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Mrs Sheppards" + } + ] + }, + { + "name": "Ms Madi", + "fontFamily": "Ms Madi, cursive", + "slug": "ms-madi", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/msmadi/v2/HTxsL2UxNnOji5E1N-DPiI7QAYo.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Ms Madi" + } + ] + }, + { + "name": "Mukta", + "fontFamily": "Mukta, sans-serif", + "slug": "mukta", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mukta/v14/iJWHBXyXfDDVXbEOjFma-2HW7ZB_.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Mukta" + }, + { + "src": "http://fonts.gstatic.com/s/mukta/v14/iJWHBXyXfDDVXbFqj1ma-2HW7ZB_.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Mukta" + }, + { + "src": "http://fonts.gstatic.com/s/mukta/v14/iJWKBXyXfDDVXYnGp32S0H3f.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Mukta" + }, + { + "src": "http://fonts.gstatic.com/s/mukta/v14/iJWHBXyXfDDVXbEyjlma-2HW7ZB_.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Mukta" + }, + { + "src": "http://fonts.gstatic.com/s/mukta/v14/iJWHBXyXfDDVXbEeiVma-2HW7ZB_.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Mukta" + }, + { + "src": "http://fonts.gstatic.com/s/mukta/v14/iJWHBXyXfDDVXbF6iFma-2HW7ZB_.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Mukta" + }, + { + "src": "http://fonts.gstatic.com/s/mukta/v14/iJWHBXyXfDDVXbFmi1ma-2HW7ZB_.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Mukta" + } + ] + }, + { + "name": "Mukta Mahee", + "fontFamily": "Mukta Mahee, sans-serif", + "slug": "mukta-mahee", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/muktamahee/v16/XRXN3IOIi0hcP8iVU67hA9MFcBoHJndqZCsW.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Mukta Mahee" + }, + { + "src": "http://fonts.gstatic.com/s/muktamahee/v16/XRXN3IOIi0hcP8iVU67hA9NhcxoHJndqZCsW.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Mukta Mahee" + }, + { + "src": "http://fonts.gstatic.com/s/muktamahee/v16/XRXQ3IOIi0hcP8iVU67hA-vNWz4PDWtj.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Mukta Mahee" + }, + { + "src": "http://fonts.gstatic.com/s/muktamahee/v16/XRXN3IOIi0hcP8iVU67hA9M5choHJndqZCsW.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Mukta Mahee" + }, + { + "src": "http://fonts.gstatic.com/s/muktamahee/v16/XRXN3IOIi0hcP8iVU67hA9MVdRoHJndqZCsW.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Mukta Mahee" + }, + { + "src": "http://fonts.gstatic.com/s/muktamahee/v16/XRXN3IOIi0hcP8iVU67hA9NxdBoHJndqZCsW.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Mukta Mahee" + }, + { + "src": "http://fonts.gstatic.com/s/muktamahee/v16/XRXN3IOIi0hcP8iVU67hA9NtdxoHJndqZCsW.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Mukta Mahee" + } + ] + }, + { + "name": "Mukta Malar", + "fontFamily": "Mukta Malar, sans-serif", + "slug": "mukta-malar", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/muktamalar/v12/MCoKzAXyz8LOE2FpJMxZqIMwBtAB62ruoAZW.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Mukta Malar" + }, + { + "src": "http://fonts.gstatic.com/s/muktamalar/v12/MCoKzAXyz8LOE2FpJMxZqINUBdAB62ruoAZW.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Mukta Malar" + }, + { + "src": "http://fonts.gstatic.com/s/muktamalar/v12/MCoXzAXyz8LOE2FpJMxZqLv4LfQJwHbn.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Mukta Malar" + }, + { + "src": "http://fonts.gstatic.com/s/muktamalar/v12/MCoKzAXyz8LOE2FpJMxZqIMMBNAB62ruoAZW.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Mukta Malar" + }, + { + "src": "http://fonts.gstatic.com/s/muktamalar/v12/MCoKzAXyz8LOE2FpJMxZqIMgA9AB62ruoAZW.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Mukta Malar" + }, + { + "src": "http://fonts.gstatic.com/s/muktamalar/v12/MCoKzAXyz8LOE2FpJMxZqINEAtAB62ruoAZW.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Mukta Malar" + }, + { + "src": "http://fonts.gstatic.com/s/muktamalar/v12/MCoKzAXyz8LOE2FpJMxZqINYAdAB62ruoAZW.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Mukta Malar" + } + ] + }, + { + "name": "Mukta Vaani", + "fontFamily": "Mukta Vaani, sans-serif", + "slug": "mukta-vaani", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/muktavaani/v13/3JnkSD_-ynaxmxnEfVHPIGXNV8BD-u97MW1a.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Mukta Vaani" + }, + { + "src": "http://fonts.gstatic.com/s/muktavaani/v13/3JnkSD_-ynaxmxnEfVHPIGWpVMBD-u97MW1a.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Mukta Vaani" + }, + { + "src": "http://fonts.gstatic.com/s/muktavaani/v13/3Jn5SD_-ynaxmxnEfVHPIF0FfORL0fNy.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Mukta Vaani" + }, + { + "src": "http://fonts.gstatic.com/s/muktavaani/v13/3JnkSD_-ynaxmxnEfVHPIGXxVcBD-u97MW1a.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Mukta Vaani" + }, + { + "src": "http://fonts.gstatic.com/s/muktavaani/v13/3JnkSD_-ynaxmxnEfVHPIGXdUsBD-u97MW1a.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Mukta Vaani" + }, + { + "src": "http://fonts.gstatic.com/s/muktavaani/v13/3JnkSD_-ynaxmxnEfVHPIGW5U8BD-u97MW1a.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Mukta Vaani" + }, + { + "src": "http://fonts.gstatic.com/s/muktavaani/v13/3JnkSD_-ynaxmxnEfVHPIGWlUMBD-u97MW1a.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Mukta Vaani" + } + ] + }, + { + "name": "Mulish", + "fontFamily": "Mulish, sans-serif", + "slug": "mulish", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mulish/v12/1Ptyg83HX_SGhgqO0yLcmjzUAuWexRNRwaClGrw-PTY.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Mulish" + }, + { + "src": "http://fonts.gstatic.com/s/mulish/v12/1Ptyg83HX_SGhgqO0yLcmjzUAuWexc1RwaClGrw-PTY.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Mulish" + }, + { + "src": "http://fonts.gstatic.com/s/mulish/v12/1Ptyg83HX_SGhgqO0yLcmjzUAuWexZNRwaClGrw-PTY.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Mulish" + }, + { + "src": "http://fonts.gstatic.com/s/mulish/v12/1Ptyg83HX_SGhgqO0yLcmjzUAuWexaFRwaClGrw-PTY.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Mulish" + }, + { + "src": "http://fonts.gstatic.com/s/mulish/v12/1Ptyg83HX_SGhgqO0yLcmjzUAuWexU1WwaClGrw-PTY.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Mulish" + }, + { + "src": "http://fonts.gstatic.com/s/mulish/v12/1Ptyg83HX_SGhgqO0yLcmjzUAuWexXRWwaClGrw-PTY.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Mulish" + }, + { + "src": "http://fonts.gstatic.com/s/mulish/v12/1Ptyg83HX_SGhgqO0yLcmjzUAuWexRNWwaClGrw-PTY.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Mulish" + }, + { + "src": "http://fonts.gstatic.com/s/mulish/v12/1Ptyg83HX_SGhgqO0yLcmjzUAuWexTpWwaClGrw-PTY.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Mulish" + }, + { + "src": "http://fonts.gstatic.com/s/mulish/v12/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSqeOvHp47LTZFwA.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Mulish" + }, + { + "src": "http://fonts.gstatic.com/s/mulish/v12/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSd-OvHp47LTZFwA.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Mulish" + }, + { + "src": "http://fonts.gstatic.com/s/mulish/v12/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSKeOvHp47LTZFwA.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Mulish" + }, + { + "src": "http://fonts.gstatic.com/s/mulish/v12/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSG-OvHp47LTZFwA.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Mulish" + }, + { + "src": "http://fonts.gstatic.com/s/mulish/v12/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsS9-SvHp47LTZFwA.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Mulish" + }, + { + "src": "http://fonts.gstatic.com/s/mulish/v12/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSzuSvHp47LTZFwA.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Mulish" + }, + { + "src": "http://fonts.gstatic.com/s/mulish/v12/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSqeSvHp47LTZFwA.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Mulish" + }, + { + "src": "http://fonts.gstatic.com/s/mulish/v12/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSgOSvHp47LTZFwA.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Mulish" + } + ] + }, + { + "name": "Murecho", + "fontFamily": "Murecho, sans-serif", + "slug": "murecho", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/murecho/v10/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMpr5HWZLCpUOaM6.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Murecho" + }, + { + "src": "http://fonts.gstatic.com/s/murecho/v10/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMrr5XWZLCpUOaM6.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Murecho" + }, + { + "src": "http://fonts.gstatic.com/s/murecho/v10/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMo15XWZLCpUOaM6.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Murecho" + }, + { + "src": "http://fonts.gstatic.com/s/murecho/v10/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMpr5XWZLCpUOaM6.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Murecho" + }, + { + "src": "http://fonts.gstatic.com/s/murecho/v10/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMpZ5XWZLCpUOaM6.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Murecho" + }, + { + "src": "http://fonts.gstatic.com/s/murecho/v10/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMq14nWZLCpUOaM6.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Murecho" + }, + { + "src": "http://fonts.gstatic.com/s/murecho/v10/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMqM4nWZLCpUOaM6.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Murecho" + }, + { + "src": "http://fonts.gstatic.com/s/murecho/v10/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMrr4nWZLCpUOaM6.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Murecho" + }, + { + "src": "http://fonts.gstatic.com/s/murecho/v10/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMrC4nWZLCpUOaM6.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Murecho" + } + ] + }, + { + "name": "MuseoModerno", + "fontFamily": "MuseoModerno, system-ui", + "slug": "museomoderno", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMlZFuewajeKlCdo.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "MuseoModerno" + }, + { + "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMtZEuewajeKlCdo.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "MuseoModerno" + }, + { + "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMghEuewajeKlCdo.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "MuseoModerno" + }, + { + "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMlZEuewajeKlCdo.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "MuseoModerno" + }, + { + "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMmREuewajeKlCdo.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "MuseoModerno" + }, + { + "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMohDuewajeKlCdo.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "MuseoModerno" + }, + { + "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMrFDuewajeKlCdo.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "MuseoModerno" + }, + { + "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMtZDuewajeKlCdo.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "MuseoModerno" + }, + { + "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMv9DuewajeKlCdo.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "MuseoModerno" + }, + { + "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54HUa4QicCgGdrS3g.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "MuseoModerno" + }, + { + "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54H0a8QicCgGdrS3g.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "MuseoModerno" + }, + { + "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54HD68QicCgGdrS3g.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "MuseoModerno" + }, + { + "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54HUa8QicCgGdrS3g.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "MuseoModerno" + }, + { + "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54HY68QicCgGdrS3g.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "MuseoModerno" + }, + { + "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54Hj6gQicCgGdrS3g.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "MuseoModerno" + }, + { + "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54HtqgQicCgGdrS3g.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "MuseoModerno" + }, + { + "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54H0agQicCgGdrS3g.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "MuseoModerno" + }, + { + "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54H-KgQicCgGdrS3g.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "MuseoModerno" + } + ] + }, + { + "name": "My Soul", + "fontFamily": "My Soul, cursive", + "slug": "my-soul", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mysoul/v2/3XFqErcuy945_u6KF_Ulk2nnXf0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "My Soul" + } + ] + }, + { + "name": "Mynerve", + "fontFamily": "Mynerve, cursive", + "slug": "mynerve", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mynerve/v2/P5sCzZKPdNjb4jt7xCRuiZ-uydg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Mynerve" + } + ] + }, + { + "name": "Mystery Quest", + "fontFamily": "Mystery Quest, system-ui", + "slug": "mystery-quest", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/mysteryquest/v20/-nF6OG414u0E6k0wynSGlujRHwElD_9Qz9E.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Mystery Quest" + } + ] + }, + { + "name": "NTR", + "fontFamily": "NTR, sans-serif", + "slug": "ntr", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ntr/v15/RLpzK5Xy0ZjiGGhs5TA4bg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "NTR" + } + ] + }, + { + "name": "Nabla", + "fontFamily": "Nabla, system-ui", + "slug": "nabla", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/nabla/v10/j8_D6-LI0Lvpe7Makz5UhJt9C3uqg_X_75gyGS4jAxsNIjrRNRBUFFR_198.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Nabla" + } + ] + }, + { + "name": "Nanum Brush Script", + "fontFamily": "Nanum Brush Script, cursive", + "slug": "nanum-brush-script", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/nanumbrushscript/v22/wXK2E2wfpokopxzthSqPbcR5_gVaxazyjqBr1lO97Q.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Nanum Brush Script" + } + ] + }, + { + "name": "Nanum Gothic", + "fontFamily": "Nanum Gothic, sans-serif", + "slug": "nanum-gothic", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/nanumgothic/v21/PN_3Rfi-oW3hYwmKDpxS7F_z_tLfxno73g.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Nanum Gothic" + }, + { + "src": "http://fonts.gstatic.com/s/nanumgothic/v21/PN_oRfi-oW3hYwmKDpxS7F_LQv37zlEn14YEUQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Nanum Gothic" + }, + { + "src": "http://fonts.gstatic.com/s/nanumgothic/v21/PN_oRfi-oW3hYwmKDpxS7F_LXv77zlEn14YEUQ.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Nanum Gothic" + } + ] + }, + { + "name": "Nanum Gothic Coding", + "fontFamily": "Nanum Gothic Coding, monospace", + "slug": "nanum-gothic-coding", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/nanumgothiccoding/v19/8QIVdjzHisX_8vv59_xMxtPFW4IXROwsy6QxVs1X7tc.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Nanum Gothic Coding" + }, + { + "src": "http://fonts.gstatic.com/s/nanumgothiccoding/v19/8QIYdjzHisX_8vv59_xMxtPFW4IXROws8xgecsV88t5V9r4.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Nanum Gothic Coding" + } + ] + }, + { + "name": "Nanum Myeongjo", + "fontFamily": "Nanum Myeongjo, serif", + "slug": "nanum-myeongjo", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/nanummyeongjo/v20/9Btx3DZF0dXLMZlywRbVRNhxy1LreHQ8juyl.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Nanum Myeongjo" + }, + { + "src": "http://fonts.gstatic.com/s/nanummyeongjo/v20/9Bty3DZF0dXLMZlywRbVRNhxy2pXV1A0pfCs5Kos.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Nanum Myeongjo" + }, + { + "src": "http://fonts.gstatic.com/s/nanummyeongjo/v20/9Bty3DZF0dXLMZlywRbVRNhxy2pLVFA0pfCs5Kos.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Nanum Myeongjo" + } + ] + }, + { + "name": "Nanum Pen Script", + "fontFamily": "Nanum Pen Script, cursive", + "slug": "nanum-pen-script", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/nanumpenscript/v19/daaDSSYiLGqEal3MvdA_FOL_3FkN2z7-aMFCcTU.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Nanum Pen Script" + } + ] + }, + { + "name": "Neonderthaw", + "fontFamily": "Neonderthaw, cursive", + "slug": "neonderthaw", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/neonderthaw/v3/Iure6Yx5-oWVZI0r-17AeZZJprVA4XQ0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Neonderthaw" + } + ] + }, + { + "name": "Nerko One", + "fontFamily": "Nerko One, cursive", + "slug": "nerko-one", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/nerkoone/v16/m8JQjfZSc7OXlB3ZMOjzcJ5BZmqa3A.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Nerko One" + } + ] + }, + { + "name": "Neucha", + "fontFamily": "Neucha, cursive", + "slug": "neucha", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/neucha/v17/q5uGsou0JOdh94bvugNsCxVEgA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Neucha" + } + ] + }, + { + "name": "Neuton", + "fontFamily": "Neuton, serif", + "slug": "neuton", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/neuton/v19/UMBQrPtMoH62xUZKAKkfegD5Drog6Q.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Neuton" + }, + { + "src": "http://fonts.gstatic.com/s/neuton/v19/UMBQrPtMoH62xUZKZKofegD5Drog6Q.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Neuton" + }, + { + "src": "http://fonts.gstatic.com/s/neuton/v19/UMBTrPtMoH62xUZyyII7civlBw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Neuton" + }, + { + "src": "http://fonts.gstatic.com/s/neuton/v19/UMBRrPtMoH62xUZCyog_UC71B6M5.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Neuton" + }, + { + "src": "http://fonts.gstatic.com/s/neuton/v19/UMBQrPtMoH62xUZKdK0fegD5Drog6Q.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Neuton" + }, + { + "src": "http://fonts.gstatic.com/s/neuton/v19/UMBQrPtMoH62xUZKaK4fegD5Drog6Q.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Neuton" + } + ] + }, + { + "name": "New Rocker", + "fontFamily": "New Rocker, system-ui", + "slug": "new-rocker", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/newrocker/v16/MwQzbhjp3-HImzcCU_cJkGMViblPtXs.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "New Rocker" + } + ] + }, + { + "name": "New Tegomin", + "fontFamily": "New Tegomin, serif", + "slug": "new-tegomin", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/newtegomin/v10/SLXMc1fV7Gd9USdBAfPlqfN0Q3ptkDMN.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "New Tegomin" + } + ] + }, + { + "name": "News Cycle", + "fontFamily": "News Cycle, sans-serif", + "slug": "news-cycle", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/newscycle/v23/CSR64z1Qlv-GDxkbKVQ_TOcATNt_pOU.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "News Cycle" + }, + { + "src": "http://fonts.gstatic.com/s/newscycle/v23/CSR54z1Qlv-GDxkbKVQ_dFsvaNNUuOwkC2s.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "News Cycle" + } + ] + }, + { + "name": "Newsreader", + "fontFamily": "Newsreader, serif", + "slug": "newsreader", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/newsreader/v19/cY9qfjOCX1hbuyalUrK49dLac06G1ZGsZBtoBCzBDXXD9JVF438w-I_ADOxEPjCggA.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Newsreader" + }, + { + "src": "http://fonts.gstatic.com/s/newsreader/v19/cY9qfjOCX1hbuyalUrK49dLac06G1ZGsZBtoBCzBDXXD9JVF438wJo_ADOxEPjCggA.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Newsreader" + }, + { + "src": "http://fonts.gstatic.com/s/newsreader/v19/cY9qfjOCX1hbuyalUrK49dLac06G1ZGsZBtoBCzBDXXD9JVF438weI_ADOxEPjCggA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Newsreader" + }, + { + "src": "http://fonts.gstatic.com/s/newsreader/v19/cY9qfjOCX1hbuyalUrK49dLac06G1ZGsZBtoBCzBDXXD9JVF438wSo_ADOxEPjCggA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Newsreader" + }, + { + "src": "http://fonts.gstatic.com/s/newsreader/v19/cY9qfjOCX1hbuyalUrK49dLac06G1ZGsZBtoBCzBDXXD9JVF438wpojADOxEPjCggA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Newsreader" + }, + { + "src": "http://fonts.gstatic.com/s/newsreader/v19/cY9qfjOCX1hbuyalUrK49dLac06G1ZGsZBtoBCzBDXXD9JVF438wn4jADOxEPjCggA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Newsreader" + }, + { + "src": "http://fonts.gstatic.com/s/newsreader/v19/cY9qfjOCX1hbuyalUrK49dLac06G1ZGsZBtoBCzBDXXD9JVF438w-IjADOxEPjCggA.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Newsreader" + }, + { + "src": "http://fonts.gstatic.com/s/newsreader/v19/cY9kfjOCX1hbuyalUrK439vogqC9yFZCYg7oRZaLP4obnf7fTXglsMyoT-ZAHDWwgECi.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Newsreader" + }, + { + "src": "http://fonts.gstatic.com/s/newsreader/v19/cY9kfjOCX1hbuyalUrK439vogqC9yFZCYg7oRZaLP4obnf7fTXglsMx2T-ZAHDWwgECi.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Newsreader" + }, + { + "src": "http://fonts.gstatic.com/s/newsreader/v19/cY9kfjOCX1hbuyalUrK439vogqC9yFZCYg7oRZaLP4obnf7fTXglsMwoT-ZAHDWwgECi.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Newsreader" + }, + { + "src": "http://fonts.gstatic.com/s/newsreader/v19/cY9kfjOCX1hbuyalUrK439vogqC9yFZCYg7oRZaLP4obnf7fTXglsMwaT-ZAHDWwgECi.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Newsreader" + }, + { + "src": "http://fonts.gstatic.com/s/newsreader/v19/cY9kfjOCX1hbuyalUrK439vogqC9yFZCYg7oRZaLP4obnf7fTXglsMz2SOZAHDWwgECi.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Newsreader" + }, + { + "src": "http://fonts.gstatic.com/s/newsreader/v19/cY9kfjOCX1hbuyalUrK439vogqC9yFZCYg7oRZaLP4obnf7fTXglsMzPSOZAHDWwgECi.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Newsreader" + }, + { + "src": "http://fonts.gstatic.com/s/newsreader/v19/cY9kfjOCX1hbuyalUrK439vogqC9yFZCYg7oRZaLP4obnf7fTXglsMyoSOZAHDWwgECi.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Newsreader" + } + ] + }, + { + "name": "Niconne", + "fontFamily": "Niconne, cursive", + "slug": "niconne", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/niconne/v15/w8gaH2QvRug1_rTfrQut2F4OuOo.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Niconne" + } + ] + }, + { + "name": "Niramit", + "fontFamily": "Niramit, sans-serif", + "slug": "niramit", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/niramit/v10/I_urMpWdvgLdNxVLVXx7tiiEr5_BdZ8.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Niramit" + }, + { + "src": "http://fonts.gstatic.com/s/niramit/v10/I_upMpWdvgLdNxVLXbZiXimOq73EZZ_f6w.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Niramit" + }, + { + "src": "http://fonts.gstatic.com/s/niramit/v10/I_urMpWdvgLdNxVLVRh4tiiEr5_BdZ8.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Niramit" + }, + { + "src": "http://fonts.gstatic.com/s/niramit/v10/I_upMpWdvgLdNxVLXbZiOiqOq73EZZ_f6w.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Niramit" + }, + { + "src": "http://fonts.gstatic.com/s/niramit/v10/I_uuMpWdvgLdNxVLbbRQkiCvs5Y.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Niramit" + }, + { + "src": "http://fonts.gstatic.com/s/niramit/v10/I_usMpWdvgLdNxVLXbZalgKqo5bYbA.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Niramit" + }, + { + "src": "http://fonts.gstatic.com/s/niramit/v10/I_urMpWdvgLdNxVLVUB5tiiEr5_BdZ8.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Niramit" + }, + { + "src": "http://fonts.gstatic.com/s/niramit/v10/I_upMpWdvgLdNxVLXbZiYiuOq73EZZ_f6w.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Niramit" + }, + { + "src": "http://fonts.gstatic.com/s/niramit/v10/I_urMpWdvgLdNxVLVWx-tiiEr5_BdZ8.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Niramit" + }, + { + "src": "http://fonts.gstatic.com/s/niramit/v10/I_upMpWdvgLdNxVLXbZiTiyOq73EZZ_f6w.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Niramit" + }, + { + "src": "http://fonts.gstatic.com/s/niramit/v10/I_urMpWdvgLdNxVLVQh_tiiEr5_BdZ8.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Niramit" + }, + { + "src": "http://fonts.gstatic.com/s/niramit/v10/I_upMpWdvgLdNxVLXbZiKi2Oq73EZZ_f6w.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Niramit" + } + ] + }, + { + "name": "Nixie One", + "fontFamily": "Nixie One, system-ui", + "slug": "nixie-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/nixieone/v16/lW-8wjkKLXjg5y2o2uUoUOFzpS-yLw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Nixie One" + } + ] + }, + { + "name": "Nobile", + "fontFamily": "Nobile, sans-serif", + "slug": "nobile", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/nobile/v17/m8JTjflSeaOVl1i2XqfXeLVdbw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Nobile" + }, + { + "src": "http://fonts.gstatic.com/s/nobile/v17/m8JRjflSeaOVl1iGXK3TWrBNb3OD.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Nobile" + }, + { + "src": "http://fonts.gstatic.com/s/nobile/v17/m8JQjflSeaOVl1iOqo7zcJ5BZmqa3A.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Nobile" + }, + { + "src": "http://fonts.gstatic.com/s/nobile/v17/m8JWjflSeaOVl1iGXJUnc5RFRG-K3Mud.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Nobile" + }, + { + "src": "http://fonts.gstatic.com/s/nobile/v17/m8JQjflSeaOVl1iO4ojzcJ5BZmqa3A.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Nobile" + }, + { + "src": "http://fonts.gstatic.com/s/nobile/v17/m8JWjflSeaOVl1iGXJVvdZRFRG-K3Mud.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Nobile" + } + ] + }, + { + "name": "Nokora", + "fontFamily": "Nokora, sans-serif", + "slug": "nokora", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/nokora/v30/~CgoKBk5va29yYRhkIAAqBAgBGAE=.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Nokora" + }, + { + "src": "http://fonts.gstatic.com/s/nokora/v30/~CgsKBk5va29yYRisAiAAKgQIARgB.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Nokora" + }, + { + "src": "http://fonts.gstatic.com/s/nokora/v30/~CggKBk5va29yYSAAKgQIARgB.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Nokora" + }, + { + "src": "http://fonts.gstatic.com/s/nokora/v30/~CgsKBk5va29yYRi8BSAAKgQIARgB.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Nokora" + }, + { + "src": "http://fonts.gstatic.com/s/nokora/v30/~CgsKBk5va29yYRiEByAAKgQIARgB.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Nokora" + } + ] + }, + { + "name": "Norican", + "fontFamily": "Norican, cursive", + "slug": "norican", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/norican/v14/MwQ2bhXp1eSBqjkPGJJRtGs-lbA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Norican" + } + ] + }, + { + "name": "Nosifer", + "fontFamily": "Nosifer, system-ui", + "slug": "nosifer", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/nosifer/v20/ZGjXol5JTp0g5bxZaC1RVDNdGDs.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Nosifer" + } + ] + }, + { + "name": "Notable", + "fontFamily": "Notable, sans-serif", + "slug": "notable", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notable/v14/gNMEW3N_SIqx-WX9-HMoFIez5MI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Notable" + } + ] + }, + { + "name": "Nothing You Could Do", + "fontFamily": "Nothing You Could Do, cursive", + "slug": "nothing-you-could-do", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/nothingyoucoulddo/v15/oY1B8fbBpaP5OX3DtrRYf_Q2BPB1SnfZb0OJl1ol2Ymo.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Nothing You Could Do" + } + ] + }, + { + "name": "Noticia Text", + "fontFamily": "Noticia Text, serif", + "slug": "noticia-text", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/noticiatext/v15/VuJ2dNDF2Yv9qppOePKYRP1GYTFZt0rNpQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noticia Text" + }, + { + "src": "http://fonts.gstatic.com/s/noticiatext/v15/VuJodNDF2Yv9qppOePKYRP12YztdlU_dpSjt.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Noticia Text" + }, + { + "src": "http://fonts.gstatic.com/s/noticiatext/v15/VuJpdNDF2Yv9qppOePKYRP1-3R59v2HRrDH0eA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noticia Text" + }, + { + "src": "http://fonts.gstatic.com/s/noticiatext/v15/VuJrdNDF2Yv9qppOePKYRP12YwPhumvVjjTkeMnz.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Noticia Text" + } + ] + }, + { + "name": "Noto Color Emoji", + "fontFamily": "Noto Color Emoji, sans-serif", + "slug": "noto-color-emoji", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notocoloremoji/v25/Yq6P-KqIXTD0t4D9z1ESnKM3-HpFab5s79iz64w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Color Emoji" + } + ] + }, + { + "name": "Noto Emoji", + "fontFamily": "Noto Emoji, sans-serif", + "slug": "noto-emoji", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoemoji/v39/bMrnmSyK7YY-MEu6aWjPDs-ar6uWaGWuob_10jwvS-FGJCMY.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Emoji" + }, + { + "src": "http://fonts.gstatic.com/s/notoemoji/v39/bMrnmSyK7YY-MEu6aWjPDs-ar6uWaGWuob-r0jwvS-FGJCMY.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Emoji" + }, + { + "src": "http://fonts.gstatic.com/s/notoemoji/v39/bMrnmSyK7YY-MEu6aWjPDs-ar6uWaGWuob-Z0jwvS-FGJCMY.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Emoji" + }, + { + "src": "http://fonts.gstatic.com/s/notoemoji/v39/bMrnmSyK7YY-MEu6aWjPDs-ar6uWaGWuob911TwvS-FGJCMY.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Emoji" + }, + { + "src": "http://fonts.gstatic.com/s/notoemoji/v39/bMrnmSyK7YY-MEu6aWjPDs-ar6uWaGWuob9M1TwvS-FGJCMY.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Emoji" + } + ] + }, + { + "name": "Noto Kufi Arabic", + "fontFamily": "Noto Kufi Arabic, sans-serif", + "slug": "noto-kufi-arabic", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notokufiarabic/v16/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh5v3obPnLSmf5yD.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Kufi Arabic" + }, + { + "src": "http://fonts.gstatic.com/s/notokufiarabic/v16/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh7v34bPnLSmf5yD.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Kufi Arabic" + }, + { + "src": "http://fonts.gstatic.com/s/notokufiarabic/v16/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh4x34bPnLSmf5yD.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Kufi Arabic" + }, + { + "src": "http://fonts.gstatic.com/s/notokufiarabic/v16/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh5v34bPnLSmf5yD.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Kufi Arabic" + }, + { + "src": "http://fonts.gstatic.com/s/notokufiarabic/v16/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh5d34bPnLSmf5yD.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Kufi Arabic" + }, + { + "src": "http://fonts.gstatic.com/s/notokufiarabic/v16/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh6x2IbPnLSmf5yD.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Kufi Arabic" + }, + { + "src": "http://fonts.gstatic.com/s/notokufiarabic/v16/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh6I2IbPnLSmf5yD.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Kufi Arabic" + }, + { + "src": "http://fonts.gstatic.com/s/notokufiarabic/v16/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh7v2IbPnLSmf5yD.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Kufi Arabic" + }, + { + "src": "http://fonts.gstatic.com/s/notokufiarabic/v16/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh7G2IbPnLSmf5yD.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Kufi Arabic" + } + ] + }, + { + "name": "Noto Music", + "fontFamily": "Noto Music, sans-serif", + "slug": "noto-music", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notomusic/v17/pe0rMIiSN5pO63htf1sxIteQB9Zra1U.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Music" + } + ] + }, + { + "name": "Noto Naskh Arabic", + "fontFamily": "Noto Naskh Arabic, serif", + "slug": "noto-naskh-arabic", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notonaskharabic/v33/RrQ5bpV-9Dd1b1OAGA6M9PkyDuVBePeKNaxcsss0Y7bwvc5krK0z9_Mnuw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Naskh Arabic" + }, + { + "src": "http://fonts.gstatic.com/s/notonaskharabic/v33/RrQ5bpV-9Dd1b1OAGA6M9PkyDuVBePeKNaxcsss0Y7bwj85krK0z9_Mnuw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Naskh Arabic" + }, + { + "src": "http://fonts.gstatic.com/s/notonaskharabic/v33/RrQ5bpV-9Dd1b1OAGA6M9PkyDuVBePeKNaxcsss0Y7bwY8lkrK0z9_Mnuw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Naskh Arabic" + }, + { + "src": "http://fonts.gstatic.com/s/notonaskharabic/v33/RrQ5bpV-9Dd1b1OAGA6M9PkyDuVBePeKNaxcsss0Y7bwWslkrK0z9_Mnuw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Naskh Arabic" + } + ] + }, + { + "name": "Noto Nastaliq Urdu", + "fontFamily": "Noto Nastaliq Urdu, serif", + "slug": "noto-nastaliq-urdu", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notonastaliqurdu/v20/LhWNMUPbN-oZdNFcBy1-DJYsEoTq5pudQ9L940pGPkB3Qt_-DK2f2-_8mEw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Nastaliq Urdu" + }, + { + "src": "http://fonts.gstatic.com/s/notonastaliqurdu/v20/LhWNMUPbN-oZdNFcBy1-DJYsEoTq5pudQ9L940pGPkB3Qu3-DK2f2-_8mEw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Nastaliq Urdu" + }, + { + "src": "http://fonts.gstatic.com/s/notonastaliqurdu/v20/LhWNMUPbN-oZdNFcBy1-DJYsEoTq5pudQ9L940pGPkB3QgH5DK2f2-_8mEw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Nastaliq Urdu" + }, + { + "src": "http://fonts.gstatic.com/s/notonastaliqurdu/v20/LhWNMUPbN-oZdNFcBy1-DJYsEoTq5pudQ9L940pGPkB3Qjj5DK2f2-_8mEw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Nastaliq Urdu" + } + ] + }, + { + "name": "Noto Rashi Hebrew", + "fontFamily": "Noto Rashi Hebrew, serif", + "slug": "noto-rashi-hebrew", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notorashihebrew/v25/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZB-DkRyq6Nf2pfA.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Rashi Hebrew" + }, + { + "src": "http://fonts.gstatic.com/s/notorashihebrew/v25/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZh-HkRyq6Nf2pfA.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Rashi Hebrew" + }, + { + "src": "http://fonts.gstatic.com/s/notorashihebrew/v25/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZWeHkRyq6Nf2pfA.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Rashi Hebrew" + }, + { + "src": "http://fonts.gstatic.com/s/notorashihebrew/v25/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZB-HkRyq6Nf2pfA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Rashi Hebrew" + }, + { + "src": "http://fonts.gstatic.com/s/notorashihebrew/v25/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZNeHkRyq6Nf2pfA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Rashi Hebrew" + }, + { + "src": "http://fonts.gstatic.com/s/notorashihebrew/v25/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZ2ebkRyq6Nf2pfA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Rashi Hebrew" + }, + { + "src": "http://fonts.gstatic.com/s/notorashihebrew/v25/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZ4ObkRyq6Nf2pfA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Rashi Hebrew" + }, + { + "src": "http://fonts.gstatic.com/s/notorashihebrew/v25/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZh-bkRyq6Nf2pfA.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Rashi Hebrew" + }, + { + "src": "http://fonts.gstatic.com/s/notorashihebrew/v25/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZrubkRyq6Nf2pfA.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Rashi Hebrew" + } + ] + }, + { + "name": "Noto Sans", + "fontFamily": "Noto Sans, sans-serif", + "slug": "noto-sans", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosans/v28/o-0OIpQlx3QUlC5A4PNjhjRFSfiM7HBj.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans" + }, + { + "src": "http://fonts.gstatic.com/s/notosans/v28/o-0MIpQlx3QUlC5A4PNr4AwhQ_yu6WBjJLE.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Noto Sans" + }, + { + "src": "http://fonts.gstatic.com/s/notosans/v28/o-0NIpQlx3QUlC5A4PNjKhVlY9aA5Wl6PQ.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Sans" + }, + { + "src": "http://fonts.gstatic.com/s/notosans/v28/o-0TIpQlx3QUlC5A4PNr4AyNYtyEx2xqPaif.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Noto Sans" + }, + { + "src": "http://fonts.gstatic.com/s/notosans/v28/o-0NIpQlx3QUlC5A4PNjThZlY9aA5Wl6PQ.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans" + }, + { + "src": "http://fonts.gstatic.com/s/notosans/v28/o-0TIpQlx3QUlC5A4PNr4AzpYdyEx2xqPaif.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Noto Sans" + }, + { + "src": "http://fonts.gstatic.com/s/notosans/v28/o-0IIpQlx3QUlC5A4PNb4j5Ba_2c7A.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans" + }, + { + "src": "http://fonts.gstatic.com/s/notosans/v28/o-0OIpQlx3QUlC5A4PNr4DRFSfiM7HBj.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Noto Sans" + }, + { + "src": "http://fonts.gstatic.com/s/notosans/v28/o-0NIpQlx3QUlC5A4PNjFhdlY9aA5Wl6PQ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans" + }, + { + "src": "http://fonts.gstatic.com/s/notosans/v28/o-0TIpQlx3QUlC5A4PNr4AyxYNyEx2xqPaif.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Noto Sans" + }, + { + "src": "http://fonts.gstatic.com/s/notosans/v28/o-0NIpQlx3QUlC5A4PNjOhBlY9aA5Wl6PQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans" + }, + { + "src": "http://fonts.gstatic.com/s/notosans/v28/o-0TIpQlx3QUlC5A4PNr4AydZ9yEx2xqPaif.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Noto Sans" + }, + { + "src": "http://fonts.gstatic.com/s/notosans/v28/o-0NIpQlx3QUlC5A4PNjXhFlY9aA5Wl6PQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans" + }, + { + "src": "http://fonts.gstatic.com/s/notosans/v28/o-0TIpQlx3QUlC5A4PNr4Az5ZtyEx2xqPaif.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Noto Sans" + }, + { + "src": "http://fonts.gstatic.com/s/notosans/v28/o-0NIpQlx3QUlC5A4PNjQhJlY9aA5Wl6PQ.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Sans" + }, + { + "src": "http://fonts.gstatic.com/s/notosans/v28/o-0TIpQlx3QUlC5A4PNr4AzlZdyEx2xqPaif.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Noto Sans" + }, + { + "src": "http://fonts.gstatic.com/s/notosans/v28/o-0NIpQlx3QUlC5A4PNjZhNlY9aA5Wl6PQ.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans" + }, + { + "src": "http://fonts.gstatic.com/s/notosans/v28/o-0TIpQlx3QUlC5A4PNr4AzBZNyEx2xqPaif.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Noto Sans" + } + ] + }, + { + "name": "Noto Sans Adlam", + "fontFamily": "Noto Sans Adlam, sans-serif", + "slug": "noto-sans-adlam", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansadlam/v21/neIczCCpqp0s5pPusPamd81eMfjPonvqdbYxxpgufnv0TGnBZLwhuvk.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Adlam" + }, + { + "src": "http://fonts.gstatic.com/s/notosansadlam/v21/neIczCCpqp0s5pPusPamd81eMfjPonvqdbYxxpgufkn0TGnBZLwhuvk.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Adlam" + }, + { + "src": "http://fonts.gstatic.com/s/notosansadlam/v21/neIczCCpqp0s5pPusPamd81eMfjPonvqdbYxxpgufqXzTGnBZLwhuvk.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Adlam" + }, + { + "src": "http://fonts.gstatic.com/s/notosansadlam/v21/neIczCCpqp0s5pPusPamd81eMfjPonvqdbYxxpgufpzzTGnBZLwhuvk.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Adlam" + } + ] + }, + { + "name": "Noto Sans Adlam Unjoined", + "fontFamily": "Noto Sans Adlam Unjoined, sans-serif", + "slug": "noto-sans-adlam-unjoined", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansadlamunjoined/v25/P5sszY2MYsLRsB5_ildkzPPDsLQXcOEmaFOqOGcaYrzFTIjsPam_Ye35PMEe-E3slUg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Adlam Unjoined" + }, + { + "src": "http://fonts.gstatic.com/s/notosansadlamunjoined/v25/P5sszY2MYsLRsB5_ildkzPPDsLQXcOEmaFOqOGcaYrzFTIjsPam_Yd_5PMEe-E3slUg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Adlam Unjoined" + }, + { + "src": "http://fonts.gstatic.com/s/notosansadlamunjoined/v25/P5sszY2MYsLRsB5_ildkzPPDsLQXcOEmaFOqOGcaYrzFTIjsPam_YTP-PMEe-E3slUg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Adlam Unjoined" + }, + { + "src": "http://fonts.gstatic.com/s/notosansadlamunjoined/v25/P5sszY2MYsLRsB5_ildkzPPDsLQXcOEmaFOqOGcaYrzFTIjsPam_YQr-PMEe-E3slUg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Adlam Unjoined" + } + ] + }, + { + "name": "Noto Sans Anatolian Hieroglyphs", + "fontFamily": "Noto Sans Anatolian Hieroglyphs, sans-serif", + "slug": "noto-sans-anatolian-hieroglyphs", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansanatolianhieroglyphs/v14/ijw9s4roRME5LLRxjsRb8A0gKPSWq4BbDmHHu6j2pEtUJzZWXybIymc5QYo.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Anatolian Hieroglyphs" + } + ] + }, + { + "name": "Noto Sans Arabic", + "fontFamily": "Noto Sans Arabic, sans-serif", + "slug": "noto-sans-arabic", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansarabic/v18/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCfyG2vu3CBFQLaig.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans Arabic" + }, + { + "src": "http://fonts.gstatic.com/s/notosansarabic/v18/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCfSGyvu3CBFQLaig.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Sans Arabic" + }, + { + "src": "http://fonts.gstatic.com/s/notosansarabic/v18/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCflmyvu3CBFQLaig.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans Arabic" + }, + { + "src": "http://fonts.gstatic.com/s/notosansarabic/v18/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCfyGyvu3CBFQLaig.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Arabic" + }, + { + "src": "http://fonts.gstatic.com/s/notosansarabic/v18/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCf-myvu3CBFQLaig.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Arabic" + }, + { + "src": "http://fonts.gstatic.com/s/notosansarabic/v18/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCfFmuvu3CBFQLaig.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Arabic" + }, + { + "src": "http://fonts.gstatic.com/s/notosansarabic/v18/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCfL2uvu3CBFQLaig.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Arabic" + }, + { + "src": "http://fonts.gstatic.com/s/notosansarabic/v18/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCfSGuvu3CBFQLaig.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Sans Arabic" + }, + { + "src": "http://fonts.gstatic.com/s/notosansarabic/v18/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCfYWuvu3CBFQLaig.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans Arabic" + } + ] + }, + { + "name": "Noto Sans Armenian", + "fontFamily": "Noto Sans Armenian, sans-serif", + "slug": "noto-sans-armenian", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansarmenian/v42/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLorxbq0iYy6zF3Eg.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans Armenian" + }, + { + "src": "http://fonts.gstatic.com/s/notosansarmenian/v42/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLopxb60iYy6zF3Eg.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Sans Armenian" + }, + { + "src": "http://fonts.gstatic.com/s/notosansarmenian/v42/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLoqvb60iYy6zF3Eg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans Armenian" + }, + { + "src": "http://fonts.gstatic.com/s/notosansarmenian/v42/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLorxb60iYy6zF3Eg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Armenian" + }, + { + "src": "http://fonts.gstatic.com/s/notosansarmenian/v42/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLorDb60iYy6zF3Eg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Armenian" + }, + { + "src": "http://fonts.gstatic.com/s/notosansarmenian/v42/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLoovaK0iYy6zF3Eg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Armenian" + }, + { + "src": "http://fonts.gstatic.com/s/notosansarmenian/v42/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLooWaK0iYy6zF3Eg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Armenian" + }, + { + "src": "http://fonts.gstatic.com/s/notosansarmenian/v42/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLopxaK0iYy6zF3Eg.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Sans Armenian" + }, + { + "src": "http://fonts.gstatic.com/s/notosansarmenian/v42/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLopYaK0iYy6zF3Eg.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans Armenian" + } + ] + }, + { + "name": "Noto Sans Avestan", + "fontFamily": "Noto Sans Avestan, sans-serif", + "slug": "noto-sans-avestan", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansavestan/v20/bWti7ejKfBziStx7lIzKOLQZKhIJkyu9SASLji8U.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Avestan" + } + ] + }, + { + "name": "Noto Sans Balinese", + "fontFamily": "Noto Sans Balinese, sans-serif", + "slug": "noto-sans-balinese", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansbalinese/v24/NaPwcYvSBuhTirw6IaFn6UrRDaqje-lpbbRtYf-Fwu2Ov7fdhE5Vd222PPY.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Balinese" + }, + { + "src": "http://fonts.gstatic.com/s/notosansbalinese/v24/NaPwcYvSBuhTirw6IaFn6UrRDaqje-lpbbRtYf-Fwu2Ov4XdhE5Vd222PPY.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Balinese" + }, + { + "src": "http://fonts.gstatic.com/s/notosansbalinese/v24/NaPwcYvSBuhTirw6IaFn6UrRDaqje-lpbbRtYf-Fwu2Ov2nahE5Vd222PPY.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Balinese" + }, + { + "src": "http://fonts.gstatic.com/s/notosansbalinese/v24/NaPwcYvSBuhTirw6IaFn6UrRDaqje-lpbbRtYf-Fwu2Ov1DahE5Vd222PPY.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Balinese" + } + ] + }, + { + "name": "Noto Sans Bamum", + "fontFamily": "Noto Sans Bamum, sans-serif", + "slug": "noto-sans-bamum", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansbamum/v26/uk-0EGK3o6EruUbnwovcbBTkkklK_Ya_PBHfNGTPEddO-_gLykxEkxA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Bamum" + }, + { + "src": "http://fonts.gstatic.com/s/notosansbamum/v26/uk-0EGK3o6EruUbnwovcbBTkkklK_Ya_PBHfNGTPEeVO-_gLykxEkxA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Bamum" + }, + { + "src": "http://fonts.gstatic.com/s/notosansbamum/v26/uk-0EGK3o6EruUbnwovcbBTkkklK_Ya_PBHfNGTPEQlJ-_gLykxEkxA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Bamum" + }, + { + "src": "http://fonts.gstatic.com/s/notosansbamum/v26/uk-0EGK3o6EruUbnwovcbBTkkklK_Ya_PBHfNGTPETBJ-_gLykxEkxA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Bamum" + } + ] + }, + { + "name": "Noto Sans Bassa Vah", + "fontFamily": "Noto Sans Bassa Vah, sans-serif", + "slug": "noto-sans-bassa-vah", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansbassavah/v17/PN_bRee-r3f7LnqsD5sax12gjZn7mBpL5YwUpA2MBdcFn4MaAc6p34gH-GD7.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Bassa Vah" + }, + { + "src": "http://fonts.gstatic.com/s/notosansbassavah/v17/PN_bRee-r3f7LnqsD5sax12gjZn7mBpL5YwUpA2MBdcFn4MoAc6p34gH-GD7.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Bassa Vah" + }, + { + "src": "http://fonts.gstatic.com/s/notosansbassavah/v17/PN_bRee-r3f7LnqsD5sax12gjZn7mBpL5YwUpA2MBdcFn4PEBs6p34gH-GD7.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Bassa Vah" + }, + { + "src": "http://fonts.gstatic.com/s/notosansbassavah/v17/PN_bRee-r3f7LnqsD5sax12gjZn7mBpL5YwUpA2MBdcFn4P9Bs6p34gH-GD7.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Bassa Vah" + } + ] + }, + { + "name": "Noto Sans Batak", + "fontFamily": "Noto Sans Batak, sans-serif", + "slug": "noto-sans-batak", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansbatak/v16/gok2H6TwAEdtF9N8-mdTCQvT-Zdgo4_PHuk74A.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Batak" + } + ] + }, + { + "name": "Noto Sans Bengali", + "fontFamily": "Noto Sans Bengali, sans-serif", + "slug": "noto-sans-bengali", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansbengali/v20/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmsolKudCk8izI0lc.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans Bengali" + }, + { + "src": "http://fonts.gstatic.com/s/notosansbengali/v20/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmsglLudCk8izI0lc.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Sans Bengali" + }, + { + "src": "http://fonts.gstatic.com/s/notosansbengali/v20/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmstdLudCk8izI0lc.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans Bengali" + }, + { + "src": "http://fonts.gstatic.com/s/notosansbengali/v20/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmsolLudCk8izI0lc.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Bengali" + }, + { + "src": "http://fonts.gstatic.com/s/notosansbengali/v20/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmsrtLudCk8izI0lc.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Bengali" + }, + { + "src": "http://fonts.gstatic.com/s/notosansbengali/v20/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmsldMudCk8izI0lc.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Bengali" + }, + { + "src": "http://fonts.gstatic.com/s/notosansbengali/v20/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6Kmsm5MudCk8izI0lc.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Bengali" + }, + { + "src": "http://fonts.gstatic.com/s/notosansbengali/v20/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmsglMudCk8izI0lc.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Sans Bengali" + }, + { + "src": "http://fonts.gstatic.com/s/notosansbengali/v20/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmsiBMudCk8izI0lc.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans Bengali" + } + ] + }, + { + "name": "Noto Sans Bhaiksuki", + "fontFamily": "Noto Sans Bhaiksuki, sans-serif", + "slug": "noto-sans-bhaiksuki", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansbhaiksuki/v15/UcC63EosKniBH4iELXATsSBWdvUHXxhj8rLUdU4wh9U.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Bhaiksuki" + } + ] + }, + { + "name": "Noto Sans Brahmi", + "fontFamily": "Noto Sans Brahmi, sans-serif", + "slug": "noto-sans-brahmi", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansbrahmi/v15/vEFK2-VODB8RrNDvZSUmQQIIByV18tK1W77HtMo.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Brahmi" + } + ] + }, + { + "name": "Noto Sans Buginese", + "fontFamily": "Noto Sans Buginese, sans-serif", + "slug": "noto-sans-buginese", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansbuginese/v18/esDM30ldNv-KYGGJpKGk18phe_7Da6_gtfuEXLmNtw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Buginese" + } + ] + }, + { + "name": "Noto Sans Buhid", + "fontFamily": "Noto Sans Buhid, sans-serif", + "slug": "noto-sans-buhid", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansbuhid/v18/Dxxy8jiXMW75w3OmoDXVWJD7YwzAe6tgnaFoGA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Buhid" + } + ] + }, + { + "name": "Noto Sans Canadian Aboriginal", + "fontFamily": "Noto Sans Canadian Aboriginal, sans-serif", + "slug": "noto-sans-canadian-aboriginal", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanscanadianaboriginal/v21/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzigWLj_yAsg0q0uhQ.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans Canadian Aboriginal" + }, + { + "src": "http://fonts.gstatic.com/s/notosanscanadianaboriginal/v21/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzig2Ln_yAsg0q0uhQ.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Sans Canadian Aboriginal" + }, + { + "src": "http://fonts.gstatic.com/s/notosanscanadianaboriginal/v21/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzigBrn_yAsg0q0uhQ.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans Canadian Aboriginal" + }, + { + "src": "http://fonts.gstatic.com/s/notosanscanadianaboriginal/v21/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzigWLn_yAsg0q0uhQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Canadian Aboriginal" + }, + { + "src": "http://fonts.gstatic.com/s/notosanscanadianaboriginal/v21/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzigarn_yAsg0q0uhQ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Canadian Aboriginal" + }, + { + "src": "http://fonts.gstatic.com/s/notosanscanadianaboriginal/v21/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzighr7_yAsg0q0uhQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Canadian Aboriginal" + }, + { + "src": "http://fonts.gstatic.com/s/notosanscanadianaboriginal/v21/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzigv77_yAsg0q0uhQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Canadian Aboriginal" + }, + { + "src": "http://fonts.gstatic.com/s/notosanscanadianaboriginal/v21/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzig2L7_yAsg0q0uhQ.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Sans Canadian Aboriginal" + }, + { + "src": "http://fonts.gstatic.com/s/notosanscanadianaboriginal/v21/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzig8b7_yAsg0q0uhQ.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans Canadian Aboriginal" + } + ] + }, + { + "name": "Noto Sans Carian", + "fontFamily": "Noto Sans Carian, sans-serif", + "slug": "noto-sans-carian", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanscarian/v15/LDIpaoiONgYwA9Yc6f0gUILeMIOgs7ob9yGLmfI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Carian" + } + ] + }, + { + "name": "Noto Sans Caucasian Albanian", + "fontFamily": "Noto Sans Caucasian Albanian, sans-serif", + "slug": "noto-sans-caucasian-albanian", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanscaucasianalbanian/v16/nKKA-HM_FYFRJvXzVXaANsU0VzsAc46QGOkWytlTs-TXrYDmoVmRSZo.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Caucasian Albanian" + } + ] + }, + { + "name": "Noto Sans Chakma", + "fontFamily": "Noto Sans Chakma, sans-serif", + "slug": "noto-sans-chakma", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanschakma/v17/Y4GQYbJ8VTEp4t3MKJSMjg5OIzhi4JjTQhYBeYo.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Chakma" + } + ] + }, + { + "name": "Noto Sans Cham", + "fontFamily": "Noto Sans Cham, sans-serif", + "slug": "noto-sans-cham", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanscham/v27/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfcER0cv7GykboaLg.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans Cham" + }, + { + "src": "http://fonts.gstatic.com/s/notosanscham/v27/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfckRwcv7GykboaLg.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Sans Cham" + }, + { + "src": "http://fonts.gstatic.com/s/notosanscham/v27/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfcTxwcv7GykboaLg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans Cham" + }, + { + "src": "http://fonts.gstatic.com/s/notosanscham/v27/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfcERwcv7GykboaLg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Cham" + }, + { + "src": "http://fonts.gstatic.com/s/notosanscham/v27/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfcIxwcv7GykboaLg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Cham" + }, + { + "src": "http://fonts.gstatic.com/s/notosanscham/v27/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfczxscv7GykboaLg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Cham" + }, + { + "src": "http://fonts.gstatic.com/s/notosanscham/v27/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfc9hscv7GykboaLg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Cham" + }, + { + "src": "http://fonts.gstatic.com/s/notosanscham/v27/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfckRscv7GykboaLg.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Sans Cham" + }, + { + "src": "http://fonts.gstatic.com/s/notosanscham/v27/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfcuBscv7GykboaLg.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans Cham" + } + ] + }, + { + "name": "Noto Sans Cherokee", + "fontFamily": "Noto Sans Cherokee, sans-serif", + "slug": "noto-sans-cherokee", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanscherokee/v19/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWi5ODkm5rAffjl0.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans Cherokee" + }, + { + "src": "http://fonts.gstatic.com/s/notosanscherokee/v19/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWq5PDkm5rAffjl0.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Sans Cherokee" + }, + { + "src": "http://fonts.gstatic.com/s/notosanscherokee/v19/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWnBPDkm5rAffjl0.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans Cherokee" + }, + { + "src": "http://fonts.gstatic.com/s/notosanscherokee/v19/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWi5PDkm5rAffjl0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Cherokee" + }, + { + "src": "http://fonts.gstatic.com/s/notosanscherokee/v19/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWhxPDkm5rAffjl0.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Cherokee" + }, + { + "src": "http://fonts.gstatic.com/s/notosanscherokee/v19/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWvBIDkm5rAffjl0.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Cherokee" + }, + { + "src": "http://fonts.gstatic.com/s/notosanscherokee/v19/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWslIDkm5rAffjl0.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Cherokee" + }, + { + "src": "http://fonts.gstatic.com/s/notosanscherokee/v19/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWq5IDkm5rAffjl0.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Sans Cherokee" + }, + { + "src": "http://fonts.gstatic.com/s/notosanscherokee/v19/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWodIDkm5rAffjl0.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans Cherokee" + } + ] + }, + { + "name": "Noto Sans Chorasmian", + "fontFamily": "Noto Sans Chorasmian, sans-serif", + "slug": "noto-sans-chorasmian", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanschorasmian/v1/MQpL-X6uKMC7ROPLwRnI9ULxK_7NVkf8S5vyoH7w4g9b.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Chorasmian" + } + ] + }, + { + "name": "Noto Sans Coptic", + "fontFamily": "Noto Sans Coptic, sans-serif", + "slug": "noto-sans-coptic", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanscoptic/v17/iJWfBWmUZi_OHPqn4wq6kgqumOEd78u_VG0xR4Y.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Coptic" + } + ] + }, + { + "name": "Noto Sans Cuneiform", + "fontFamily": "Noto Sans Cuneiform, sans-serif", + "slug": "noto-sans-cuneiform", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanscuneiform/v15/bMrrmTWK7YY-MF22aHGGd7H8PhJtvBDWgb9JlRQueeQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Cuneiform" + } + ] + }, + { + "name": "Noto Sans Cypriot", + "fontFamily": "Noto Sans Cypriot, sans-serif", + "slug": "noto-sans-cypriot", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanscypriot/v15/8AtzGta9PYqQDjyp79a6f8Cj-3a3cxIsK5MPpahF.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Cypriot" + } + ] + }, + { + "name": "Noto Sans Deseret", + "fontFamily": "Noto Sans Deseret, sans-serif", + "slug": "noto-sans-deseret", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansdeseret/v15/MwQsbgPp1eKH6QsAVuFb9AZM6MMr2Vq9ZnJSZtQG.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Deseret" + } + ] + }, + { + "name": "Noto Sans Devanagari", + "fontFamily": "Noto Sans Devanagari, sans-serif", + "slug": "noto-sans-devanagari", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansdevanagari/v25/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08AlXQky-AzoFoW4Ow.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans Devanagari" + }, + { + "src": "http://fonts.gstatic.com/s/notosansdevanagari/v25/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08AlfQly-AzoFoW4Ow.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Sans Devanagari" + }, + { + "src": "http://fonts.gstatic.com/s/notosansdevanagari/v25/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08AlSoly-AzoFoW4Ow.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans Devanagari" + }, + { + "src": "http://fonts.gstatic.com/s/notosansdevanagari/v25/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08AlXQly-AzoFoW4Ow.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Devanagari" + }, + { + "src": "http://fonts.gstatic.com/s/notosansdevanagari/v25/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08AlUYly-AzoFoW4Ow.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Devanagari" + }, + { + "src": "http://fonts.gstatic.com/s/notosansdevanagari/v25/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08Alaoiy-AzoFoW4Ow.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Devanagari" + }, + { + "src": "http://fonts.gstatic.com/s/notosansdevanagari/v25/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08AlZMiy-AzoFoW4Ow.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Devanagari" + }, + { + "src": "http://fonts.gstatic.com/s/notosansdevanagari/v25/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08AlfQiy-AzoFoW4Ow.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Sans Devanagari" + }, + { + "src": "http://fonts.gstatic.com/s/notosansdevanagari/v25/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08Ald0iy-AzoFoW4Ow.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans Devanagari" + } + ] + }, + { + "name": "Noto Sans Display", + "fontFamily": "Noto Sans Display, sans-serif", + "slug": "noto-sans-display", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp_3cLVTGQ2iHrvWM.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans Display" + }, + { + "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp__cKVTGQ2iHrvWM.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Sans Display" + }, + { + "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp_ykKVTGQ2iHrvWM.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans Display" + }, + { + "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp_3cKVTGQ2iHrvWM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Display" + }, + { + "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp_0UKVTGQ2iHrvWM.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Display" + }, + { + "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp_6kNVTGQ2iHrvWM.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Display" + }, + { + "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp_5ANVTGQ2iHrvWM.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Display" + }, + { + "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp__cNVTGQ2iHrvWM.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Sans Display" + }, + { + "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp_94NVTGQ2iHrvWM.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans Display" + }, + { + "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9JvXOa3gPurWM9uQ.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Noto Sans Display" + }, + { + "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9JPXKa3gPurWM9uQ.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Noto Sans Display" + }, + { + "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9J43Ka3gPurWM9uQ.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Noto Sans Display" + }, + { + "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9JvXKa3gPurWM9uQ.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Noto Sans Display" + }, + { + "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9Jj3Ka3gPurWM9uQ.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Noto Sans Display" + }, + { + "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9JY3Wa3gPurWM9uQ.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Noto Sans Display" + }, + { + "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9JWnWa3gPurWM9uQ.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Noto Sans Display" + }, + { + "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9JPXWa3gPurWM9uQ.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Noto Sans Display" + }, + { + "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9JFHWa3gPurWM9uQ.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Noto Sans Display" + } + ] + }, + { + "name": "Noto Sans Duployan", + "fontFamily": "Noto Sans Duployan, sans-serif", + "slug": "noto-sans-duployan", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansduployan/v16/gokzH7nwAEdtF9N8-mdTDx_X9JM5wsvrFsIn6WYDvA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Duployan" + } + ] + }, + { + "name": "Noto Sans Egyptian Hieroglyphs", + "fontFamily": "Noto Sans Egyptian Hieroglyphs, sans-serif", + "slug": "noto-sans-egyptian-hieroglyphs", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansegyptianhieroglyphs/v26/vEF42-tODB8RrNDvZSUmRhcQHzx1s7y_F9-j3qSzEcbEYindSVK8xRg7iw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Egyptian Hieroglyphs" + } + ] + }, + { + "name": "Noto Sans Elbasan", + "fontFamily": "Noto Sans Elbasan, sans-serif", + "slug": "noto-sans-elbasan", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanselbasan/v16/-F6rfiZqLzI2JPCgQBnw400qp1trvHdlre4dFcFh.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Elbasan" + } + ] + }, + { + "name": "Noto Sans Elymaic", + "fontFamily": "Noto Sans Elymaic, sans-serif", + "slug": "noto-sans-elymaic", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanselymaic/v15/UqyKK9YTJW5liNMhTMqe9vUFP65ZD4AjWOT0zi2V.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Elymaic" + } + ] + }, + { + "name": "Noto Sans Ethiopic", + "fontFamily": "Noto Sans Ethiopic, sans-serif", + "slug": "noto-sans-ethiopic", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansethiopic/v46/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T35OKqDjwmfeaY9u.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans Ethiopic" + }, + { + "src": "http://fonts.gstatic.com/s/notosansethiopic/v46/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T37OK6DjwmfeaY9u.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Sans Ethiopic" + }, + { + "src": "http://fonts.gstatic.com/s/notosansethiopic/v46/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T34QK6DjwmfeaY9u.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans Ethiopic" + }, + { + "src": "http://fonts.gstatic.com/s/notosansethiopic/v46/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T35OK6DjwmfeaY9u.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Ethiopic" + }, + { + "src": "http://fonts.gstatic.com/s/notosansethiopic/v46/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T358K6DjwmfeaY9u.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Ethiopic" + }, + { + "src": "http://fonts.gstatic.com/s/notosansethiopic/v46/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T36QLKDjwmfeaY9u.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Ethiopic" + }, + { + "src": "http://fonts.gstatic.com/s/notosansethiopic/v46/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T36pLKDjwmfeaY9u.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Ethiopic" + }, + { + "src": "http://fonts.gstatic.com/s/notosansethiopic/v46/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T37OLKDjwmfeaY9u.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Sans Ethiopic" + }, + { + "src": "http://fonts.gstatic.com/s/notosansethiopic/v46/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T37nLKDjwmfeaY9u.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans Ethiopic" + } + ] + }, + { + "name": "Noto Sans Georgian", + "fontFamily": "Noto Sans Georgian, sans-serif", + "slug": "noto-sans-georgian", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansgeorgian/v42/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdpvnzVj-f5WK0OQV.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans Georgian" + }, + { + "src": "http://fonts.gstatic.com/s/notosansgeorgian/v42/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdptnzFj-f5WK0OQV.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Sans Georgian" + }, + { + "src": "http://fonts.gstatic.com/s/notosansgeorgian/v42/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdpu5zFj-f5WK0OQV.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans Georgian" + }, + { + "src": "http://fonts.gstatic.com/s/notosansgeorgian/v42/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdpvnzFj-f5WK0OQV.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Georgian" + }, + { + "src": "http://fonts.gstatic.com/s/notosansgeorgian/v42/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdpvVzFj-f5WK0OQV.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Georgian" + }, + { + "src": "http://fonts.gstatic.com/s/notosansgeorgian/v42/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdps5y1j-f5WK0OQV.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Georgian" + }, + { + "src": "http://fonts.gstatic.com/s/notosansgeorgian/v42/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdpsAy1j-f5WK0OQV.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Georgian" + }, + { + "src": "http://fonts.gstatic.com/s/notosansgeorgian/v42/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdptny1j-f5WK0OQV.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Sans Georgian" + }, + { + "src": "http://fonts.gstatic.com/s/notosansgeorgian/v42/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdptOy1j-f5WK0OQV.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans Georgian" + } + ] + }, + { + "name": "Noto Sans Glagolitic", + "fontFamily": "Noto Sans Glagolitic, sans-serif", + "slug": "noto-sans-glagolitic", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansglagolitic/v15/1q2ZY4-BBFBst88SU_tOj4J-4yuNF_HI4ERK4Amu7nM1.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Glagolitic" + } + ] + }, + { + "name": "Noto Sans Gothic", + "fontFamily": "Noto Sans Gothic, sans-serif", + "slug": "noto-sans-gothic", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansgothic/v15/TuGKUUVzXI5FBtUq5a8bj6wRbzxTFMX40kFQRx0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Gothic" + } + ] + }, + { + "name": "Noto Sans Grantha", + "fontFamily": "Noto Sans Grantha, sans-serif", + "slug": "noto-sans-grantha", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansgrantha/v17/3y976akwcCjmsU8NDyrKo3IQfQ4o-r8cFeulHc6N.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Grantha" + } + ] + }, + { + "name": "Noto Sans Gujarati", + "fontFamily": "Noto Sans Gujarati, sans-serif", + "slug": "noto-sans-gujarati", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansgujarati/v23/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_ypFgPM_OdiEH0s.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans Gujarati" + }, + { + "src": "http://fonts.gstatic.com/s/notosansgujarati/v23/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_wpFwPM_OdiEH0s.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Sans Gujarati" + }, + { + "src": "http://fonts.gstatic.com/s/notosansgujarati/v23/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_z3FwPM_OdiEH0s.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans Gujarati" + }, + { + "src": "http://fonts.gstatic.com/s/notosansgujarati/v23/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_ypFwPM_OdiEH0s.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Gujarati" + }, + { + "src": "http://fonts.gstatic.com/s/notosansgujarati/v23/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_ybFwPM_OdiEH0s.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Gujarati" + }, + { + "src": "http://fonts.gstatic.com/s/notosansgujarati/v23/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_x3EAPM_OdiEH0s.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Gujarati" + }, + { + "src": "http://fonts.gstatic.com/s/notosansgujarati/v23/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_xOEAPM_OdiEH0s.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Gujarati" + }, + { + "src": "http://fonts.gstatic.com/s/notosansgujarati/v23/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_wpEAPM_OdiEH0s.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Sans Gujarati" + }, + { + "src": "http://fonts.gstatic.com/s/notosansgujarati/v23/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_wAEAPM_OdiEH0s.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans Gujarati" + } + ] + }, + { + "name": "Noto Sans Gunjala Gondi", + "fontFamily": "Noto Sans Gunjala Gondi, sans-serif", + "slug": "noto-sans-gunjala-gondi", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansgunjalagondi/v15/bWto7e7KfBziStx7lIzKPrcSMwcEnCv6DW7n5hcVXYMTK4q1.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Gunjala Gondi" + } + ] + }, + { + "name": "Noto Sans Gurmukhi", + "fontFamily": "Noto Sans Gurmukhi, sans-serif", + "slug": "noto-sans-gurmukhi", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansgurmukhi/v26/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG1Oe3bxZ_trdp7h.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans Gurmukhi" + }, + { + "src": "http://fonts.gstatic.com/s/notosansgurmukhi/v26/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG3OenbxZ_trdp7h.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Sans Gurmukhi" + }, + { + "src": "http://fonts.gstatic.com/s/notosansgurmukhi/v26/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG0QenbxZ_trdp7h.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans Gurmukhi" + }, + { + "src": "http://fonts.gstatic.com/s/notosansgurmukhi/v26/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG1OenbxZ_trdp7h.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Gurmukhi" + }, + { + "src": "http://fonts.gstatic.com/s/notosansgurmukhi/v26/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG18enbxZ_trdp7h.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Gurmukhi" + }, + { + "src": "http://fonts.gstatic.com/s/notosansgurmukhi/v26/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG2QfXbxZ_trdp7h.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Gurmukhi" + }, + { + "src": "http://fonts.gstatic.com/s/notosansgurmukhi/v26/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG2pfXbxZ_trdp7h.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Gurmukhi" + }, + { + "src": "http://fonts.gstatic.com/s/notosansgurmukhi/v26/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG3OfXbxZ_trdp7h.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Sans Gurmukhi" + }, + { + "src": "http://fonts.gstatic.com/s/notosansgurmukhi/v26/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG3nfXbxZ_trdp7h.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans Gurmukhi" + } + ] + }, + { + "name": "Noto Sans HK", + "fontFamily": "Noto Sans HK, sans-serif", + "slug": "noto-sans-hk", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanshk/v21/nKKO-GM_FYFRJvXzVXaAPe9ZUHp1MOv2ObB7.otf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans HK" + }, + { + "src": "http://fonts.gstatic.com/s/notosanshk/v21/nKKP-GM_FYFRJvXzVXaAPe9ZmFhTHMX6MKliqQ.otf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans HK" + }, + { + "src": "http://fonts.gstatic.com/s/notosanshk/v21/nKKQ-GM_FYFRJvXzVXaAPe9hMnB3Eu7mOQ.otf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans HK" + }, + { + "src": "http://fonts.gstatic.com/s/notosanshk/v21/nKKP-GM_FYFRJvXzVXaAPe9ZwFlTHMX6MKliqQ.otf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans HK" + }, + { + "src": "http://fonts.gstatic.com/s/notosanshk/v21/nKKP-GM_FYFRJvXzVXaAPe9ZiF9THMX6MKliqQ.otf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans HK" + }, + { + "src": "http://fonts.gstatic.com/s/notosanshk/v21/nKKP-GM_FYFRJvXzVXaAPe9ZsF1THMX6MKliqQ.otf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans HK" + } + ] + }, + { + "name": "Noto Sans Hanifi Rohingya", + "fontFamily": "Noto Sans Hanifi Rohingya, sans-serif", + "slug": "noto-sans-hanifi-rohingya", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanshanifirohingya/v26/5h17iYsoOmIC3Yu3MDXLDw3UZCgghyOEBBY7hhLNyo3tiaiuSIAqrIYY4j6vvcudK8rN.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Hanifi Rohingya" + }, + { + "src": "http://fonts.gstatic.com/s/notosanshanifirohingya/v26/5h17iYsoOmIC3Yu3MDXLDw3UZCgghyOEBBY7hhLNyo3tiaiuSIAqrIYq4j6vvcudK8rN.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Hanifi Rohingya" + }, + { + "src": "http://fonts.gstatic.com/s/notosanshanifirohingya/v26/5h17iYsoOmIC3Yu3MDXLDw3UZCgghyOEBBY7hhLNyo3tiaiuSIAqrIbG5T6vvcudK8rN.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Hanifi Rohingya" + }, + { + "src": "http://fonts.gstatic.com/s/notosanshanifirohingya/v26/5h17iYsoOmIC3Yu3MDXLDw3UZCgghyOEBBY7hhLNyo3tiaiuSIAqrIb_5T6vvcudK8rN.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Hanifi Rohingya" + } + ] + }, + { + "name": "Noto Sans Hanunoo", + "fontFamily": "Noto Sans Hanunoo, sans-serif", + "slug": "noto-sans-hanunoo", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanshanunoo/v17/f0Xs0fCv8dxkDWlZSoXOj6CphMloFsEsEpgL_ix2.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Hanunoo" + } + ] + }, + { + "name": "Noto Sans Hatran", + "fontFamily": "Noto Sans Hatran, sans-serif", + "slug": "noto-sans-hatran", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanshatran/v15/A2BBn4Ne0RgnVF3Lnko-0sOBIfL_mM83r1nwzDs.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Hatran" + } + ] + }, + { + "name": "Noto Sans Hebrew", + "fontFamily": "Noto Sans Hebrew, sans-serif", + "slug": "noto-sans-hebrew", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanshebrew/v43/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiXd4utoiJltutR2g.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans Hebrew" + }, + { + "src": "http://fonts.gstatic.com/s/notosanshebrew/v43/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiX94qtoiJltutR2g.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Sans Hebrew" + }, + { + "src": "http://fonts.gstatic.com/s/notosanshebrew/v43/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiXKYqtoiJltutR2g.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans Hebrew" + }, + { + "src": "http://fonts.gstatic.com/s/notosanshebrew/v43/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiXd4qtoiJltutR2g.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Hebrew" + }, + { + "src": "http://fonts.gstatic.com/s/notosanshebrew/v43/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiXRYqtoiJltutR2g.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Hebrew" + }, + { + "src": "http://fonts.gstatic.com/s/notosanshebrew/v43/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiXqY2toiJltutR2g.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Hebrew" + }, + { + "src": "http://fonts.gstatic.com/s/notosanshebrew/v43/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiXkI2toiJltutR2g.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Hebrew" + }, + { + "src": "http://fonts.gstatic.com/s/notosanshebrew/v43/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiX942toiJltutR2g.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Sans Hebrew" + }, + { + "src": "http://fonts.gstatic.com/s/notosanshebrew/v43/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiX3o2toiJltutR2g.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans Hebrew" + } + ] + }, + { + "name": "Noto Sans Imperial Aramaic", + "fontFamily": "Noto Sans Imperial Aramaic, sans-serif", + "slug": "noto-sans-imperial-aramaic", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansimperialaramaic/v15/a8IMNpjwKmHXpgXbMIsbTc_kvks91LlLetBr5itQrtdml3YfPNno.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Imperial Aramaic" + } + ] + }, + { + "name": "Noto Sans Indic Siyaq Numbers", + "fontFamily": "Noto Sans Indic Siyaq Numbers, sans-serif", + "slug": "noto-sans-indic-siyaq-numbers", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansindicsiyaqnumbers/v15/6xK5dTJFKcWIu4bpRBjRZRpsIYHabOeZ8UZLubTzpXNHKx2WPOpVd5Iu.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Indic Siyaq Numbers" + } + ] + }, + { + "name": "Noto Sans Inscriptional Pahlavi", + "fontFamily": "Noto Sans Inscriptional Pahlavi, sans-serif", + "slug": "noto-sans-inscriptional-pahlavi", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansinscriptionalpahlavi/v15/ll8UK3GaVDuxR-TEqFPIbsR79Xxz9WEKbwsjpz7VklYlC7FCVtqVOAYK0QA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Inscriptional Pahlavi" + } + ] + }, + { + "name": "Noto Sans Inscriptional Parthian", + "fontFamily": "Noto Sans Inscriptional Parthian, sans-serif", + "slug": "noto-sans-inscriptional-parthian", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansinscriptionalparthian/v16/k3k7o-IMPvpLmixcA63oYi-yStDkgXuXncL7dzfW3P4TAJ2yklBJ2jNkLlLr.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Inscriptional Parthian" + } + ] + }, + { + "name": "Noto Sans JP", + "fontFamily": "Noto Sans JP, sans-serif", + "slug": "noto-sans-jp", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansjp/v52/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFBEi75vY0rw-oME.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans JP" + }, + { + "src": "http://fonts.gstatic.com/s/notosansjp/v52/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFJEj75vY0rw-oME.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Sans JP" + }, + { + "src": "http://fonts.gstatic.com/s/notosansjp/v52/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFE8j75vY0rw-oME.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans JP" + }, + { + "src": "http://fonts.gstatic.com/s/notosansjp/v52/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFBEj75vY0rw-oME.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans JP" + }, + { + "src": "http://fonts.gstatic.com/s/notosansjp/v52/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFCMj75vY0rw-oME.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans JP" + }, + { + "src": "http://fonts.gstatic.com/s/notosansjp/v52/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFM8k75vY0rw-oME.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans JP" + }, + { + "src": "http://fonts.gstatic.com/s/notosansjp/v52/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFPYk75vY0rw-oME.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans JP" + }, + { + "src": "http://fonts.gstatic.com/s/notosansjp/v52/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFJEk75vY0rw-oME.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Sans JP" + }, + { + "src": "http://fonts.gstatic.com/s/notosansjp/v52/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFLgk75vY0rw-oME.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans JP" + } + ] + }, + { + "name": "Noto Sans Javanese", + "fontFamily": "Noto Sans Javanese, sans-serif", + "slug": "noto-sans-javanese", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansjavanese/v21/2V01KJkDAIA6Hp4zoSScDjV0Y-eoHAHT-Z3MngEefiidxJnkFFliZYWj4O8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Javanese" + }, + { + "src": "http://fonts.gstatic.com/s/notosansjavanese/v21/2V01KJkDAIA6Hp4zoSScDjV0Y-eoHAHT-Z3MngEefiidxKvkFFliZYWj4O8.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Javanese" + }, + { + "src": "http://fonts.gstatic.com/s/notosansjavanese/v21/2V01KJkDAIA6Hp4zoSScDjV0Y-eoHAHT-Z3MngEefiidxEfjFFliZYWj4O8.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Javanese" + }, + { + "src": "http://fonts.gstatic.com/s/notosansjavanese/v21/2V01KJkDAIA6Hp4zoSScDjV0Y-eoHAHT-Z3MngEefiidxH7jFFliZYWj4O8.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Javanese" + } + ] + }, + { + "name": "Noto Sans KR", + "fontFamily": "Noto Sans KR, sans-serif", + "slug": "noto-sans-kr", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanskr/v27/Pby6FmXiEBPT4ITbgNA5CgmOsn7uwpYcuH8y.otf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans KR" + }, + { + "src": "http://fonts.gstatic.com/s/notosanskr/v27/Pby7FmXiEBPT4ITbgNA5CgmOelzI7rgQsWYrzw.otf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans KR" + }, + { + "src": "http://fonts.gstatic.com/s/notosanskr/v27/PbykFmXiEBPT4ITbgNA5Cgm20HTs4JMMuA.otf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans KR" + }, + { + "src": "http://fonts.gstatic.com/s/notosanskr/v27/Pby7FmXiEBPT4ITbgNA5CgmOIl3I7rgQsWYrzw.otf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans KR" + }, + { + "src": "http://fonts.gstatic.com/s/notosanskr/v27/Pby7FmXiEBPT4ITbgNA5CgmOalvI7rgQsWYrzw.otf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans KR" + }, + { + "src": "http://fonts.gstatic.com/s/notosanskr/v27/Pby7FmXiEBPT4ITbgNA5CgmOUlnI7rgQsWYrzw.otf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans KR" + } + ] + }, + { + "name": "Noto Sans Kaithi", + "fontFamily": "Noto Sans Kaithi, sans-serif", + "slug": "noto-sans-kaithi", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanskaithi/v16/buEtppS9f8_vkXadMBJJu0tWjLwjQi0KdoZIKlo.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Kaithi" + } + ] + }, + { + "name": "Noto Sans Kannada", + "fontFamily": "Noto Sans Kannada, sans-serif", + "slug": "noto-sans-kannada", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanskannada/v26/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrDvMzSIMLsPKrkY.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans Kannada" + }, + { + "src": "http://fonts.gstatic.com/s/notosanskannada/v26/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrLvNzSIMLsPKrkY.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Sans Kannada" + }, + { + "src": "http://fonts.gstatic.com/s/notosanskannada/v26/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrGXNzSIMLsPKrkY.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans Kannada" + }, + { + "src": "http://fonts.gstatic.com/s/notosanskannada/v26/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrDvNzSIMLsPKrkY.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Kannada" + }, + { + "src": "http://fonts.gstatic.com/s/notosanskannada/v26/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrAnNzSIMLsPKrkY.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Kannada" + }, + { + "src": "http://fonts.gstatic.com/s/notosanskannada/v26/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrOXKzSIMLsPKrkY.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Kannada" + }, + { + "src": "http://fonts.gstatic.com/s/notosanskannada/v26/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrNzKzSIMLsPKrkY.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Kannada" + }, + { + "src": "http://fonts.gstatic.com/s/notosanskannada/v26/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrLvKzSIMLsPKrkY.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Sans Kannada" + }, + { + "src": "http://fonts.gstatic.com/s/notosanskannada/v26/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrJLKzSIMLsPKrkY.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans Kannada" + } + ] + }, + { + "name": "Noto Sans Kayah Li", + "fontFamily": "Noto Sans Kayah Li, sans-serif", + "slug": "noto-sans-kayah-li", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanskayahli/v20/B50nF61OpWTRcGrhOVJJwOMXdca6Yecki3E06x2jVTX3WCc3CZH4EXLuKVM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Kayah Li" + }, + { + "src": "http://fonts.gstatic.com/s/notosanskayahli/v20/B50nF61OpWTRcGrhOVJJwOMXdca6Yecki3E06x2jVTX3WBU3CZH4EXLuKVM.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Kayah Li" + }, + { + "src": "http://fonts.gstatic.com/s/notosanskayahli/v20/B50nF61OpWTRcGrhOVJJwOMXdca6Yecki3E06x2jVTX3WPkwCZH4EXLuKVM.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Kayah Li" + }, + { + "src": "http://fonts.gstatic.com/s/notosanskayahli/v20/B50nF61OpWTRcGrhOVJJwOMXdca6Yecki3E06x2jVTX3WMAwCZH4EXLuKVM.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Kayah Li" + } + ] + }, + { + "name": "Noto Sans Kharoshthi", + "fontFamily": "Noto Sans Kharoshthi, sans-serif", + "slug": "noto-sans-kharoshthi", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanskharoshthi/v16/Fh4qPiLjKS30-P4-pGMMXCCfvkc5Vd7KE5z4rFyx5mR1.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Kharoshthi" + } + ] + }, + { + "name": "Noto Sans Khmer", + "fontFamily": "Noto Sans Khmer, sans-serif", + "slug": "noto-sans-khmer", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanskhmer/v23/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYuNAZz4kAbrddiA.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans Khmer" + }, + { + "src": "http://fonts.gstatic.com/s/notosanskhmer/v23/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYsNAJz4kAbrddiA.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Sans Khmer" + }, + { + "src": "http://fonts.gstatic.com/s/notosanskhmer/v23/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYvTAJz4kAbrddiA.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans Khmer" + }, + { + "src": "http://fonts.gstatic.com/s/notosanskhmer/v23/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYuNAJz4kAbrddiA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Khmer" + }, + { + "src": "http://fonts.gstatic.com/s/notosanskhmer/v23/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYu_AJz4kAbrddiA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Khmer" + }, + { + "src": "http://fonts.gstatic.com/s/notosanskhmer/v23/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYtTB5z4kAbrddiA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Khmer" + }, + { + "src": "http://fonts.gstatic.com/s/notosanskhmer/v23/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYtqB5z4kAbrddiA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Khmer" + }, + { + "src": "http://fonts.gstatic.com/s/notosanskhmer/v23/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYsNB5z4kAbrddiA.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Sans Khmer" + }, + { + "src": "http://fonts.gstatic.com/s/notosanskhmer/v23/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYskB5z4kAbrddiA.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans Khmer" + } + ] + }, + { + "name": "Noto Sans Khojki", + "fontFamily": "Noto Sans Khojki, sans-serif", + "slug": "noto-sans-khojki", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanskhojki/v16/-nFnOHM29Oofr2wohFbTuPPKVWpmK_d709jy92k.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Khojki" + } + ] + }, + { + "name": "Noto Sans Khudawadi", + "fontFamily": "Noto Sans Khudawadi, sans-serif", + "slug": "noto-sans-khudawadi", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanskhudawadi/v16/fdNi9t6ZsWBZ2k5ltHN73zZ5hc8HANlHIjRnVVXz9MY.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Khudawadi" + } + ] + }, + { + "name": "Noto Sans Lao", + "fontFamily": "Noto Sans Lao, sans-serif", + "slug": "noto-sans-lao", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanslao/v24/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt4ccfdf5MK3riB2w.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans Lao" + }, + { + "src": "http://fonts.gstatic.com/s/notosanslao/v24/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt48cbdf5MK3riB2w.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Sans Lao" + }, + { + "src": "http://fonts.gstatic.com/s/notosanslao/v24/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt4L8bdf5MK3riB2w.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans Lao" + }, + { + "src": "http://fonts.gstatic.com/s/notosanslao/v24/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt4ccbdf5MK3riB2w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Lao" + }, + { + "src": "http://fonts.gstatic.com/s/notosanslao/v24/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt4Q8bdf5MK3riB2w.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Lao" + }, + { + "src": "http://fonts.gstatic.com/s/notosanslao/v24/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt4r8Hdf5MK3riB2w.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Lao" + }, + { + "src": "http://fonts.gstatic.com/s/notosanslao/v24/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt4lsHdf5MK3riB2w.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Lao" + }, + { + "src": "http://fonts.gstatic.com/s/notosanslao/v24/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt48cHdf5MK3riB2w.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Sans Lao" + }, + { + "src": "http://fonts.gstatic.com/s/notosanslao/v24/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt42MHdf5MK3riB2w.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans Lao" + } + ] + }, + { + "name": "Noto Sans Lao Looped", + "fontFamily": "Noto Sans Lao Looped, sans-serif", + "slug": "noto-sans-lao-looped", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanslaolooped/v5/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomPr2M-Zw5V_T71k.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans Lao Looped" + }, + { + "src": "http://fonts.gstatic.com/s/notosanslaolooped/v5/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomHr3M-Zw5V_T71k.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Sans Lao Looped" + }, + { + "src": "http://fonts.gstatic.com/s/notosanslaolooped/v5/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomKT3M-Zw5V_T71k.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans Lao Looped" + }, + { + "src": "http://fonts.gstatic.com/s/notosanslaolooped/v5/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomPr3M-Zw5V_T71k.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Lao Looped" + }, + { + "src": "http://fonts.gstatic.com/s/notosanslaolooped/v5/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomMj3M-Zw5V_T71k.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Lao Looped" + }, + { + "src": "http://fonts.gstatic.com/s/notosanslaolooped/v5/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomCTwM-Zw5V_T71k.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Lao Looped" + }, + { + "src": "http://fonts.gstatic.com/s/notosanslaolooped/v5/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomB3wM-Zw5V_T71k.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Lao Looped" + }, + { + "src": "http://fonts.gstatic.com/s/notosanslaolooped/v5/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomHrwM-Zw5V_T71k.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Sans Lao Looped" + }, + { + "src": "http://fonts.gstatic.com/s/notosanslaolooped/v5/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomFPwM-Zw5V_T71k.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans Lao Looped" + } + ] + }, + { + "name": "Noto Sans Lepcha", + "fontFamily": "Noto Sans Lepcha, sans-serif", + "slug": "noto-sans-lepcha", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanslepcha/v16/0QI7MWlB_JWgA166SKhu05TekNS32AJstqBXgd4.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Lepcha" + } + ] + }, + { + "name": "Noto Sans Limbu", + "fontFamily": "Noto Sans Limbu, sans-serif", + "slug": "noto-sans-limbu", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanslimbu/v22/3JnlSDv90Gmq2mrzckOBBRRoNJVj0MF3OHRDnA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Limbu" + } + ] + }, + { + "name": "Noto Sans Linear A", + "fontFamily": "Noto Sans Linear A, sans-serif", + "slug": "noto-sans-linear-a", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanslineara/v16/oPWS_l16kP4jCuhpgEGmwJOiA18FZj22zmHQAGQicw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Linear A" + } + ] + }, + { + "name": "Noto Sans Linear B", + "fontFamily": "Noto Sans Linear B, sans-serif", + "slug": "noto-sans-linear-b", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanslinearb/v15/HhyJU4wt9vSgfHoORYOiXOckKNB737IV3BkFTq4EPw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Linear B" + } + ] + }, + { + "name": "Noto Sans Lisu", + "fontFamily": "Noto Sans Lisu, sans-serif", + "slug": "noto-sans-lisu", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanslisu/v25/uk-3EGO3o6EruUbnwovcYhz6kh57_nqbcTdjJnHP2Vwt29IlxkVdig.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Lisu" + }, + { + "src": "http://fonts.gstatic.com/s/notosanslisu/v25/uk-3EGO3o6EruUbnwovcYhz6kh57_nqbcTdjJnHP61wt29IlxkVdig.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Lisu" + }, + { + "src": "http://fonts.gstatic.com/s/notosanslisu/v25/uk-3EGO3o6EruUbnwovcYhz6kh57_nqbcTdjJnHPB1st29IlxkVdig.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Lisu" + }, + { + "src": "http://fonts.gstatic.com/s/notosanslisu/v25/uk-3EGO3o6EruUbnwovcYhz6kh57_nqbcTdjJnHPPlst29IlxkVdig.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Lisu" + } + ] + }, + { + "name": "Noto Sans Lycian", + "fontFamily": "Noto Sans Lycian, sans-serif", + "slug": "noto-sans-lycian", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanslycian/v15/QldVNSNMqAsHtsJ7UmqxBQA9r8wA5_naCJwn00E.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Lycian" + } + ] + }, + { + "name": "Noto Sans Lydian", + "fontFamily": "Noto Sans Lydian, sans-serif", + "slug": "noto-sans-lydian", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanslydian/v15/c4m71mVzGN7s8FmIukZJ1v4ZlcPReUPXMoIjEQI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Lydian" + } + ] + }, + { + "name": "Noto Sans Mahajani", + "fontFamily": "Noto Sans Mahajani, sans-serif", + "slug": "noto-sans-mahajani", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansmahajani/v15/-F6sfiVqLzI2JPCgQBnw60Agp0JrvD5Fh8ARHNh4zg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Mahajani" + } + ] + }, + { + "name": "Noto Sans Malayalam", + "fontFamily": "Noto Sans Malayalam, sans-serif", + "slug": "noto-sans-malayalam", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansmalayalam/v26/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_RuH9BFzEr6HxEA.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans Malayalam" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmalayalam/v26/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_xuD9BFzEr6HxEA.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Sans Malayalam" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmalayalam/v26/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_GOD9BFzEr6HxEA.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans Malayalam" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmalayalam/v26/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_RuD9BFzEr6HxEA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Malayalam" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmalayalam/v26/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_dOD9BFzEr6HxEA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Malayalam" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmalayalam/v26/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_mOf9BFzEr6HxEA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Malayalam" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmalayalam/v26/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_oef9BFzEr6HxEA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Malayalam" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmalayalam/v26/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_xuf9BFzEr6HxEA.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Sans Malayalam" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmalayalam/v26/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_7-f9BFzEr6HxEA.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans Malayalam" + } + ] + }, + { + "name": "Noto Sans Mandaic", + "fontFamily": "Noto Sans Mandaic, sans-serif", + "slug": "noto-sans-mandaic", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansmandaic/v15/cIfnMbdWt1w_HgCcilqhKQBo_OsMI5_A_gMk0izH.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Mandaic" + } + ] + }, + { + "name": "Noto Sans Manichaean", + "fontFamily": "Noto Sans Manichaean, sans-serif", + "slug": "noto-sans-manichaean", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansmanichaean/v15/taiVGntiC4--qtsfi4Jp9-_GkPZZCcrfekqCNTtFCtdX.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Manichaean" + } + ] + }, + { + "name": "Noto Sans Marchen", + "fontFamily": "Noto Sans Marchen, sans-serif", + "slug": "noto-sans-marchen", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansmarchen/v17/aFTO7OZ_Y282EP-WyG6QTOX_C8WZMHhPk652ZaHk.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Marchen" + } + ] + }, + { + "name": "Noto Sans Masaram Gondi", + "fontFamily": "Noto Sans Masaram Gondi, sans-serif", + "slug": "noto-sans-masaram-gondi", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansmasaramgondi/v17/6xK_dThFKcWIu4bpRBjRYRV7KZCbUq6n_1kPnuGe7RI9WSWX.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Masaram Gondi" + } + ] + }, + { + "name": "Noto Sans Math", + "fontFamily": "Noto Sans Math, sans-serif", + "slug": "noto-sans-math", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansmath/v15/7Aump_cpkSecTWaHRlH2hyV5UHkG-V048PW0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Math" + } + ] + }, + { + "name": "Noto Sans Mayan Numerals", + "fontFamily": "Noto Sans Mayan Numerals, sans-serif", + "slug": "noto-sans-mayan-numerals", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansmayannumerals/v15/PlIuFk25O6RzLfvNNVSivR09_KqYMwvvDKYjfIiE68oo6eepYQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Mayan Numerals" + } + ] + }, + { + "name": "Noto Sans Medefaidrin", + "fontFamily": "Noto Sans Medefaidrin, sans-serif", + "slug": "noto-sans-medefaidrin", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansmedefaidrin/v22/WwkzxOq6Dk-wranENynkfeVsNbRZtbOIdLb1exeM4ZeuabBfmErWlT318e5A3rw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Medefaidrin" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmedefaidrin/v22/WwkzxOq6Dk-wranENynkfeVsNbRZtbOIdLb1exeM4ZeuabBfmHjWlT318e5A3rw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Medefaidrin" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmedefaidrin/v22/WwkzxOq6Dk-wranENynkfeVsNbRZtbOIdLb1exeM4ZeuabBfmJTRlT318e5A3rw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Medefaidrin" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmedefaidrin/v22/WwkzxOq6Dk-wranENynkfeVsNbRZtbOIdLb1exeM4ZeuabBfmK3RlT318e5A3rw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Medefaidrin" + } + ] + }, + { + "name": "Noto Sans Meetei Mayek", + "fontFamily": "Noto Sans Meetei Mayek, sans-serif", + "slug": "noto-sans-meetei-mayek", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansmeeteimayek/v14/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1TJ__TW5PgeFYVa.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans Meetei Mayek" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmeeteimayek/v14/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1RJ_vTW5PgeFYVa.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Sans Meetei Mayek" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmeeteimayek/v14/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1SX_vTW5PgeFYVa.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans Meetei Mayek" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmeeteimayek/v14/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1TJ_vTW5PgeFYVa.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Meetei Mayek" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmeeteimayek/v14/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1T7_vTW5PgeFYVa.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Meetei Mayek" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmeeteimayek/v14/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1QX-fTW5PgeFYVa.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Meetei Mayek" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmeeteimayek/v14/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1Qu-fTW5PgeFYVa.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Meetei Mayek" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmeeteimayek/v14/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1RJ-fTW5PgeFYVa.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Sans Meetei Mayek" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmeeteimayek/v14/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1Rg-fTW5PgeFYVa.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans Meetei Mayek" + } + ] + }, + { + "name": "Noto Sans Mende Kikakui", + "fontFamily": "Noto Sans Mende Kikakui, sans-serif", + "slug": "noto-sans-mende-kikakui", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansmendekikakui/v28/11hRGoLHz17aKjQCWj-JHcLvu2Q5zZrnkbNCLUx_aDJLAHer.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Mende Kikakui" + } + ] + }, + { + "name": "Noto Sans Meroitic", + "fontFamily": "Noto Sans Meroitic, sans-serif", + "slug": "noto-sans-meroitic", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansmeroitic/v16/IFS5HfRJndhE3P4b5jnZ3ITPvC6i00UDgDhTiKY9KQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Meroitic" + } + ] + }, + { + "name": "Noto Sans Miao", + "fontFamily": "Noto Sans Miao, sans-serif", + "slug": "noto-sans-miao", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansmiao/v17/Dxxz8jmXMW75w3OmoDXVV4zyZUjgUYVslLhx.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Miao" + } + ] + }, + { + "name": "Noto Sans Modi", + "fontFamily": "Noto Sans Modi, sans-serif", + "slug": "noto-sans-modi", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansmodi/v20/pe03MIySN5pO62Z5YkFyT7jeav5qWVAgVol-.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Modi" + } + ] + }, + { + "name": "Noto Sans Mongolian", + "fontFamily": "Noto Sans Mongolian, sans-serif", + "slug": "noto-sans-mongolian", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansmongolian/v17/VdGCAYADGIwE0EopZx8xQfHlgEAMsrToxLsg6-av1x0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Mongolian" + } + ] + }, + { + "name": "Noto Sans Mono", + "fontFamily": "Noto Sans Mono, monospace", + "slug": "noto-sans-mono", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansmono/v27/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_FNI49rXVEQQL8Y.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans Mono" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmono/v27/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_NNJ49rXVEQQL8Y.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Sans Mono" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmono/v27/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_A1J49rXVEQQL8Y.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans Mono" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmono/v27/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_FNJ49rXVEQQL8Y.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Mono" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmono/v27/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_GFJ49rXVEQQL8Y.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Mono" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmono/v27/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_I1O49rXVEQQL8Y.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Mono" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmono/v27/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_LRO49rXVEQQL8Y.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Mono" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmono/v27/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_NNO49rXVEQQL8Y.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Sans Mono" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmono/v27/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_PpO49rXVEQQL8Y.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans Mono" + } + ] + }, + { + "name": "Noto Sans Mro", + "fontFamily": "Noto Sans Mro, sans-serif", + "slug": "noto-sans-mro", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansmro/v18/qWcsB6--pZv9TqnUQMhe9b39WDzRtjkho4M.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Mro" + } + ] + }, + { + "name": "Noto Sans Multani", + "fontFamily": "Noto Sans Multani, sans-serif", + "slug": "noto-sans-multani", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansmultani/v20/9Bty3ClF38_RfOpe1gCaZ8p30BOFO1A0pfCs5Kos.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Multani" + } + ] + }, + { + "name": "Noto Sans Myanmar", + "fontFamily": "Noto Sans Myanmar, sans-serif", + "slug": "noto-sans-myanmar", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansmyanmar/v20/AlZs_y1ZtY3ymOryg38hOCSdOnFq0HGS1uEapkAC3AY.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans Myanmar" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmyanmar/v20/AlZv_y1ZtY3ymOryg38hOCSdOnFq0HE-98EwiEwLxR-r.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Sans Myanmar" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmyanmar/v20/AlZv_y1ZtY3ymOryg38hOCSdOnFq0HFa9MEwiEwLxR-r.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans Myanmar" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmyanmar/v20/AlZq_y1ZtY3ymOryg38hOCSdOnFq0En23OU4o1AC.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Myanmar" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmyanmar/v20/AlZv_y1ZtY3ymOryg38hOCSdOnFq0HEC9cEwiEwLxR-r.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Myanmar" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmyanmar/v20/AlZv_y1ZtY3ymOryg38hOCSdOnFq0HEu8sEwiEwLxR-r.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Myanmar" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmyanmar/v20/AlZv_y1ZtY3ymOryg38hOCSdOnFq0HFK88EwiEwLxR-r.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Myanmar" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmyanmar/v20/AlZv_y1ZtY3ymOryg38hOCSdOnFq0HFW8MEwiEwLxR-r.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Sans Myanmar" + }, + { + "src": "http://fonts.gstatic.com/s/notosansmyanmar/v20/AlZv_y1ZtY3ymOryg38hOCSdOnFq0HFy8cEwiEwLxR-r.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans Myanmar" + } + ] + }, + { + "name": "Noto Sans NKo", + "fontFamily": "Noto Sans NKo, sans-serif", + "slug": "noto-sans-nko", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansnko/v2/esDX31ZdNv-KYGGJpKGk2_RpMpCMHMLBrdA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans NKo" + } + ] + }, + { + "name": "Noto Sans Nabataean", + "fontFamily": "Noto Sans Nabataean, sans-serif", + "slug": "noto-sans-nabataean", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansnabataean/v15/IFS4HfVJndhE3P4b5jnZ34DfsjO330dNoBJ9hK8kMK4.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Nabataean" + } + ] + }, + { + "name": "Noto Sans Nag Mundari", + "fontFamily": "Noto Sans Nag Mundari, sans-serif", + "slug": "noto-sans-nag-mundari", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansnagmundari/v1/3qTAoi2hnSyU8TNFIdhZTyod3g5lBnKlQFk2kS9fr9Eq09RHRxirbUGA0whP19M.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Nag Mundari" + }, + { + "src": "http://fonts.gstatic.com/s/notosansnagmundari/v1/3qTAoi2hnSyU8TNFIdhZTyod3g5lBnKlQFk2kS9fr9Eq09RHRyqrbUGA0whP19M.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Nag Mundari" + }, + { + "src": "http://fonts.gstatic.com/s/notosansnagmundari/v1/3qTAoi2hnSyU8TNFIdhZTyod3g5lBnKlQFk2kS9fr9Eq09RHR8asbUGA0whP19M.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Nag Mundari" + }, + { + "src": "http://fonts.gstatic.com/s/notosansnagmundari/v1/3qTAoi2hnSyU8TNFIdhZTyod3g5lBnKlQFk2kS9fr9Eq09RHR_-sbUGA0whP19M.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Nag Mundari" + } + ] + }, + { + "name": "Noto Sans Nandinagari", + "fontFamily": "Noto Sans Nandinagari, sans-serif", + "slug": "noto-sans-nandinagari", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansnandinagari/v3/or38Q7733eiDljA1IufXSNFT-1KI5y10H4jVa5RXzC1KOw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Nandinagari" + } + ] + }, + { + "name": "Noto Sans New Tai Lue", + "fontFamily": "Noto Sans New Tai Lue, sans-serif", + "slug": "noto-sans-new-tai-lue", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansnewtailue/v20/H4cKBW-Pl9DZ0Xe_nHUapt7PovLXAhAnY7wqaLy-OJgU3p_pdeXAYUbghFPKzeY.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans New Tai Lue" + }, + { + "src": "http://fonts.gstatic.com/s/notosansnewtailue/v20/H4cKBW-Pl9DZ0Xe_nHUapt7PovLXAhAnY7wqaLy-OJgU3p_pddfAYUbghFPKzeY.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans New Tai Lue" + }, + { + "src": "http://fonts.gstatic.com/s/notosansnewtailue/v20/H4cKBW-Pl9DZ0Xe_nHUapt7PovLXAhAnY7wqaLy-OJgU3p_pdTvHYUbghFPKzeY.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans New Tai Lue" + }, + { + "src": "http://fonts.gstatic.com/s/notosansnewtailue/v20/H4cKBW-Pl9DZ0Xe_nHUapt7PovLXAhAnY7wqaLy-OJgU3p_pdQLHYUbghFPKzeY.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans New Tai Lue" + } + ] + }, + { + "name": "Noto Sans Newa", + "fontFamily": "Noto Sans Newa, sans-serif", + "slug": "noto-sans-newa", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansnewa/v16/7r3fqXp6utEsO9pI4f8ok8sWg8n_qN4R5lNU.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Newa" + } + ] + }, + { + "name": "Noto Sans Nushu", + "fontFamily": "Noto Sans Nushu, sans-serif", + "slug": "noto-sans-nushu", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansnushu/v19/rnCw-xRQ3B7652emAbAe_Ai1IYaFWFAMArZKqQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Nushu" + } + ] + }, + { + "name": "Noto Sans Ogham", + "fontFamily": "Noto Sans Ogham, sans-serif", + "slug": "noto-sans-ogham", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansogham/v15/kmKlZqk1GBDGN0mY6k5lmEmww4hrt5laQxcoCA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Ogham" + } + ] + }, + { + "name": "Noto Sans Ol Chiki", + "fontFamily": "Noto Sans Ol Chiki, sans-serif", + "slug": "noto-sans-ol-chiki", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansolchiki/v21/N0b92TJNOPt-eHmFZCdQbrL32r-4CvhzDzRwlxOQYuVALWk267I6gVrz5gQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Ol Chiki" + }, + { + "src": "http://fonts.gstatic.com/s/notosansolchiki/v21/N0b92TJNOPt-eHmFZCdQbrL32r-4CvhzDzRwlxOQYuVALVs267I6gVrz5gQ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Ol Chiki" + }, + { + "src": "http://fonts.gstatic.com/s/notosansolchiki/v21/N0b92TJNOPt-eHmFZCdQbrL32r-4CvhzDzRwlxOQYuVALbcx67I6gVrz5gQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Ol Chiki" + }, + { + "src": "http://fonts.gstatic.com/s/notosansolchiki/v21/N0b92TJNOPt-eHmFZCdQbrL32r-4CvhzDzRwlxOQYuVALY4x67I6gVrz5gQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Ol Chiki" + } + ] + }, + { + "name": "Noto Sans Old Hungarian", + "fontFamily": "Noto Sans Old Hungarian, sans-serif", + "slug": "noto-sans-old-hungarian", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansoldhungarian/v15/E213_cD6hP3GwCJPEUssHEM0KqLaHJXg2PiIgRfjbg5nCYXt.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Old Hungarian" + } + ] + }, + { + "name": "Noto Sans Old Italic", + "fontFamily": "Noto Sans Old Italic, sans-serif", + "slug": "noto-sans-old-italic", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansolditalic/v15/TuGOUUFzXI5FBtUq5a8bh68BJxxEVam7tWlRdRhtCC4d.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Old Italic" + } + ] + }, + { + "name": "Noto Sans Old North Arabian", + "fontFamily": "Noto Sans Old North Arabian, sans-serif", + "slug": "noto-sans-old-north-arabian", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansoldnortharabian/v15/esDF30BdNv-KYGGJpKGk2tNiMt7Jar6olZDyNdr81zBQmUo_xw4ABw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Old North Arabian" + } + ] + }, + { + "name": "Noto Sans Old Permic", + "fontFamily": "Noto Sans Old Permic, sans-serif", + "slug": "noto-sans-old-permic", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansoldpermic/v16/snf1s1q1-dF8pli1TesqcbUY4Mr-ElrwKLdXgv_dKYB5.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Old Permic" + } + ] + }, + { + "name": "Noto Sans Old Persian", + "fontFamily": "Noto Sans Old Persian, sans-serif", + "slug": "noto-sans-old-persian", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansoldpersian/v15/wEOjEAbNnc5caQTFG18FHrZr9Bp6-8CmIJ_tqOlQfx9CjA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Old Persian" + } + ] + }, + { + "name": "Noto Sans Old Sogdian", + "fontFamily": "Noto Sans Old Sogdian, sans-serif", + "slug": "noto-sans-old-sogdian", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansoldsogdian/v15/3JnjSCH90Gmq2mrzckOBBhFhdrMst48aURt7neIqM-9uyg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Old Sogdian" + } + ] + }, + { + "name": "Noto Sans Old South Arabian", + "fontFamily": "Noto Sans Old South Arabian, sans-serif", + "slug": "noto-sans-old-south-arabian", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansoldsoutharabian/v15/3qT5oiOhnSyU8TNFIdhZTice3hB_HWKsEnF--0XCHiKx1OtDT9HwTA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Old South Arabian" + } + ] + }, + { + "name": "Noto Sans Old Turkic", + "fontFamily": "Noto Sans Old Turkic, sans-serif", + "slug": "noto-sans-old-turkic", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansoldturkic/v15/yMJNMJVya43H0SUF_WmcGEQVqoEMKDKbsE2RjEw-Vyws.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Old Turkic" + } + ] + }, + { + "name": "Noto Sans Oriya", + "fontFamily": "Noto Sans Oriya, sans-serif", + "slug": "noto-sans-oriya", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansoriya/v27/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5Ivj0fq_c6LhHBRe-.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans Oriya" + }, + { + "src": "http://fonts.gstatic.com/s/notosansoriya/v27/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5Ivh0f6_c6LhHBRe-.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Sans Oriya" + }, + { + "src": "http://fonts.gstatic.com/s/notosansoriya/v27/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5Iviqf6_c6LhHBRe-.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans Oriya" + }, + { + "src": "http://fonts.gstatic.com/s/notosansoriya/v27/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5Ivj0f6_c6LhHBRe-.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Oriya" + }, + { + "src": "http://fonts.gstatic.com/s/notosansoriya/v27/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5IvjGf6_c6LhHBRe-.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Oriya" + }, + { + "src": "http://fonts.gstatic.com/s/notosansoriya/v27/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5IvgqeK_c6LhHBRe-.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Oriya" + }, + { + "src": "http://fonts.gstatic.com/s/notosansoriya/v27/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5IvgTeK_c6LhHBRe-.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Oriya" + }, + { + "src": "http://fonts.gstatic.com/s/notosansoriya/v27/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5Ivh0eK_c6LhHBRe-.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Sans Oriya" + }, + { + "src": "http://fonts.gstatic.com/s/notosansoriya/v27/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5IvhdeK_c6LhHBRe-.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans Oriya" + } + ] + }, + { + "name": "Noto Sans Osage", + "fontFamily": "Noto Sans Osage, sans-serif", + "slug": "noto-sans-osage", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansosage/v18/oPWX_kB6kP4jCuhpgEGmw4mtAVtXRlaSxkrMCQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Osage" + } + ] + }, + { + "name": "Noto Sans Osmanya", + "fontFamily": "Noto Sans Osmanya, sans-serif", + "slug": "noto-sans-osmanya", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansosmanya/v18/8vIS7xs32H97qzQKnzfeWzUyUpOJmz6kR47NCV5Z.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Osmanya" + } + ] + }, + { + "name": "Noto Sans Pahawh Hmong", + "fontFamily": "Noto Sans Pahawh Hmong, sans-serif", + "slug": "noto-sans-pahawh-hmong", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanspahawhhmong/v18/bWtp7e_KfBziStx7lIzKKaMUOBEA3UPQDW7krzc_c48aMpM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Pahawh Hmong" + } + ] + }, + { + "name": "Noto Sans Palmyrene", + "fontFamily": "Noto Sans Palmyrene, sans-serif", + "slug": "noto-sans-palmyrene", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanspalmyrene/v15/ZgNPjOdKPa7CHqq0h37c_ASCWvH93SFCPnK5ZpdNtcA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Palmyrene" + } + ] + }, + { + "name": "Noto Sans Pau Cin Hau", + "fontFamily": "Noto Sans Pau Cin Hau, sans-serif", + "slug": "noto-sans-pau-cin-hau", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanspaucinhau/v20/x3d-cl3IZKmUqiMg_9wBLLtzl22EayN7ehIdjEWqKMxsKw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Pau Cin Hau" + } + ] + }, + { + "name": "Noto Sans Phags Pa", + "fontFamily": "Noto Sans Phags Pa, sans-serif", + "slug": "noto-sans-phags-pa", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansphagspa/v15/pxiZyoo6v8ZYyWh5WuPeJzMkd4SrGChkqkSsrvNXiA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Phags Pa" + } + ] + }, + { + "name": "Noto Sans Phoenician", + "fontFamily": "Noto Sans Phoenician, sans-serif", + "slug": "noto-sans-phoenician", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansphoenician/v15/jizFRF9Ksm4Bt9PvcTaEkIHiTVtxmFtS5X7Jot-p5561.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Phoenician" + } + ] + }, + { + "name": "Noto Sans Psalter Pahlavi", + "fontFamily": "Noto Sans Psalter Pahlavi, sans-serif", + "slug": "noto-sans-psalter-pahlavi", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanspsalterpahlavi/v15/rP2Vp3K65FkAtHfwd-eISGznYihzggmsicPfud3w1G3KsUQBct4.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Psalter Pahlavi" + } + ] + }, + { + "name": "Noto Sans Rejang", + "fontFamily": "Noto Sans Rejang, sans-serif", + "slug": "noto-sans-rejang", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansrejang/v18/Ktk2AKuMeZjqPnXgyqrib7DIogqwN4O3WYZB_sU.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Rejang" + } + ] + }, + { + "name": "Noto Sans Runic", + "fontFamily": "Noto Sans Runic, sans-serif", + "slug": "noto-sans-runic", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansrunic/v15/H4c_BXWPl9DZ0Xe_nHUaus7W68WWaxpvHtgIYg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Runic" + } + ] + }, + { + "name": "Noto Sans SC", + "fontFamily": "Noto Sans SC, sans-serif", + "slug": "noto-sans-sc", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanssc/v26/k3kJo84MPvpLmixcA63oeALZTYKL2wv287Sb.otf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans SC" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssc/v26/k3kIo84MPvpLmixcA63oeALZhaCt9yX6-q2CGg.otf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans SC" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssc/v26/k3kXo84MPvpLmixcA63oeALhL4iJ-Q7m8w.otf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans SC" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssc/v26/k3kIo84MPvpLmixcA63oeALZ3aGt9yX6-q2CGg.otf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans SC" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssc/v26/k3kIo84MPvpLmixcA63oeALZlaet9yX6-q2CGg.otf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans SC" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssc/v26/k3kIo84MPvpLmixcA63oeALZraWt9yX6-q2CGg.otf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans SC" + } + ] + }, + { + "name": "Noto Sans Samaritan", + "fontFamily": "Noto Sans Samaritan, sans-serif", + "slug": "noto-sans-samaritan", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanssamaritan/v15/buEqppe9f8_vkXadMBJJo0tSmaYjFkxOUo5jNlOVMzQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Samaritan" + } + ] + }, + { + "name": "Noto Sans Saurashtra", + "fontFamily": "Noto Sans Saurashtra, sans-serif", + "slug": "noto-sans-saurashtra", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanssaurashtra/v19/ea8GacQ0Wfz_XKWXe6OtoA8w8zvmYwTef9ndjhPTSIx9.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Saurashtra" + } + ] + }, + { + "name": "Noto Sans Sharada", + "fontFamily": "Noto Sans Sharada, sans-serif", + "slug": "noto-sans-sharada", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanssharada/v16/gok0H7rwAEdtF9N8-mdTGALG6p0kwoXLPOwr4H8a.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Sharada" + } + ] + }, + { + "name": "Noto Sans Shavian", + "fontFamily": "Noto Sans Shavian, sans-serif", + "slug": "noto-sans-shavian", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansshavian/v15/CHy5V_HZE0jxJBQlqAeCKjJvQBNF4EFQSplv2Cwg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Shavian" + } + ] + }, + { + "name": "Noto Sans Siddham", + "fontFamily": "Noto Sans Siddham, sans-serif", + "slug": "noto-sans-siddham", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanssiddham/v17/OZpZg-FwqiNLe9PELUikxTWDoCCeGqndk3Ic92ZH.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Siddham" + } + ] + }, + { + "name": "Noto Sans SignWriting", + "fontFamily": "Noto Sans SignWriting, sans-serif", + "slug": "noto-sans-signwriting", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanssignwriting/v1/Noas6VX_wIWFbTTCrYmvy9A2UnkL-2SZAWiUEVCARYQemg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans SignWriting" + } + ] + }, + { + "name": "Noto Sans Sinhala", + "fontFamily": "Noto Sans Sinhala, sans-serif", + "slug": "noto-sans-sinhala", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanssinhala/v26/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwg2b5lgLpJwbQRM.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans Sinhala" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssinhala/v26/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwo2a5lgLpJwbQRM.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Sans Sinhala" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssinhala/v26/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwlOa5lgLpJwbQRM.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans Sinhala" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssinhala/v26/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwg2a5lgLpJwbQRM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Sinhala" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssinhala/v26/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwj-a5lgLpJwbQRM.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Sinhala" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssinhala/v26/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwtOd5lgLpJwbQRM.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Sinhala" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssinhala/v26/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwuqd5lgLpJwbQRM.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Sinhala" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssinhala/v26/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwo2d5lgLpJwbQRM.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Sans Sinhala" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssinhala/v26/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwqSd5lgLpJwbQRM.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans Sinhala" + } + ] + }, + { + "name": "Noto Sans Sogdian", + "fontFamily": "Noto Sans Sogdian, sans-serif", + "slug": "noto-sans-sogdian", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanssogdian/v15/taiQGn5iC4--qtsfi4Jp6eHPnfxQBo--Pm6KHidM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Sogdian" + } + ] + }, + { + "name": "Noto Sans Sora Sompeng", + "fontFamily": "Noto Sans Sora Sompeng, sans-serif", + "slug": "noto-sans-sora-sompeng", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanssorasompeng/v24/PlIRFkO5O6RzLfvNNVSioxM2_OTrEhPyDLolKvCsHzCxWuGkYHR818DpZXJQd4Mu.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Sora Sompeng" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssorasompeng/v24/PlIRFkO5O6RzLfvNNVSioxM2_OTrEhPyDLolKvCsHzCxWuGkYHRO18DpZXJQd4Mu.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Sora Sompeng" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssorasompeng/v24/PlIRFkO5O6RzLfvNNVSioxM2_OTrEhPyDLolKvCsHzCxWuGkYHSi0MDpZXJQd4Mu.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Sora Sompeng" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssorasompeng/v24/PlIRFkO5O6RzLfvNNVSioxM2_OTrEhPyDLolKvCsHzCxWuGkYHSb0MDpZXJQd4Mu.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Sora Sompeng" + } + ] + }, + { + "name": "Noto Sans Soyombo", + "fontFamily": "Noto Sans Soyombo, sans-serif", + "slug": "noto-sans-soyombo", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanssoyombo/v15/RWmSoL-Y6-8q5LTtXs6MF6q7xsxgY0FrIFOcK25W.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Soyombo" + } + ] + }, + { + "name": "Noto Sans Sundanese", + "fontFamily": "Noto Sans Sundanese, sans-serif", + "slug": "noto-sans-sundanese", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanssundanese/v24/FwZw7_84xUkosG2xJo2gm7nFwSLQkdymq2mkz3Gz1_b6ctxpNNHCizv7fQES.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Sundanese" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssundanese/v24/FwZw7_84xUkosG2xJo2gm7nFwSLQkdymq2mkz3Gz1_b6ctxbNNHCizv7fQES.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Sundanese" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssundanese/v24/FwZw7_84xUkosG2xJo2gm7nFwSLQkdymq2mkz3Gz1_b6cty3M9HCizv7fQES.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Sundanese" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssundanese/v24/FwZw7_84xUkosG2xJo2gm7nFwSLQkdymq2mkz3Gz1_b6ctyOM9HCizv7fQES.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Sundanese" + } + ] + }, + { + "name": "Noto Sans Syloti Nagri", + "fontFamily": "Noto Sans Syloti Nagri, sans-serif", + "slug": "noto-sans-syloti-nagri", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanssylotinagri/v20/uU9eCAQZ75uhfF9UoWDRiY3q7Sf_VFV3m4dGFVfxN87gsj0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Syloti Nagri" + } + ] + }, + { + "name": "Noto Sans Symbols", + "fontFamily": "Noto Sans Symbols, sans-serif", + "slug": "noto-sans-symbols", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanssymbols/v40/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3gfQ4gavVFRkzrbQ.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans Symbols" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssymbols/v40/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3g_Q8gavVFRkzrbQ.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Sans Symbols" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssymbols/v40/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3gIw8gavVFRkzrbQ.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans Symbols" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssymbols/v40/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3gfQ8gavVFRkzrbQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Symbols" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssymbols/v40/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3gTw8gavVFRkzrbQ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Symbols" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssymbols/v40/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3gowggavVFRkzrbQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Symbols" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssymbols/v40/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3gmgggavVFRkzrbQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Symbols" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssymbols/v40/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3g_QggavVFRkzrbQ.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Sans Symbols" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssymbols/v40/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3g1AggavVFRkzrbQ.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans Symbols" + } + ] + }, + { + "name": "Noto Sans Symbols 2", + "fontFamily": "Noto Sans Symbols 2, sans-serif", + "slug": "noto-sans-symbols-2", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanssymbols2/v19/I_uyMoGduATTei9eI8daxVHDyfisHr71ypPqfX71-AI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Symbols 2" + } + ] + }, + { + "name": "Noto Sans Syriac", + "fontFamily": "Noto Sans Syriac, sans-serif", + "slug": "noto-sans-syriac", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanssyriac/v16/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-VD9caJyZfUL_FC.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans Syriac" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssyriac/v16/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-XD9MaJyZfUL_FC.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Sans Syriac" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssyriac/v16/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-Ud9MaJyZfUL_FC.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans Syriac" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssyriac/v16/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-VD9MaJyZfUL_FC.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Syriac" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssyriac/v16/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-Vx9MaJyZfUL_FC.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Syriac" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssyriac/v16/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-Wd88aJyZfUL_FC.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Syriac" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssyriac/v16/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-Wk88aJyZfUL_FC.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Syriac" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssyriac/v16/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-XD88aJyZfUL_FC.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Sans Syriac" + }, + { + "src": "http://fonts.gstatic.com/s/notosanssyriac/v16/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-Xq88aJyZfUL_FC.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans Syriac" + } + ] + }, + { + "name": "Noto Sans TC", + "fontFamily": "Noto Sans TC, sans-serif", + "slug": "noto-sans-tc", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanstc/v26/-nFlOG829Oofr2wohFbTp9i9WyEJIfNZ1sjy.otf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans TC" + }, + { + "src": "http://fonts.gstatic.com/s/notosanstc/v26/-nFkOG829Oofr2wohFbTp9i9kwMvDd1V39Hr7g.otf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans TC" + }, + { + "src": "http://fonts.gstatic.com/s/notosanstc/v26/-nF7OG829Oofr2wohFbTp9iFOSsLA_ZJ1g.otf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans TC" + }, + { + "src": "http://fonts.gstatic.com/s/notosanstc/v26/-nFkOG829Oofr2wohFbTp9i9ywIvDd1V39Hr7g.otf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans TC" + }, + { + "src": "http://fonts.gstatic.com/s/notosanstc/v26/-nFkOG829Oofr2wohFbTp9i9gwQvDd1V39Hr7g.otf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans TC" + }, + { + "src": "http://fonts.gstatic.com/s/notosanstc/v26/-nFkOG829Oofr2wohFbTp9i9uwYvDd1V39Hr7g.otf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans TC" + } + ] + }, + { + "name": "Noto Sans Tagalog", + "fontFamily": "Noto Sans Tagalog, sans-serif", + "slug": "noto-sans-tagalog", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanstagalog/v18/J7aFnoNzCnFcV9ZI-sUYuvote1R0wwEAA8jHexnL.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Tagalog" + } + ] + }, + { + "name": "Noto Sans Tagbanwa", + "fontFamily": "Noto Sans Tagbanwa, sans-serif", + "slug": "noto-sans-tagbanwa", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanstagbanwa/v18/Y4GWYbB8VTEp4t3MKJSMmQdIKjRtt_nZRjQEaYpGoQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Tagbanwa" + } + ] + }, + { + "name": "Noto Sans Tai Le", + "fontFamily": "Noto Sans Tai Le, sans-serif", + "slug": "noto-sans-tai-le", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanstaile/v17/vEFK2-VODB8RrNDvZSUmVxEATwR58tK1W77HtMo.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Tai Le" + } + ] + }, + { + "name": "Noto Sans Tai Tham", + "fontFamily": "Noto Sans Tai Tham, sans-serif", + "slug": "noto-sans-tai-tham", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanstaitham/v19/kJEbBv0U4hgtwxDUw2x9q7tbjLIfbPGHBoaVSAZ3MdLJBCUbPgquyaRGKMw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Tai Tham" + }, + { + "src": "http://fonts.gstatic.com/s/notosanstaitham/v19/kJEbBv0U4hgtwxDUw2x9q7tbjLIfbPGHBoaVSAZ3MdLJBBcbPgquyaRGKMw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Tai Tham" + }, + { + "src": "http://fonts.gstatic.com/s/notosanstaitham/v19/kJEbBv0U4hgtwxDUw2x9q7tbjLIfbPGHBoaVSAZ3MdLJBPscPgquyaRGKMw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Tai Tham" + }, + { + "src": "http://fonts.gstatic.com/s/notosanstaitham/v19/kJEbBv0U4hgtwxDUw2x9q7tbjLIfbPGHBoaVSAZ3MdLJBMIcPgquyaRGKMw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Tai Tham" + } + ] + }, + { + "name": "Noto Sans Tai Viet", + "fontFamily": "Noto Sans Tai Viet, sans-serif", + "slug": "noto-sans-tai-viet", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanstaiviet/v16/8QIUdj3HhN_lv4jf9vsE-9GMOLsaSPZr644fWsRO9w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Tai Viet" + } + ] + }, + { + "name": "Noto Sans Takri", + "fontFamily": "Noto Sans Takri, sans-serif", + "slug": "noto-sans-takri", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanstakri/v21/TuGJUVpzXI5FBtUq5a8bnKIOdTwQNO_W3khJXg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Takri" + } + ] + }, + { + "name": "Noto Sans Tamil", + "fontFamily": "Noto Sans Tamil, sans-serif", + "slug": "noto-sans-tamil", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanstamil/v27/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7vGor0RqKDt_EvT.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/notosanstamil/v27/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7tGo70RqKDt_EvT.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Sans Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/notosanstamil/v27/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7uYo70RqKDt_EvT.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/notosanstamil/v27/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7vGo70RqKDt_EvT.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/notosanstamil/v27/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7v0o70RqKDt_EvT.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/notosanstamil/v27/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7sYpL0RqKDt_EvT.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/notosanstamil/v27/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7shpL0RqKDt_EvT.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/notosanstamil/v27/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7tGpL0RqKDt_EvT.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Sans Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/notosanstamil/v27/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7tvpL0RqKDt_EvT.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans Tamil" + } + ] + }, + { + "name": "Noto Sans Tamil Supplement", + "fontFamily": "Noto Sans Tamil Supplement, sans-serif", + "slug": "noto-sans-tamil-supplement", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanstamilsupplement/v19/DdTz78kEtnooLS5rXF1DaruiCd_bFp_Ph4sGcn7ax_vsAeMkeq1x.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Tamil Supplement" + } + ] + }, + { + "name": "Noto Sans Tangsa", + "fontFamily": "Noto Sans Tangsa, sans-serif", + "slug": "noto-sans-tangsa", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanstangsa/v3/z7NCdQPmcigbbZAIOl9igP26K470lICpky0-peX5Qp1YkyoRYdplyJDA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Tangsa" + }, + { + "src": "http://fonts.gstatic.com/s/notosanstangsa/v3/z7NCdQPmcigbbZAIOl9igP26K470lICpky0-peX5Qp1qkyoRYdplyJDA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Tangsa" + }, + { + "src": "http://fonts.gstatic.com/s/notosanstangsa/v3/z7NCdQPmcigbbZAIOl9igP26K470lICpky0-peX5Qp2GlCoRYdplyJDA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Tangsa" + }, + { + "src": "http://fonts.gstatic.com/s/notosanstangsa/v3/z7NCdQPmcigbbZAIOl9igP26K470lICpky0-peX5Qp2_lCoRYdplyJDA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Tangsa" + } + ] + }, + { + "name": "Noto Sans Telugu", + "fontFamily": "Noto Sans Telugu, sans-serif", + "slug": "noto-sans-telugu", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanstelugu/v25/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEntezfqQUbf-3v37w.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans Telugu" + }, + { + "src": "http://fonts.gstatic.com/s/notosanstelugu/v25/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEnt-zbqQUbf-3v37w.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Sans Telugu" + }, + { + "src": "http://fonts.gstatic.com/s/notosanstelugu/v25/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEntJTbqQUbf-3v37w.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans Telugu" + }, + { + "src": "http://fonts.gstatic.com/s/notosanstelugu/v25/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEntezbqQUbf-3v37w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Telugu" + }, + { + "src": "http://fonts.gstatic.com/s/notosanstelugu/v25/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEntSTbqQUbf-3v37w.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Telugu" + }, + { + "src": "http://fonts.gstatic.com/s/notosanstelugu/v25/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEntpTHqQUbf-3v37w.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Telugu" + }, + { + "src": "http://fonts.gstatic.com/s/notosanstelugu/v25/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEntnDHqQUbf-3v37w.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Telugu" + }, + { + "src": "http://fonts.gstatic.com/s/notosanstelugu/v25/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEnt-zHqQUbf-3v37w.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Sans Telugu" + }, + { + "src": "http://fonts.gstatic.com/s/notosanstelugu/v25/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEnt0jHqQUbf-3v37w.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans Telugu" + } + ] + }, + { + "name": "Noto Sans Thaana", + "fontFamily": "Noto Sans Thaana, sans-serif", + "slug": "noto-sans-thaana", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansthaana/v23/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4XrbxLhnu4-tbNu.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans Thaana" + }, + { + "src": "http://fonts.gstatic.com/s/notosansthaana/v23/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4VrbhLhnu4-tbNu.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Sans Thaana" + }, + { + "src": "http://fonts.gstatic.com/s/notosansthaana/v23/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4W1bhLhnu4-tbNu.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans Thaana" + }, + { + "src": "http://fonts.gstatic.com/s/notosansthaana/v23/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4XrbhLhnu4-tbNu.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Thaana" + }, + { + "src": "http://fonts.gstatic.com/s/notosansthaana/v23/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4XZbhLhnu4-tbNu.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Thaana" + }, + { + "src": "http://fonts.gstatic.com/s/notosansthaana/v23/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4U1aRLhnu4-tbNu.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Thaana" + }, + { + "src": "http://fonts.gstatic.com/s/notosansthaana/v23/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4UMaRLhnu4-tbNu.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Thaana" + }, + { + "src": "http://fonts.gstatic.com/s/notosansthaana/v23/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4VraRLhnu4-tbNu.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Sans Thaana" + }, + { + "src": "http://fonts.gstatic.com/s/notosansthaana/v23/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4VCaRLhnu4-tbNu.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans Thaana" + } + ] + }, + { + "name": "Noto Sans Thai", + "fontFamily": "Noto Sans Thai, sans-serif", + "slug": "noto-sans-thai", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansthai/v20/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdU5RspzF-QRvzzXg.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans Thai" + }, + { + "src": "http://fonts.gstatic.com/s/notosansthai/v20/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdUxRtpzF-QRvzzXg.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Sans Thai" + }, + { + "src": "http://fonts.gstatic.com/s/notosansthai/v20/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdU8ptpzF-QRvzzXg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans Thai" + }, + { + "src": "http://fonts.gstatic.com/s/notosansthai/v20/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdU5RtpzF-QRvzzXg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Thai" + }, + { + "src": "http://fonts.gstatic.com/s/notosansthai/v20/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdU6ZtpzF-QRvzzXg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Thai" + }, + { + "src": "http://fonts.gstatic.com/s/notosansthai/v20/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdU0pqpzF-QRvzzXg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Thai" + }, + { + "src": "http://fonts.gstatic.com/s/notosansthai/v20/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdU3NqpzF-QRvzzXg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Thai" + }, + { + "src": "http://fonts.gstatic.com/s/notosansthai/v20/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdUxRqpzF-QRvzzXg.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Sans Thai" + }, + { + "src": "http://fonts.gstatic.com/s/notosansthai/v20/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdUz1qpzF-QRvzzXg.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans Thai" + } + ] + }, + { + "name": "Noto Sans Thai Looped", + "fontFamily": "Noto Sans Thai Looped, sans-serif", + "slug": "noto-sans-thai-looped", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansthailooped/v14/B50fF6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R3YX6AYeCT_Wfd1.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Sans Thai Looped" + }, + { + "src": "http://fonts.gstatic.com/s/notosansthailooped/v14/B50cF6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R3Y84E4UgrzUO5sKA.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Sans Thai Looped" + }, + { + "src": "http://fonts.gstatic.com/s/notosansthailooped/v14/B50cF6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R3Yl4I4UgrzUO5sKA.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Sans Thai Looped" + }, + { + "src": "http://fonts.gstatic.com/s/notosansthailooped/v14/B50RF6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R3gO6ocWiHvWQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Thai Looped" + }, + { + "src": "http://fonts.gstatic.com/s/notosansthailooped/v14/B50cF6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R3Yz4M4UgrzUO5sKA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Sans Thai Looped" + }, + { + "src": "http://fonts.gstatic.com/s/notosansthailooped/v14/B50cF6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R3Y44Q4UgrzUO5sKA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Sans Thai Looped" + }, + { + "src": "http://fonts.gstatic.com/s/notosansthailooped/v14/B50cF6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R3Yh4U4UgrzUO5sKA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Sans Thai Looped" + }, + { + "src": "http://fonts.gstatic.com/s/notosansthailooped/v14/B50cF6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R3Ym4Y4UgrzUO5sKA.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Sans Thai Looped" + }, + { + "src": "http://fonts.gstatic.com/s/notosansthailooped/v14/B50cF6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R3Yv4c4UgrzUO5sKA.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Sans Thai Looped" + } + ] + }, + { + "name": "Noto Sans Tifinagh", + "fontFamily": "Noto Sans Tifinagh, sans-serif", + "slug": "noto-sans-tifinagh", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanstifinagh/v17/I_uzMoCduATTei9eI8dawkHIwvmhCvbn6rnEcXfs4Q.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Tifinagh" + } + ] + }, + { + "name": "Noto Sans Tirhuta", + "fontFamily": "Noto Sans Tirhuta, sans-serif", + "slug": "noto-sans-tirhuta", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanstirhuta/v15/t5t6IQYRNJ6TWjahPR6X-M-apUyby7uGUBsTrn5P.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Tirhuta" + } + ] + }, + { + "name": "Noto Sans Ugaritic", + "fontFamily": "Noto Sans Ugaritic, sans-serif", + "slug": "noto-sans-ugaritic", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansugaritic/v16/3qTwoiqhnSyU8TNFIdhZVCwbjCpkAXXkMhoIkiazfg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Ugaritic" + } + ] + }, + { + "name": "Noto Sans Vai", + "fontFamily": "Noto Sans Vai, sans-serif", + "slug": "noto-sans-vai", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansvai/v17/NaPecZTSBuhTirw6IaFn_UrURMTsDIRSfr0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Vai" + } + ] + }, + { + "name": "Noto Sans Wancho", + "fontFamily": "Noto Sans Wancho, sans-serif", + "slug": "noto-sans-wancho", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanswancho/v17/zrf-0GXXyfn6Fs0lH9P4cUubP0GBqAPopiRfKp8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Wancho" + } + ] + }, + { + "name": "Noto Sans Warang Citi", + "fontFamily": "Noto Sans Warang Citi, sans-serif", + "slug": "noto-sans-warang-citi", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanswarangciti/v17/EYqtmb9SzL1YtsZSScyKDXIeOv3w-zgsNvKRpeVCCXzdgA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Warang Citi" + } + ] + }, + { + "name": "Noto Sans Yi", + "fontFamily": "Noto Sans Yi, sans-serif", + "slug": "noto-sans-yi", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosansyi/v19/sJoD3LFXjsSdcnzn071rO3apxVDJNVgSNg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Yi" + } + ] + }, + { + "name": "Noto Sans Zanabazar Square", + "fontFamily": "Noto Sans Zanabazar Square, sans-serif", + "slug": "noto-sans-zanabazar-square", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notosanszanabazarsquare/v16/Cn-jJsuGWQxOjaGwMQ6fOicyxLBEMRfDtkzl4uagQtJxOCEgN0Gc.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Sans Zanabazar Square" + } + ] + }, + { + "name": "Noto Serif", + "fontFamily": "Noto Serif, serif", + "slug": "noto-serif", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZqFGjwM0Lhq_Szw.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZKFCjwM0Lhq_Szw.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZ9lCjwM0Lhq_Szw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZqFCjwM0Lhq_Szw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZmlCjwM0Lhq_Szw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZdlejwM0Lhq_Szw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZT1ejwM0Lhq_Szw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZKFejwM0Lhq_Szw.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZAVejwM0Lhq_Szw.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBNLgscPpKrCzyUi.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Noto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBPLg8cPpKrCzyUi.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Noto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBMVg8cPpKrCzyUi.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Noto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBNLg8cPpKrCzyUi.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Noto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBN5g8cPpKrCzyUi.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Noto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBOVhMcPpKrCzyUi.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Noto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBOshMcPpKrCzyUi.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Noto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBPLhMcPpKrCzyUi.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Noto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBPihMcPpKrCzyUi.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Noto Serif" + } + ] + }, + { + "name": "Noto Serif Ahom", + "fontFamily": "Noto Serif Ahom, serif", + "slug": "noto-serif-ahom", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoserifahom/v19/FeVIS0hfp6cprmEUffAW_fUL_AN-wuYrPFiwaw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif Ahom" + } + ] + }, + { + "name": "Noto Serif Armenian", + "fontFamily": "Noto Serif Armenian, serif", + "slug": "noto-serif-armenian", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoserifarmenian/v25/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZi8ObxvXagGdkbg.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Serif Armenian" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifarmenian/v25/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZC8KbxvXagGdkbg.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Serif Armenian" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifarmenian/v25/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZ1cKbxvXagGdkbg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Serif Armenian" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifarmenian/v25/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZi8KbxvXagGdkbg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif Armenian" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifarmenian/v25/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZucKbxvXagGdkbg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Serif Armenian" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifarmenian/v25/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZVcWbxvXagGdkbg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Serif Armenian" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifarmenian/v25/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZbMWbxvXagGdkbg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Serif Armenian" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifarmenian/v25/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZC8WbxvXagGdkbg.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Serif Armenian" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifarmenian/v25/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZIsWbxvXagGdkbg.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Serif Armenian" + } + ] + }, + { + "name": "Noto Serif Balinese", + "fontFamily": "Noto Serif Balinese, serif", + "slug": "noto-serif-balinese", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoserifbalinese/v18/QdVKSS0-JginysQSRvuCmUMB_wVeQAxXRbgJdhapcUU.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif Balinese" + } + ] + }, + { + "name": "Noto Serif Bengali", + "fontFamily": "Noto Serif Bengali, serif", + "slug": "noto-serif-bengali", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoserifbengali/v19/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JfcAH3qn4LjQH8yD.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Serif Bengali" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifbengali/v19/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JfeAHnqn4LjQH8yD.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Serif Bengali" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifbengali/v19/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JfdeHnqn4LjQH8yD.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Serif Bengali" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifbengali/v19/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JfcAHnqn4LjQH8yD.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif Bengali" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifbengali/v19/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JfcyHnqn4LjQH8yD.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Serif Bengali" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifbengali/v19/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JffeGXqn4LjQH8yD.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Serif Bengali" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifbengali/v19/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JffnGXqn4LjQH8yD.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Serif Bengali" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifbengali/v19/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JfeAGXqn4LjQH8yD.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Serif Bengali" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifbengali/v19/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JfepGXqn4LjQH8yD.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Serif Bengali" + } + ] + }, + { + "name": "Noto Serif Devanagari", + "fontFamily": "Noto Serif Devanagari, serif", + "slug": "noto-serif-devanagari", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoserifdevanagari/v28/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTA-og-HMUe1u_dv.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Serif Devanagari" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifdevanagari/v28/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTC-ow-HMUe1u_dv.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Serif Devanagari" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifdevanagari/v28/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTBgow-HMUe1u_dv.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Serif Devanagari" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifdevanagari/v28/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTA-ow-HMUe1u_dv.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif Devanagari" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifdevanagari/v28/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTAMow-HMUe1u_dv.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Serif Devanagari" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifdevanagari/v28/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTDgpA-HMUe1u_dv.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Serif Devanagari" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifdevanagari/v28/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTDZpA-HMUe1u_dv.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Serif Devanagari" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifdevanagari/v28/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTC-pA-HMUe1u_dv.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Serif Devanagari" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifdevanagari/v28/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTCXpA-HMUe1u_dv.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Serif Devanagari" + } + ] + }, + { + "name": "Noto Serif Display", + "fontFamily": "Noto Serif Display, serif", + "slug": "noto-serif-display", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVpd49gKaDU9hvzC.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Serif Display" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVrd4tgKaDU9hvzC.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Serif Display" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVoD4tgKaDU9hvzC.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Serif Display" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVpd4tgKaDU9hvzC.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif Display" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVpv4tgKaDU9hvzC.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Serif Display" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVqD5dgKaDU9hvzC.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Serif Display" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVq65dgKaDU9hvzC.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Serif Display" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVrd5dgKaDU9hvzC.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Serif Display" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVr05dgKaDU9hvzC.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Serif Display" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-VoTBIYjEfg-zCmf4.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Noto Serif Display" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-VobBJYjEfg-zCmf4.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Noto Serif Display" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-VoW5JYjEfg-zCmf4.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Noto Serif Display" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-VoTBJYjEfg-zCmf4.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Noto Serif Display" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-VoQJJYjEfg-zCmf4.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Noto Serif Display" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-Voe5OYjEfg-zCmf4.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Noto Serif Display" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-VoddOYjEfg-zCmf4.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Noto Serif Display" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-VobBOYjEfg-zCmf4.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Noto Serif Display" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-VoZlOYjEfg-zCmf4.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Noto Serif Display" + } + ] + }, + { + "name": "Noto Serif Dogra", + "fontFamily": "Noto Serif Dogra, serif", + "slug": "noto-serif-dogra", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoserifdogra/v16/MQpP-XquKMC7ROPP3QOOlm7xPu3fGy63IbPzkns.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif Dogra" + } + ] + }, + { + "name": "Noto Serif Ethiopic", + "fontFamily": "Noto Serif Ethiopic, serif", + "slug": "noto-serif-ethiopic", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoserifethiopic/v23/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCzSQjkaO9UVLyiw.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Serif Ethiopic" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifethiopic/v23/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCTSUjkaO9UVLyiw.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Serif Ethiopic" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifethiopic/v23/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCkyUjkaO9UVLyiw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Serif Ethiopic" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifethiopic/v23/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCzSUjkaO9UVLyiw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif Ethiopic" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifethiopic/v23/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxC_yUjkaO9UVLyiw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Serif Ethiopic" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifethiopic/v23/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCEyIjkaO9UVLyiw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Serif Ethiopic" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifethiopic/v23/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCKiIjkaO9UVLyiw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Serif Ethiopic" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifethiopic/v23/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCTSIjkaO9UVLyiw.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Serif Ethiopic" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifethiopic/v23/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCZCIjkaO9UVLyiw.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Serif Ethiopic" + } + ] + }, + { + "name": "Noto Serif Georgian", + "fontFamily": "Noto Serif Georgian, serif", + "slug": "noto-serif-georgian", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoserifgeorgian/v24/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSTvsfdzTw-FgZxQ.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Serif Georgian" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifgeorgian/v24/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSzvofdzTw-FgZxQ.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Serif Georgian" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifgeorgian/v24/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSEPofdzTw-FgZxQ.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Serif Georgian" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifgeorgian/v24/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSTvofdzTw-FgZxQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif Georgian" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifgeorgian/v24/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSfPofdzTw-FgZxQ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Serif Georgian" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifgeorgian/v24/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSkP0fdzTw-FgZxQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Serif Georgian" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifgeorgian/v24/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSqf0fdzTw-FgZxQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Serif Georgian" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifgeorgian/v24/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSzv0fdzTw-FgZxQ.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Serif Georgian" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifgeorgian/v24/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aS5_0fdzTw-FgZxQ.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Serif Georgian" + } + ] + }, + { + "name": "Noto Serif Grantha", + "fontFamily": "Noto Serif Grantha, serif", + "slug": "noto-serif-grantha", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoserifgrantha/v19/qkBIXuEH5NzDDvc3fLDYxPk9-Wq3WLiqFENLR7fHGw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif Grantha" + } + ] + }, + { + "name": "Noto Serif Gujarati", + "fontFamily": "Noto Serif Gujarati, serif", + "slug": "noto-serif-gujarati", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoserifgujarati/v26/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2HuYycYzuM1Kf-OJu.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Serif Gujarati" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifgujarati/v26/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2HuaycIzuM1Kf-OJu.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Serif Gujarati" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifgujarati/v26/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2HuZscIzuM1Kf-OJu.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Serif Gujarati" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifgujarati/v26/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2HuYycIzuM1Kf-OJu.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif Gujarati" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifgujarati/v26/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2HuYAcIzuM1Kf-OJu.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Serif Gujarati" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifgujarati/v26/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2Hubsd4zuM1Kf-OJu.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Serif Gujarati" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifgujarati/v26/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2HubVd4zuM1Kf-OJu.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Serif Gujarati" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifgujarati/v26/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2Huayd4zuM1Kf-OJu.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Serif Gujarati" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifgujarati/v26/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2Huabd4zuM1Kf-OJu.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Serif Gujarati" + } + ] + }, + { + "name": "Noto Serif Gurmukhi", + "fontFamily": "Noto Serif Gurmukhi, serif", + "slug": "noto-serif-gurmukhi", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoserifgurmukhi/v20/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr6-eBTNmqVU7y6l.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Serif Gurmukhi" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifgurmukhi/v20/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr4-eRTNmqVU7y6l.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Serif Gurmukhi" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifgurmukhi/v20/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr7geRTNmqVU7y6l.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Serif Gurmukhi" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifgurmukhi/v20/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr6-eRTNmqVU7y6l.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif Gurmukhi" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifgurmukhi/v20/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr6MeRTNmqVU7y6l.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Serif Gurmukhi" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifgurmukhi/v20/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr5gfhTNmqVU7y6l.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Serif Gurmukhi" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifgurmukhi/v20/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr5ZfhTNmqVU7y6l.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Serif Gurmukhi" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifgurmukhi/v20/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr4-fhTNmqVU7y6l.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Serif Gurmukhi" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifgurmukhi/v20/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr4XfhTNmqVU7y6l.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Serif Gurmukhi" + } + ] + }, + { + "name": "Noto Serif HK", + "fontFamily": "Noto Serif HK, serif", + "slug": "noto-serif-hk", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoserifhk/v2/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMf-K2RmV9Su1M6i.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Serif HK" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifhk/v2/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMcgK2RmV9Su1M6i.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Serif HK" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifhk/v2/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMd-K2RmV9Su1M6i.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif HK" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifhk/v2/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMdMK2RmV9Su1M6i.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Serif HK" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifhk/v2/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMegLGRmV9Su1M6i.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Serif HK" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifhk/v2/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMeZLGRmV9Su1M6i.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Serif HK" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifhk/v2/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMf-LGRmV9Su1M6i.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Serif HK" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifhk/v2/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMfXLGRmV9Su1M6i.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Serif HK" + } + ] + }, + { + "name": "Noto Serif Hebrew", + "fontFamily": "Noto Serif Hebrew, serif", + "slug": "noto-serif-hebrew", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoserifhebrew/v25/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVAwTAG8_vlQxz24.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Serif Hebrew" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifhebrew/v25/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVIwSAG8_vlQxz24.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Serif Hebrew" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifhebrew/v25/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVFISAG8_vlQxz24.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Serif Hebrew" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifhebrew/v25/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVAwSAG8_vlQxz24.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif Hebrew" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifhebrew/v25/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVD4SAG8_vlQxz24.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Serif Hebrew" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifhebrew/v25/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVNIVAG8_vlQxz24.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Serif Hebrew" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifhebrew/v25/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVOsVAG8_vlQxz24.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Serif Hebrew" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifhebrew/v25/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVIwVAG8_vlQxz24.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Serif Hebrew" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifhebrew/v25/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVKUVAG8_vlQxz24.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Serif Hebrew" + } + ] + }, + { + "name": "Noto Serif JP", + "fontFamily": "Noto Serif JP, serif", + "slug": "noto-serif-jp", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoserifjp/v21/xn77YHs72GKoTvER4Gn3b5eMZBaPRkgfU8fEwb0.otf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Serif JP" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifjp/v21/xn77YHs72GKoTvER4Gn3b5eMZHKMRkgfU8fEwb0.otf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Serif JP" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifjp/v21/xn7mYHs72GKoTvER4Gn3b5eMXNikYkY0T84.otf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif JP" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifjp/v21/xn77YHs72GKoTvER4Gn3b5eMZCqNRkgfU8fEwb0.otf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Serif JP" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifjp/v21/xn77YHs72GKoTvER4Gn3b5eMZAaKRkgfU8fEwb0.otf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Serif JP" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifjp/v21/xn77YHs72GKoTvER4Gn3b5eMZGKLRkgfU8fEwb0.otf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Serif JP" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifjp/v21/xn77YHs72GKoTvER4Gn3b5eMZFqJRkgfU8fEwb0.otf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Serif JP" + } + ] + }, + { + "name": "Noto Serif KR", + "fontFamily": "Noto Serif KR, serif", + "slug": "noto-serif-kr", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoserifkr/v20/3JnmSDn90Gmq2mr3blnHaTZXTihC8O1ZNH1ahck.otf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Serif KR" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifkr/v20/3JnmSDn90Gmq2mr3blnHaTZXTkxB8O1ZNH1ahck.otf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Serif KR" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifkr/v20/3Jn7SDn90Gmq2mr3blnHaTZXduZp1ONyKHQ.otf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif KR" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifkr/v20/3JnmSDn90Gmq2mr3blnHaTZXThRA8O1ZNH1ahck.otf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Serif KR" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifkr/v20/3JnmSDn90Gmq2mr3blnHaTZXTjhH8O1ZNH1ahck.otf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Serif KR" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifkr/v20/3JnmSDn90Gmq2mr3blnHaTZXTlxG8O1ZNH1ahck.otf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Serif KR" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifkr/v20/3JnmSDn90Gmq2mr3blnHaTZXTmRE8O1ZNH1ahck.otf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Serif KR" + } + ] + }, + { + "name": "Noto Serif Kannada", + "fontFamily": "Noto Serif Kannada, serif", + "slug": "noto-serif-kannada", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoserifkannada/v26/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgcYCceRJ71svgcI.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Serif Kannada" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifkannada/v26/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgUYDceRJ71svgcI.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Serif Kannada" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifkannada/v26/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgZgDceRJ71svgcI.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Serif Kannada" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifkannada/v26/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgcYDceRJ71svgcI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif Kannada" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifkannada/v26/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgfQDceRJ71svgcI.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Serif Kannada" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifkannada/v26/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgRgEceRJ71svgcI.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Serif Kannada" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifkannada/v26/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgSEEceRJ71svgcI.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Serif Kannada" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifkannada/v26/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgUYEceRJ71svgcI.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Serif Kannada" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifkannada/v26/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgW8EceRJ71svgcI.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Serif Kannada" + } + ] + }, + { + "name": "Noto Serif Khmer", + "fontFamily": "Noto Serif Khmer, serif", + "slug": "noto-serif-khmer", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoserifkhmer/v23/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdN6B4wXEZK9Xo4xg.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Serif Khmer" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifkhmer/v23/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdNaB8wXEZK9Xo4xg.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Serif Khmer" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifkhmer/v23/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdNth8wXEZK9Xo4xg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Serif Khmer" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifkhmer/v23/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdN6B8wXEZK9Xo4xg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif Khmer" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifkhmer/v23/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdN2h8wXEZK9Xo4xg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Serif Khmer" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifkhmer/v23/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdNNhgwXEZK9Xo4xg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Serif Khmer" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifkhmer/v23/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdNDxgwXEZK9Xo4xg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Serif Khmer" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifkhmer/v23/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdNaBgwXEZK9Xo4xg.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Serif Khmer" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifkhmer/v23/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdNQRgwXEZK9Xo4xg.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Serif Khmer" + } + ] + }, + { + "name": "Noto Serif Khojki", + "fontFamily": "Noto Serif Khojki, serif", + "slug": "noto-serif-khojki", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoserifkhojki/v8/I_uHMoOduATTei9aP90ctmPGxP2rBKTM4mcQ5M3z9QMY0ghvyZ0Qtc5HAQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif Khojki" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifkhojki/v8/I_uHMoOduATTei9aP90ctmPGxP2rBKTM4mcQ5M3z9QMY4AhvyZ0Qtc5HAQ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Serif Khojki" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifkhojki/v8/I_uHMoOduATTei9aP90ctmPGxP2rBKTM4mcQ5M3z9QMYDA9vyZ0Qtc5HAQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Serif Khojki" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifkhojki/v8/I_uHMoOduATTei9aP90ctmPGxP2rBKTM4mcQ5M3z9QMYNQ9vyZ0Qtc5HAQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Serif Khojki" + } + ] + }, + { + "name": "Noto Serif Lao", + "fontFamily": "Noto Serif Lao, serif", + "slug": "noto-serif-lao", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoseriflao/v23/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VeMLrvOjlmyhHHQ.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Serif Lao" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriflao/v23/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VWMKrvOjlmyhHHQ.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Serif Lao" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriflao/v23/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8Vb0KrvOjlmyhHHQ.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Serif Lao" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriflao/v23/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VeMKrvOjlmyhHHQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif Lao" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriflao/v23/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VdEKrvOjlmyhHHQ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Serif Lao" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriflao/v23/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VT0NrvOjlmyhHHQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Serif Lao" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriflao/v23/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VQQNrvOjlmyhHHQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Serif Lao" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriflao/v23/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VWMNrvOjlmyhHHQ.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Serif Lao" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriflao/v23/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VUoNrvOjlmyhHHQ.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Serif Lao" + } + ] + }, + { + "name": "Noto Serif Malayalam", + "fontFamily": "Noto Serif Malayalam, serif", + "slug": "noto-serif-malayalam", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoserifmalayalam/v28/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1t-1fnVwHpQVySg.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Serif Malayalam" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifmalayalam/v28/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1N-xfnVwHpQVySg.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Serif Malayalam" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifmalayalam/v28/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL16exfnVwHpQVySg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Serif Malayalam" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifmalayalam/v28/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1t-xfnVwHpQVySg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif Malayalam" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifmalayalam/v28/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1hexfnVwHpQVySg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Serif Malayalam" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifmalayalam/v28/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1aetfnVwHpQVySg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Serif Malayalam" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifmalayalam/v28/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1UOtfnVwHpQVySg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Serif Malayalam" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifmalayalam/v28/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1N-tfnVwHpQVySg.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Serif Malayalam" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifmalayalam/v28/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1HutfnVwHpQVySg.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Serif Malayalam" + } + ] + }, + { + "name": "Noto Serif Myanmar", + "fontFamily": "Noto Serif Myanmar, serif", + "slug": "noto-serif-myanmar", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoserifmyanmar/v13/VuJudM7F2Yv76aBKKs-bHMQfAHUw3jnNwBDsU9X6RPzQ.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Serif Myanmar" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifmyanmar/v13/VuJvdM7F2Yv76aBKKs-bHMQfAHUw3jnNbDHMefv2TeXJng.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Serif Myanmar" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifmyanmar/v13/VuJvdM7F2Yv76aBKKs-bHMQfAHUw3jnNCDLMefv2TeXJng.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Serif Myanmar" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifmyanmar/v13/VuJsdM7F2Yv76aBKKs-bHMQfAHUw3jn1pBrocdDqRA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif Myanmar" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifmyanmar/v13/VuJvdM7F2Yv76aBKKs-bHMQfAHUw3jnNUDPMefv2TeXJng.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Serif Myanmar" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifmyanmar/v13/VuJvdM7F2Yv76aBKKs-bHMQfAHUw3jnNfDTMefv2TeXJng.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Serif Myanmar" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifmyanmar/v13/VuJvdM7F2Yv76aBKKs-bHMQfAHUw3jnNGDXMefv2TeXJng.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Serif Myanmar" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifmyanmar/v13/VuJvdM7F2Yv76aBKKs-bHMQfAHUw3jnNBDbMefv2TeXJng.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Serif Myanmar" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifmyanmar/v13/VuJvdM7F2Yv76aBKKs-bHMQfAHUw3jnNIDfMefv2TeXJng.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Serif Myanmar" + } + ] + }, + { + "name": "Noto Serif NP Hmong", + "fontFamily": "Noto Serif NP Hmong, serif", + "slug": "noto-serif-np-hmong", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoserifnphmong/v1/pONN1gItFMO79E4L1GPUi-2sixKHZyFj9Jy6_KhXPwzdvbjPhFLp3u0rVO-d.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif NP Hmong" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifnphmong/v1/pONN1gItFMO79E4L1GPUi-2sixKHZyFj9Jy6_KhXPwzdvbj9hFLp3u0rVO-d.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Serif NP Hmong" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifnphmong/v1/pONN1gItFMO79E4L1GPUi-2sixKHZyFj9Jy6_KhXPwzdvbgRg1Lp3u0rVO-d.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Serif NP Hmong" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifnphmong/v1/pONN1gItFMO79E4L1GPUi-2sixKHZyFj9Jy6_KhXPwzdvbgog1Lp3u0rVO-d.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Serif NP Hmong" + } + ] + }, + { + "name": "Noto Serif Oriya", + "fontFamily": "Noto Serif Oriya, serif", + "slug": "noto-serif-oriya", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoseriforiya/v4/MjQQmj56u-r69izk_LDqWN7w0cYByutv9qeWYrvLaxrc_Hy-v039MF1j.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif Oriya" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriforiya/v4/MjQQmj56u-r69izk_LDqWN7w0cYByutv9qeWYrvLaxru_Hy-v039MF1j.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Serif Oriya" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriforiya/v4/MjQQmj56u-r69izk_LDqWN7w0cYByutv9qeWYrvLaxoC-3y-v039MF1j.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Serif Oriya" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriforiya/v4/MjQQmj56u-r69izk_LDqWN7w0cYByutv9qeWYrvLaxo7-3y-v039MF1j.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Serif Oriya" + } + ] + }, + { + "name": "Noto Serif SC", + "fontFamily": "Noto Serif SC, serif", + "slug": "noto-serif-sc", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoserifsc/v22/H4c8BXePl9DZ0Xe7gG9cyOj7mm63SzZBEtERe7U.otf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Serif SC" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifsc/v22/H4c8BXePl9DZ0Xe7gG9cyOj7mgq0SzZBEtERe7U.otf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Serif SC" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifsc/v22/H4chBXePl9DZ0Xe7gG9cyOj7oqCcbzhqDtg.otf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif SC" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifsc/v22/H4c8BXePl9DZ0Xe7gG9cyOj7mlK1SzZBEtERe7U.otf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Serif SC" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifsc/v22/H4c8BXePl9DZ0Xe7gG9cyOj7mn6ySzZBEtERe7U.otf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Serif SC" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifsc/v22/H4c8BXePl9DZ0Xe7gG9cyOj7mhqzSzZBEtERe7U.otf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Serif SC" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifsc/v22/H4c8BXePl9DZ0Xe7gG9cyOj7miKxSzZBEtERe7U.otf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Serif SC" + } + ] + }, + { + "name": "Noto Serif Sinhala", + "fontFamily": "Noto Serif Sinhala, serif", + "slug": "noto-serif-sinhala", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoserifsinhala/v26/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pGxRlMsxaLRn3W-.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Serif Sinhala" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifsinhala/v26/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pExR1MsxaLRn3W-.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Serif Sinhala" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifsinhala/v26/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pHvR1MsxaLRn3W-.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Serif Sinhala" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifsinhala/v26/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pGxR1MsxaLRn3W-.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif Sinhala" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifsinhala/v26/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pGDR1MsxaLRn3W-.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Serif Sinhala" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifsinhala/v26/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pFvQFMsxaLRn3W-.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Serif Sinhala" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifsinhala/v26/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pFWQFMsxaLRn3W-.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Serif Sinhala" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifsinhala/v26/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pExQFMsxaLRn3W-.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Serif Sinhala" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifsinhala/v26/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pEYQFMsxaLRn3W-.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Serif Sinhala" + } + ] + }, + { + "name": "Noto Serif TC", + "fontFamily": "Noto Serif TC, serif", + "slug": "noto-serif-tc", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoseriftc/v23/XLY9IZb5bJNDGYxLBibeHZ0Bvr8vbX9GTsoOAX4.otf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Serif TC" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftc/v23/XLY9IZb5bJNDGYxLBibeHZ0BvtssbX9GTsoOAX4.otf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Serif TC" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftc/v23/XLYgIZb5bJNDGYxLBibeHZ0BhnEESXFtUsM.otf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif TC" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftc/v23/XLY9IZb5bJNDGYxLBibeHZ0BvoMtbX9GTsoOAX4.otf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Serif TC" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftc/v23/XLY9IZb5bJNDGYxLBibeHZ0Bvq8qbX9GTsoOAX4.otf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Serif TC" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftc/v23/XLY9IZb5bJNDGYxLBibeHZ0BvssrbX9GTsoOAX4.otf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Serif TC" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftc/v23/XLY9IZb5bJNDGYxLBibeHZ0BvvMpbX9GTsoOAX4.otf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Serif TC" + } + ] + }, + { + "name": "Noto Serif Tamil", + "fontFamily": "Noto Serif Tamil, serif", + "slug": "noto-serif-tamil", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecattN6R8Pz3v8Etew.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Serif Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecatNN-R8Pz3v8Etew.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Serif Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecat6t-R8Pz3v8Etew.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Serif Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecattN-R8Pz3v8Etew.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecatht-R8Pz3v8Etew.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Serif Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecatatiR8Pz3v8Etew.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Serif Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecatU9iR8Pz3v8Etew.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Serif Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecatNNiR8Pz3v8Etew.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Serif Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecatHdiR8Pz3v8Etew.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Serif Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJx5svbzncQ9e3wx.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Noto Serif Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJz5s_bzncQ9e3wx.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Noto Serif Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJwns_bzncQ9e3wx.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Noto Serif Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJx5s_bzncQ9e3wx.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Noto Serif Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJxLs_bzncQ9e3wx.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Noto Serif Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJyntPbzncQ9e3wx.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Noto Serif Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJyetPbzncQ9e3wx.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Noto Serif Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJz5tPbzncQ9e3wx.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Noto Serif Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJzQtPbzncQ9e3wx.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Noto Serif Tamil" + } + ] + }, + { + "name": "Noto Serif Tangut", + "fontFamily": "Noto Serif Tangut, serif", + "slug": "noto-serif-tangut", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoseriftangut/v16/xn76YGc72GKoTvER4Gn3b4m9Ern7Em41fcvN2KT4.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif Tangut" + } + ] + }, + { + "name": "Noto Serif Telugu", + "fontFamily": "Noto Serif Telugu, serif", + "slug": "noto-serif-telugu", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoseriftelugu/v25/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9D9TGwuY2fjgrZYA.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Serif Telugu" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftelugu/v25/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9DdTCwuY2fjgrZYA.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Serif Telugu" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftelugu/v25/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9DqzCwuY2fjgrZYA.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Serif Telugu" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftelugu/v25/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9D9TCwuY2fjgrZYA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif Telugu" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftelugu/v25/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9DxzCwuY2fjgrZYA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Serif Telugu" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftelugu/v25/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9DKzewuY2fjgrZYA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Serif Telugu" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftelugu/v25/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9DEjewuY2fjgrZYA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Serif Telugu" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftelugu/v25/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9DdTewuY2fjgrZYA.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Serif Telugu" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftelugu/v25/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9DXDewuY2fjgrZYA.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Serif Telugu" + } + ] + }, + { + "name": "Noto Serif Thai", + "fontFamily": "Noto Serif Thai, serif", + "slug": "noto-serif-thai", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoserifthai/v19/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0oiFuRRCmsdu0Qx.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Serif Thai" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifthai/v19/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0qiF-RRCmsdu0Qx.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Serif Thai" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifthai/v19/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0p8F-RRCmsdu0Qx.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Serif Thai" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifthai/v19/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0oiF-RRCmsdu0Qx.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif Thai" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifthai/v19/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0oQF-RRCmsdu0Qx.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Serif Thai" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifthai/v19/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0r8EORRCmsdu0Qx.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Serif Thai" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifthai/v19/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0rFEORRCmsdu0Qx.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Serif Thai" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifthai/v19/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0qiEORRCmsdu0Qx.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Serif Thai" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifthai/v19/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0qLEORRCmsdu0Qx.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Serif Thai" + } + ] + }, + { + "name": "Noto Serif Tibetan", + "fontFamily": "Noto Serif Tibetan, serif", + "slug": "noto-serif-tibetan", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoseriftibetan/v22/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIrYdPS7rdSy_32c.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Noto Serif Tibetan" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftibetan/v22/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIjYcPS7rdSy_32c.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Noto Serif Tibetan" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftibetan/v22/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIugcPS7rdSy_32c.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Serif Tibetan" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftibetan/v22/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIrYcPS7rdSy_32c.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif Tibetan" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftibetan/v22/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIoQcPS7rdSy_32c.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Serif Tibetan" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftibetan/v22/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmImgbPS7rdSy_32c.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Serif Tibetan" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftibetan/v22/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIlEbPS7rdSy_32c.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Serif Tibetan" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftibetan/v22/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIjYbPS7rdSy_32c.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Noto Serif Tibetan" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftibetan/v22/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIh8bPS7rdSy_32c.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Noto Serif Tibetan" + } + ] + }, + { + "name": "Noto Serif Toto", + "fontFamily": "Noto Serif Toto, serif", + "slug": "noto-serif-toto", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoseriftoto/v4/Ktk6ALSMeZjqPnXk1rCkHYHNtwvtHItpjRP74dHhCy3Il-aj55vdNug.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif Toto" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftoto/v4/Ktk6ALSMeZjqPnXk1rCkHYHNtwvtHItpjRP74dHhCx_Il-aj55vdNug.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Serif Toto" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftoto/v4/Ktk6ALSMeZjqPnXk1rCkHYHNtwvtHItpjRP74dHhC_PPl-aj55vdNug.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Serif Toto" + }, + { + "src": "http://fonts.gstatic.com/s/notoseriftoto/v4/Ktk6ALSMeZjqPnXk1rCkHYHNtwvtHItpjRP74dHhC8rPl-aj55vdNug.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Serif Toto" + } + ] + }, + { + "name": "Noto Serif Yezidi", + "fontFamily": "Noto Serif Yezidi, serif", + "slug": "noto-serif-yezidi", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/notoserifyezidi/v16/XLYPIYr5bJNDGYxLBibeHZAn3B5KJENnQjbfhMSVZspD2yEkrlGJgmVCqg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Serif Yezidi" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifyezidi/v16/XLYPIYr5bJNDGYxLBibeHZAn3B5KJENnQjbfhMSVZspD6SEkrlGJgmVCqg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Serif Yezidi" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifyezidi/v16/XLYPIYr5bJNDGYxLBibeHZAn3B5KJENnQjbfhMSVZspDBSYkrlGJgmVCqg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Serif Yezidi" + }, + { + "src": "http://fonts.gstatic.com/s/notoserifyezidi/v16/XLYPIYr5bJNDGYxLBibeHZAn3B5KJENnQjbfhMSVZspDPCYkrlGJgmVCqg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Serif Yezidi" + } + ] + }, + { + "name": "Noto Traditional Nushu", + "fontFamily": "Noto Traditional Nushu, sans-serif", + "slug": "noto-traditional-nushu", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/nototraditionalnushu/v17/SZcV3EDkJ7q9FaoMPlmF4Su8hlIjoGh5aj67PUZX6ADm6oa8IXvy1tnPa7QoqirI.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Noto Traditional Nushu" + }, + { + "src": "http://fonts.gstatic.com/s/nototraditionalnushu/v17/SZcV3EDkJ7q9FaoMPlmF4Su8hlIjoGh5aj67PUZX6ADm6oa8IXus1tnPa7QoqirI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Noto Traditional Nushu" + }, + { + "src": "http://fonts.gstatic.com/s/nototraditionalnushu/v17/SZcV3EDkJ7q9FaoMPlmF4Su8hlIjoGh5aj67PUZX6ADm6oa8IXue1tnPa7QoqirI.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Noto Traditional Nushu" + }, + { + "src": "http://fonts.gstatic.com/s/nototraditionalnushu/v17/SZcV3EDkJ7q9FaoMPlmF4Su8hlIjoGh5aj67PUZX6ADm6oa8IXty0dnPa7QoqirI.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Noto Traditional Nushu" + }, + { + "src": "http://fonts.gstatic.com/s/nototraditionalnushu/v17/SZcV3EDkJ7q9FaoMPlmF4Su8hlIjoGh5aj67PUZX6ADm6oa8IXtL0dnPa7QoqirI.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Noto Traditional Nushu" + } + ] + }, + { + "name": "Nova Cut", + "fontFamily": "Nova Cut, system-ui", + "slug": "nova-cut", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/novacut/v24/KFOkCnSYu8mL-39LkWxPKTM1K9nz.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Nova Cut" + } + ] + }, + { + "name": "Nova Flat", + "fontFamily": "Nova Flat, system-ui", + "slug": "nova-flat", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/novaflat/v24/QdVUSTc-JgqpytEbVebEuStkm20oJA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Nova Flat" + } + ] + }, + { + "name": "Nova Mono", + "fontFamily": "Nova Mono, monospace", + "slug": "nova-mono", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/novamono/v18/Cn-0JtiGWQ5Ajb--MRKfYGxYrdM9Sg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Nova Mono" + } + ] + }, + { + "name": "Nova Oval", + "fontFamily": "Nova Oval, system-ui", + "slug": "nova-oval", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/novaoval/v24/jAnEgHdmANHvPenMaswCMY-h3cWkWg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Nova Oval" + } + ] + }, + { + "name": "Nova Round", + "fontFamily": "Nova Round, system-ui", + "slug": "nova-round", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/novaround/v21/flU9Rqquw5UhEnlwTJYTYYfeeetYEBc.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Nova Round" + } + ] + }, + { + "name": "Nova Script", + "fontFamily": "Nova Script, system-ui", + "slug": "nova-script", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/novascript/v25/7Au7p_IpkSWSTWaFWkumvmQNEl0O0kEx.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Nova Script" + } + ] + }, + { + "name": "Nova Slim", + "fontFamily": "Nova Slim, system-ui", + "slug": "nova-slim", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/novaslim/v24/Z9XUDmZNQAuem8jyZcn-yMOInrib9Q.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Nova Slim" + } + ] + }, + { + "name": "Nova Square", + "fontFamily": "Nova Square, system-ui", + "slug": "nova-square", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/novasquare/v20/RrQUbo9-9DV7b06QHgSWsZhARYMgGtWA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Nova Square" + } + ] + }, + { + "name": "Numans", + "fontFamily": "Numans, sans-serif", + "slug": "numans", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/numans/v15/SlGRmQmGupYAfH8IYRggiHVqaQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Numans" + } + ] + }, + { + "name": "Nunito", + "fontFamily": "Nunito, sans-serif", + "slug": "nunito", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/nunito/v25/XRXI3I6Li01BKofiOc5wtlZ2di8HDDshRTM9jo7eTWk.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Nunito" + }, + { + "src": "http://fonts.gstatic.com/s/nunito/v25/XRXI3I6Li01BKofiOc5wtlZ2di8HDOUhRTM9jo7eTWk.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Nunito" + }, + { + "src": "http://fonts.gstatic.com/s/nunito/v25/XRXI3I6Li01BKofiOc5wtlZ2di8HDLshRTM9jo7eTWk.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Nunito" + }, + { + "src": "http://fonts.gstatic.com/s/nunito/v25/XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhRTM9jo7eTWk.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Nunito" + }, + { + "src": "http://fonts.gstatic.com/s/nunito/v25/XRXI3I6Li01BKofiOc5wtlZ2di8HDGUmRTM9jo7eTWk.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Nunito" + }, + { + "src": "http://fonts.gstatic.com/s/nunito/v25/XRXI3I6Li01BKofiOc5wtlZ2di8HDFwmRTM9jo7eTWk.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Nunito" + }, + { + "src": "http://fonts.gstatic.com/s/nunito/v25/XRXI3I6Li01BKofiOc5wtlZ2di8HDDsmRTM9jo7eTWk.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Nunito" + }, + { + "src": "http://fonts.gstatic.com/s/nunito/v25/XRXI3I6Li01BKofiOc5wtlZ2di8HDBImRTM9jo7eTWk.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Nunito" + }, + { + "src": "http://fonts.gstatic.com/s/nunito/v25/XRXK3I6Li01BKofIMPyPbj8d7IEAGXNiLXA3iqzbXWnoeg.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Nunito" + }, + { + "src": "http://fonts.gstatic.com/s/nunito/v25/XRXK3I6Li01BKofIMPyPbj8d7IEAGXNi83A3iqzbXWnoeg.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Nunito" + }, + { + "src": "http://fonts.gstatic.com/s/nunito/v25/XRXK3I6Li01BKofIMPyPbj8d7IEAGXNirXA3iqzbXWnoeg.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Nunito" + }, + { + "src": "http://fonts.gstatic.com/s/nunito/v25/XRXK3I6Li01BKofIMPyPbj8d7IEAGXNin3A3iqzbXWnoeg.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Nunito" + }, + { + "src": "http://fonts.gstatic.com/s/nunito/v25/XRXK3I6Li01BKofIMPyPbj8d7IEAGXNic3c3iqzbXWnoeg.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Nunito" + }, + { + "src": "http://fonts.gstatic.com/s/nunito/v25/XRXK3I6Li01BKofIMPyPbj8d7IEAGXNiSnc3iqzbXWnoeg.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Nunito" + }, + { + "src": "http://fonts.gstatic.com/s/nunito/v25/XRXK3I6Li01BKofIMPyPbj8d7IEAGXNiLXc3iqzbXWnoeg.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Nunito" + }, + { + "src": "http://fonts.gstatic.com/s/nunito/v25/XRXK3I6Li01BKofIMPyPbj8d7IEAGXNiBHc3iqzbXWnoeg.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Nunito" + } + ] + }, + { + "name": "Nunito Sans", + "fontFamily": "Nunito Sans, sans-serif", + "slug": "nunito-sans", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/nunitosans/v15/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4GVilntF8kA_Ykqw.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Nunito Sans" + }, + { + "src": "http://fonts.gstatic.com/s/nunitosans/v15/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4GiClntF8kA_Ykqw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Nunito Sans" + }, + { + "src": "http://fonts.gstatic.com/s/nunitosans/v15/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4G1ilntF8kA_Ykqw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Nunito Sans" + }, + { + "src": "http://fonts.gstatic.com/s/nunitosans/v15/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4G5ClntF8kA_Ykqw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Nunito Sans" + }, + { + "src": "http://fonts.gstatic.com/s/nunitosans/v15/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4GCC5ntF8kA_Ykqw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Nunito Sans" + }, + { + "src": "http://fonts.gstatic.com/s/nunitosans/v15/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4GMS5ntF8kA_Ykqw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Nunito Sans" + }, + { + "src": "http://fonts.gstatic.com/s/nunitosans/v15/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4GVi5ntF8kA_Ykqw.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Nunito Sans" + }, + { + "src": "http://fonts.gstatic.com/s/nunitosans/v15/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4Gfy5ntF8kA_Ykqw.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Nunito Sans" + }, + { + "src": "http://fonts.gstatic.com/s/nunitosans/v15/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmoP91UgIfM0qxVd.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Nunito Sans" + }, + { + "src": "http://fonts.gstatic.com/s/nunitosans/v15/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmrR91UgIfM0qxVd.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Nunito Sans" + }, + { + "src": "http://fonts.gstatic.com/s/nunitosans/v15/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmqP91UgIfM0qxVd.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Nunito Sans" + }, + { + "src": "http://fonts.gstatic.com/s/nunitosans/v15/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmq991UgIfM0qxVd.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Nunito Sans" + }, + { + "src": "http://fonts.gstatic.com/s/nunitosans/v15/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmpR8FUgIfM0qxVd.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Nunito Sans" + }, + { + "src": "http://fonts.gstatic.com/s/nunitosans/v15/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmpo8FUgIfM0qxVd.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Nunito Sans" + }, + { + "src": "http://fonts.gstatic.com/s/nunitosans/v15/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmoP8FUgIfM0qxVd.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Nunito Sans" + }, + { + "src": "http://fonts.gstatic.com/s/nunitosans/v15/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmom8FUgIfM0qxVd.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Nunito Sans" + } + ] + }, + { + "name": "Nuosu SIL", + "fontFamily": "Nuosu SIL, serif", + "slug": "nuosu-sil", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/nuosusil/v6/8vIK7wM3wmRn_kc4uAjeFGxbO_zo-w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Nuosu SIL" + } + ] + }, + { + "name": "Odibee Sans", + "fontFamily": "Odibee Sans, system-ui", + "slug": "odibee-sans", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/odibeesans/v14/neIPzCSooYAho6WvjeToRYkyepH9qGsf.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Odibee Sans" + } + ] + }, + { + "name": "Odor Mean Chey", + "fontFamily": "Odor Mean Chey, serif", + "slug": "odor-mean-chey", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/odormeanchey/v27/raxkHiKDttkTe1aOGcJMR1A_4mrY2zqUKafv.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Odor Mean Chey" + } + ] + }, + { + "name": "Offside", + "fontFamily": "Offside, system-ui", + "slug": "offside", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/offside/v22/HI_KiYMWKa9QrAykQ5HiRp-dhpQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Offside" + } + ] + }, + { + "name": "Oi", + "fontFamily": "Oi, system-ui", + "slug": "oi", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/oi/v16/w8gXH2EuRqtaut6yjBOG.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Oi" + } + ] + }, + { + "name": "Old Standard TT", + "fontFamily": "Old Standard TT, serif", + "slug": "old-standard-tt", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/oldstandardtt/v18/MwQubh3o1vLImiwAVvYawgcf2eVurVC5RHdCZg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Old Standard TT" + }, + { + "src": "http://fonts.gstatic.com/s/oldstandardtt/v18/MwQsbh3o1vLImiwAVvYawgcf2eVer1q9ZnJSZtQG.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Old Standard TT" + }, + { + "src": "http://fonts.gstatic.com/s/oldstandardtt/v18/MwQrbh3o1vLImiwAVvYawgcf2eVWEX-dTFxeb80flQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Old Standard TT" + } + ] + }, + { + "name": "Oldenburg", + "fontFamily": "Oldenburg, system-ui", + "slug": "oldenburg", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/oldenburg/v20/fC1jPY5JYWzbywv7c4V6UU6oXyndrw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Oldenburg" + } + ] + }, + { + "name": "Ole", + "fontFamily": "Ole, cursive", + "slug": "ole", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ole/v3/dFazZf6Z-rd89fw69qJ_ew.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Ole" + } + ] + }, + { + "name": "Oleo Script", + "fontFamily": "Oleo Script, system-ui", + "slug": "oleo-script", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/oleoscript/v14/rax5HieDvtMOe0iICsUccBhasU7Q8Cad.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Oleo Script" + }, + { + "src": "http://fonts.gstatic.com/s/oleoscript/v14/raxkHieDvtMOe0iICsUccCDmnmrY2zqUKafv.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Oleo Script" + } + ] + }, + { + "name": "Oleo Script Swash Caps", + "fontFamily": "Oleo Script Swash Caps, system-ui", + "slug": "oleo-script-swash-caps", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/oleoscriptswashcaps/v13/Noaj6Vb-w5SFbTTAsZP_7JkCS08K-jCzDn_HMXquSY0Hg90.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Oleo Script Swash Caps" + }, + { + "src": "http://fonts.gstatic.com/s/oleoscriptswashcaps/v13/Noag6Vb-w5SFbTTAsZP_7JkCS08K-jCzDn_HCcaBbYUsn9T5dt0.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Oleo Script Swash Caps" + } + ] + }, + { + "name": "Oooh Baby", + "fontFamily": "Oooh Baby, cursive", + "slug": "oooh-baby", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ooohbaby/v4/2sDcZGJWgJTT2Jf76xQDb2-4C7wFZQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Oooh Baby" + } + ] + }, + { + "name": "Open Sans", + "fontFamily": "Open Sans, sans-serif", + "slug": "open-sans", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/opensans/v35/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsiH0C4nY1M2xLER.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Open Sans" + }, + { + "src": "http://fonts.gstatic.com/s/opensans/v35/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0C4nY1M2xLER.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Open Sans" + }, + { + "src": "http://fonts.gstatic.com/s/opensans/v35/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjr0C4nY1M2xLER.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Open Sans" + }, + { + "src": "http://fonts.gstatic.com/s/opensans/v35/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsgH1y4nY1M2xLER.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Open Sans" + }, + { + "src": "http://fonts.gstatic.com/s/opensans/v35/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsg-1y4nY1M2xLER.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Open Sans" + }, + { + "src": "http://fonts.gstatic.com/s/opensans/v35/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgshZ1y4nY1M2xLER.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Open Sans" + }, + { + "src": "http://fonts.gstatic.com/s/opensans/v35/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk5hkaVcUwaERZjA.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Open Sans" + }, + { + "src": "http://fonts.gstatic.com/s/opensans/v35/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkaVcUwaERZjA.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Open Sans" + }, + { + "src": "http://fonts.gstatic.com/s/opensans/v35/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk_RkaVcUwaERZjA.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Open Sans" + }, + { + "src": "http://fonts.gstatic.com/s/opensans/v35/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkxhjaVcUwaERZjA.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Open Sans" + }, + { + "src": "http://fonts.gstatic.com/s/opensans/v35/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkyFjaVcUwaERZjA.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Open Sans" + }, + { + "src": "http://fonts.gstatic.com/s/opensans/v35/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk0ZjaVcUwaERZjA.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Open Sans" + } + ] + }, + { + "name": "Oranienbaum", + "fontFamily": "Oranienbaum, serif", + "slug": "oranienbaum", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/oranienbaum/v15/OZpHg_txtzZKMuXLIVrx-3zn7kz3dpHc.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Oranienbaum" + } + ] + }, + { + "name": "Orbitron", + "fontFamily": "Orbitron, sans-serif", + "slug": "orbitron", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/orbitron/v29/yMJMMIlzdpvBhQQL_SC3X9yhF25-T1nyGy6xpmIyXjU1pg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Orbitron" + }, + { + "src": "http://fonts.gstatic.com/s/orbitron/v29/yMJMMIlzdpvBhQQL_SC3X9yhF25-T1nyKS6xpmIyXjU1pg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Orbitron" + }, + { + "src": "http://fonts.gstatic.com/s/orbitron/v29/yMJMMIlzdpvBhQQL_SC3X9yhF25-T1nyxSmxpmIyXjU1pg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Orbitron" + }, + { + "src": "http://fonts.gstatic.com/s/orbitron/v29/yMJMMIlzdpvBhQQL_SC3X9yhF25-T1ny_CmxpmIyXjU1pg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Orbitron" + }, + { + "src": "http://fonts.gstatic.com/s/orbitron/v29/yMJMMIlzdpvBhQQL_SC3X9yhF25-T1nymymxpmIyXjU1pg.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Orbitron" + }, + { + "src": "http://fonts.gstatic.com/s/orbitron/v29/yMJMMIlzdpvBhQQL_SC3X9yhF25-T1nysimxpmIyXjU1pg.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Orbitron" + } + ] + }, + { + "name": "Oregano", + "fontFamily": "Oregano, system-ui", + "slug": "oregano", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/oregano/v13/If2IXTPxciS3H4S2kZffPznO3yM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Oregano" + }, + { + "src": "http://fonts.gstatic.com/s/oregano/v13/If2KXTPxciS3H4S2oZXVOxvLzyP_qw.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Oregano" + } + ] + }, + { + "name": "Orelega One", + "fontFamily": "Orelega One, system-ui", + "slug": "orelega-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/orelegaone/v10/3qTpojOggD2XtAdFb-QXZGt61EcYaQ7F.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Orelega One" + } + ] + }, + { + "name": "Orienta", + "fontFamily": "Orienta, sans-serif", + "slug": "orienta", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/orienta/v15/PlI9FlK4Jrl5Y9zNeyeo9HRFhcU.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Orienta" + } + ] + }, + { + "name": "Original Surfer", + "fontFamily": "Original Surfer, system-ui", + "slug": "original-surfer", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/originalsurfer/v18/RWmQoKGZ9vIirYntXJ3_MbekzNMiDEtvAlaMKw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Original Surfer" + } + ] + }, + { + "name": "Oswald", + "fontFamily": "Oswald, sans-serif", + "slug": "oswald", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/oswald/v49/TK3_WkUHHAIjg75cFRf3bXL8LICs13FvgUFoZAaRliE.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Oswald" + }, + { + "src": "http://fonts.gstatic.com/s/oswald/v49/TK3_WkUHHAIjg75cFRf3bXL8LICs169vgUFoZAaRliE.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Oswald" + }, + { + "src": "http://fonts.gstatic.com/s/oswald/v49/TK3_WkUHHAIjg75cFRf3bXL8LICs1_FvgUFoZAaRliE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Oswald" + }, + { + "src": "http://fonts.gstatic.com/s/oswald/v49/TK3_WkUHHAIjg75cFRf3bXL8LICs18NvgUFoZAaRliE.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Oswald" + }, + { + "src": "http://fonts.gstatic.com/s/oswald/v49/TK3_WkUHHAIjg75cFRf3bXL8LICs1y9ogUFoZAaRliE.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Oswald" + }, + { + "src": "http://fonts.gstatic.com/s/oswald/v49/TK3_WkUHHAIjg75cFRf3bXL8LICs1xZogUFoZAaRliE.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Oswald" + } + ] + }, + { + "name": "Outfit", + "fontFamily": "Outfit, sans-serif", + "slug": "outfit", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/outfit/v11/QGYyz_MVcBeNP4NjuGObqx1XmO1I4TC0C4G-EiAou6Y.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Outfit" + }, + { + "src": "http://fonts.gstatic.com/s/outfit/v11/QGYyz_MVcBeNP4NjuGObqx1XmO1I4bC1C4G-EiAou6Y.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Outfit" + }, + { + "src": "http://fonts.gstatic.com/s/outfit/v11/QGYyz_MVcBeNP4NjuGObqx1XmO1I4W61C4G-EiAou6Y.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Outfit" + }, + { + "src": "http://fonts.gstatic.com/s/outfit/v11/QGYyz_MVcBeNP4NjuGObqx1XmO1I4TC1C4G-EiAou6Y.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Outfit" + }, + { + "src": "http://fonts.gstatic.com/s/outfit/v11/QGYyz_MVcBeNP4NjuGObqx1XmO1I4QK1C4G-EiAou6Y.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Outfit" + }, + { + "src": "http://fonts.gstatic.com/s/outfit/v11/QGYyz_MVcBeNP4NjuGObqx1XmO1I4e6yC4G-EiAou6Y.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Outfit" + }, + { + "src": "http://fonts.gstatic.com/s/outfit/v11/QGYyz_MVcBeNP4NjuGObqx1XmO1I4deyC4G-EiAou6Y.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Outfit" + }, + { + "src": "http://fonts.gstatic.com/s/outfit/v11/QGYyz_MVcBeNP4NjuGObqx1XmO1I4bCyC4G-EiAou6Y.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Outfit" + }, + { + "src": "http://fonts.gstatic.com/s/outfit/v11/QGYyz_MVcBeNP4NjuGObqx1XmO1I4ZmyC4G-EiAou6Y.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Outfit" + } + ] + }, + { + "name": "Over the Rainbow", + "fontFamily": "Over the Rainbow, cursive", + "slug": "over-the-rainbow", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/overtherainbow/v16/11haGoXG1k_HKhMLUWz7Mc7vvW5upvOm9NA2XG0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Over the Rainbow" + } + ] + }, + { + "name": "Overlock", + "fontFamily": "Overlock, system-ui", + "slug": "overlock", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/overlock/v15/Z9XVDmdMWRiN1_T9Z4Te4u2El6GC.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Overlock" + }, + { + "src": "http://fonts.gstatic.com/s/overlock/v15/Z9XTDmdMWRiN1_T9Z7Tc6OmmkrGC7Cs.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Overlock" + }, + { + "src": "http://fonts.gstatic.com/s/overlock/v15/Z9XSDmdMWRiN1_T9Z7xizcmMvL2L9TLT.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Overlock" + }, + { + "src": "http://fonts.gstatic.com/s/overlock/v15/Z9XQDmdMWRiN1_T9Z7Tc0FWJtrmp8CLTlNs.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Overlock" + }, + { + "src": "http://fonts.gstatic.com/s/overlock/v15/Z9XSDmdMWRiN1_T9Z7xaz8mMvL2L9TLT.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Overlock" + }, + { + "src": "http://fonts.gstatic.com/s/overlock/v15/Z9XQDmdMWRiN1_T9Z7Tc0G2Ltrmp8CLTlNs.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Overlock" + } + ] + }, + { + "name": "Overlock SC", + "fontFamily": "Overlock SC, system-ui", + "slug": "overlock-sc", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/overlocksc/v21/1cX3aUHKGZrstGAY8nwVzHGAq8Sk1PoH.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Overlock SC" + } + ] + }, + { + "name": "Overpass", + "fontFamily": "Overpass, sans-serif", + "slug": "overpass", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/overpass/v12/qFda35WCmI96Ajtm83upeyoaX6QPnlo6_PLrOZCLtce-og.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Overpass" + }, + { + "src": "http://fonts.gstatic.com/s/overpass/v12/qFda35WCmI96Ajtm83upeyoaX6QPnlo6fPPrOZCLtce-og.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Overpass" + }, + { + "src": "http://fonts.gstatic.com/s/overpass/v12/qFda35WCmI96Ajtm83upeyoaX6QPnlo6ovPrOZCLtce-og.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Overpass" + }, + { + "src": "http://fonts.gstatic.com/s/overpass/v12/qFda35WCmI96Ajtm83upeyoaX6QPnlo6_PPrOZCLtce-og.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Overpass" + }, + { + "src": "http://fonts.gstatic.com/s/overpass/v12/qFda35WCmI96Ajtm83upeyoaX6QPnlo6zvPrOZCLtce-og.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Overpass" + }, + { + "src": "http://fonts.gstatic.com/s/overpass/v12/qFda35WCmI96Ajtm83upeyoaX6QPnlo6IvTrOZCLtce-og.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Overpass" + }, + { + "src": "http://fonts.gstatic.com/s/overpass/v12/qFda35WCmI96Ajtm83upeyoaX6QPnlo6G_TrOZCLtce-og.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Overpass" + }, + { + "src": "http://fonts.gstatic.com/s/overpass/v12/qFda35WCmI96Ajtm83upeyoaX6QPnlo6fPTrOZCLtce-og.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Overpass" + }, + { + "src": "http://fonts.gstatic.com/s/overpass/v12/qFda35WCmI96Ajtm83upeyoaX6QPnlo6VfTrOZCLtce-og.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Overpass" + }, + { + "src": "http://fonts.gstatic.com/s/overpass/v12/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLADe5qPl8Kuosgz.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Overpass" + }, + { + "src": "http://fonts.gstatic.com/s/overpass/v12/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLCDepqPl8Kuosgz.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Overpass" + }, + { + "src": "http://fonts.gstatic.com/s/overpass/v12/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLBdepqPl8Kuosgz.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Overpass" + }, + { + "src": "http://fonts.gstatic.com/s/overpass/v12/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLADepqPl8Kuosgz.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Overpass" + }, + { + "src": "http://fonts.gstatic.com/s/overpass/v12/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLAxepqPl8Kuosgz.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Overpass" + }, + { + "src": "http://fonts.gstatic.com/s/overpass/v12/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLDdfZqPl8Kuosgz.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Overpass" + }, + { + "src": "http://fonts.gstatic.com/s/overpass/v12/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLDkfZqPl8Kuosgz.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Overpass" + }, + { + "src": "http://fonts.gstatic.com/s/overpass/v12/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLCDfZqPl8Kuosgz.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Overpass" + }, + { + "src": "http://fonts.gstatic.com/s/overpass/v12/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLCqfZqPl8Kuosgz.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Overpass" + } + ] + }, + { + "name": "Overpass Mono", + "fontFamily": "Overpass Mono, monospace", + "slug": "overpass-mono", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/overpassmono/v15/_Xm5-H86tzKDdAPa-KPQZ-AC_COcRycquHlL6EWKokzzXur-SmIr.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Overpass Mono" + }, + { + "src": "http://fonts.gstatic.com/s/overpassmono/v15/_Xm5-H86tzKDdAPa-KPQZ-AC_COcRycquHlL6EXUokzzXur-SmIr.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Overpass Mono" + }, + { + "src": "http://fonts.gstatic.com/s/overpassmono/v15/_Xm5-H86tzKDdAPa-KPQZ-AC_COcRycquHlL6EXmokzzXur-SmIr.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Overpass Mono" + }, + { + "src": "http://fonts.gstatic.com/s/overpassmono/v15/_Xm5-H86tzKDdAPa-KPQZ-AC_COcRycquHlL6EUKpUzzXur-SmIr.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Overpass Mono" + }, + { + "src": "http://fonts.gstatic.com/s/overpassmono/v15/_Xm5-H86tzKDdAPa-KPQZ-AC_COcRycquHlL6EUzpUzzXur-SmIr.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Overpass Mono" + } + ] + }, + { + "name": "Ovo", + "fontFamily": "Ovo, serif", + "slug": "ovo", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ovo/v17/yYLl0h7Wyfzjy4Q5_3WVxA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Ovo" + } + ] + }, + { + "name": "Oxanium", + "fontFamily": "Oxanium, system-ui", + "slug": "oxanium", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/oxanium/v14/RrQPboN_4yJ0JmiMUW7sIGjd1IA9G83JfniMBXQ7d67x.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Oxanium" + }, + { + "src": "http://fonts.gstatic.com/s/oxanium/v14/RrQPboN_4yJ0JmiMUW7sIGjd1IA9G80XfniMBXQ7d67x.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Oxanium" + }, + { + "src": "http://fonts.gstatic.com/s/oxanium/v14/RrQPboN_4yJ0JmiMUW7sIGjd1IA9G81JfniMBXQ7d67x.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Oxanium" + }, + { + "src": "http://fonts.gstatic.com/s/oxanium/v14/RrQPboN_4yJ0JmiMUW7sIGjd1IA9G817fniMBXQ7d67x.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Oxanium" + }, + { + "src": "http://fonts.gstatic.com/s/oxanium/v14/RrQPboN_4yJ0JmiMUW7sIGjd1IA9G82XeXiMBXQ7d67x.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Oxanium" + }, + { + "src": "http://fonts.gstatic.com/s/oxanium/v14/RrQPboN_4yJ0JmiMUW7sIGjd1IA9G82ueXiMBXQ7d67x.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Oxanium" + }, + { + "src": "http://fonts.gstatic.com/s/oxanium/v14/RrQPboN_4yJ0JmiMUW7sIGjd1IA9G83JeXiMBXQ7d67x.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Oxanium" + } + ] + }, + { + "name": "Oxygen", + "fontFamily": "Oxygen, sans-serif", + "slug": "oxygen", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/oxygen/v15/2sDcZG1Wl4LcnbuCJW8Db2-4C7wFZQ.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Oxygen" + }, + { + "src": "http://fonts.gstatic.com/s/oxygen/v15/2sDfZG1Wl4Lcnbu6iUcnZ0SkAg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Oxygen" + }, + { + "src": "http://fonts.gstatic.com/s/oxygen/v15/2sDcZG1Wl4LcnbuCNWgDb2-4C7wFZQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Oxygen" + } + ] + }, + { + "name": "Oxygen Mono", + "fontFamily": "Oxygen Mono, monospace", + "slug": "oxygen-mono", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/oxygenmono/v14/h0GsssGg9FxgDgCjLeAd7ijfze-PPlUu.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Oxygen Mono" + } + ] + }, + { + "name": "PT Mono", + "fontFamily": "PT Mono, monospace", + "slug": "pt-mono", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ptmono/v13/9oRONYoBnWILk-9ArCg5MtPyAcg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "PT Mono" + } + ] + }, + { + "name": "PT Sans", + "fontFamily": "PT Sans, sans-serif", + "slug": "pt-sans", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ptsans/v17/jizaRExUiTo99u79P0WOxOGMMDQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "PT Sans" + }, + { + "src": "http://fonts.gstatic.com/s/ptsans/v17/jizYRExUiTo99u79D0eEwMOJIDQA-g.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "PT Sans" + }, + { + "src": "http://fonts.gstatic.com/s/ptsans/v17/jizfRExUiTo99u79B_mh4OmnLD0Z4zM.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "PT Sans" + }, + { + "src": "http://fonts.gstatic.com/s/ptsans/v17/jizdRExUiTo99u79D0e8fOytKB8c8zMrig.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "PT Sans" + } + ] + }, + { + "name": "PT Sans Caption", + "fontFamily": "PT Sans Caption, sans-serif", + "slug": "pt-sans-caption", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ptsanscaption/v19/0FlMVP6Hrxmt7-fsUFhlFXNIlpcqfQXwQy6yxg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "PT Sans Caption" + }, + { + "src": "http://fonts.gstatic.com/s/ptsanscaption/v19/0FlJVP6Hrxmt7-fsUFhlFXNIlpcSwSrUSwWuz38Tgg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "PT Sans Caption" + } + ] + }, + { + "name": "PT Sans Narrow", + "fontFamily": "PT Sans Narrow, sans-serif", + "slug": "pt-sans-narrow", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ptsansnarrow/v18/BngRUXNadjH0qYEzV7ab-oWlsYCByxyKeuDp.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "PT Sans Narrow" + }, + { + "src": "http://fonts.gstatic.com/s/ptsansnarrow/v18/BngSUXNadjH0qYEzV7ab-oWlsbg95DiCUfzgRd-3.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "PT Sans Narrow" + } + ] + }, + { + "name": "PT Serif", + "fontFamily": "PT Serif, serif", + "slug": "pt-serif", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ptserif/v18/EJRVQgYoZZY2vCFuvDFRxL6ddjb-.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "PT Serif" + }, + { + "src": "http://fonts.gstatic.com/s/ptserif/v18/EJRTQgYoZZY2vCFuvAFTzrq_cyb-vco.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "PT Serif" + }, + { + "src": "http://fonts.gstatic.com/s/ptserif/v18/EJRSQgYoZZY2vCFuvAnt65qVXSr3pNNB.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "PT Serif" + }, + { + "src": "http://fonts.gstatic.com/s/ptserif/v18/EJRQQgYoZZY2vCFuvAFT9gaQVy7VocNB6Iw.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "PT Serif" + } + ] + }, + { + "name": "PT Serif Caption", + "fontFamily": "PT Serif Caption, serif", + "slug": "pt-serif-caption", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ptserifcaption/v17/ieVl2ZhbGCW-JoW6S34pSDpqYKU059WxDCs5cvI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "PT Serif Caption" + }, + { + "src": "http://fonts.gstatic.com/s/ptserifcaption/v17/ieVj2ZhbGCW-JoW6S34pSDpqYKU019e7CAk8YvJEeg.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "PT Serif Caption" + } + ] + }, + { + "name": "Pacifico", + "fontFamily": "Pacifico, cursive", + "slug": "pacifico", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/pacifico/v22/FwZY7-Qmy14u9lezJ96A4sijpFu_.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Pacifico" + } + ] + }, + { + "name": "Padauk", + "fontFamily": "Padauk, sans-serif", + "slug": "padauk", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/padauk/v16/RrQRboJg-id7OnbBa0_g3LlYbg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Padauk" + }, + { + "src": "http://fonts.gstatic.com/s/padauk/v16/RrQSboJg-id7Onb512DE1JJEZ4YwGg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Padauk" + } + ] + }, + { + "name": "Padyakke Expanded One", + "fontFamily": "Padyakke Expanded One, system-ui", + "slug": "padyakke-expanded-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/padyakkeexpandedone/v2/K2FvfY9El_tbR0JfHb6WWvrBaU6XAUvC4IAYOKRkpDjeoQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Padyakke Expanded One" + } + ] + }, + { + "name": "Palanquin", + "fontFamily": "Palanquin, sans-serif", + "slug": "palanquin", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/palanquin/v13/9XUhlJ90n1fBFg7ceXwUEltI7rWmZzTH.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Palanquin" + }, + { + "src": "http://fonts.gstatic.com/s/palanquin/v13/9XUilJ90n1fBFg7ceXwUvnpoxJuqbi3ezg.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Palanquin" + }, + { + "src": "http://fonts.gstatic.com/s/palanquin/v13/9XUilJ90n1fBFg7ceXwU2nloxJuqbi3ezg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Palanquin" + }, + { + "src": "http://fonts.gstatic.com/s/palanquin/v13/9XUnlJ90n1fBFg7ceXwsdlFMzLC2Zw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Palanquin" + }, + { + "src": "http://fonts.gstatic.com/s/palanquin/v13/9XUilJ90n1fBFg7ceXwUgnhoxJuqbi3ezg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Palanquin" + }, + { + "src": "http://fonts.gstatic.com/s/palanquin/v13/9XUilJ90n1fBFg7ceXwUrn9oxJuqbi3ezg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Palanquin" + }, + { + "src": "http://fonts.gstatic.com/s/palanquin/v13/9XUilJ90n1fBFg7ceXwUyn5oxJuqbi3ezg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Palanquin" + } + ] + }, + { + "name": "Palanquin Dark", + "fontFamily": "Palanquin Dark, sans-serif", + "slug": "palanquin-dark", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/palanquindark/v12/xn75YHgl1nqmANMB-26xC7yuF_6OTEo9VtfE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Palanquin Dark" + }, + { + "src": "http://fonts.gstatic.com/s/palanquindark/v12/xn76YHgl1nqmANMB-26xC7yuF8Z6ZW41fcvN2KT4.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Palanquin Dark" + }, + { + "src": "http://fonts.gstatic.com/s/palanquindark/v12/xn76YHgl1nqmANMB-26xC7yuF8ZWYm41fcvN2KT4.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Palanquin Dark" + }, + { + "src": "http://fonts.gstatic.com/s/palanquindark/v12/xn76YHgl1nqmANMB-26xC7yuF8YyY241fcvN2KT4.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Palanquin Dark" + } + ] + }, + { + "name": "Palette Mosaic", + "fontFamily": "Palette Mosaic, system-ui", + "slug": "palette-mosaic", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/palettemosaic/v10/AMOIz4aBvWuBFe3TohdW6YZ9MFiy4dxL4jSr.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Palette Mosaic" + } + ] + }, + { + "name": "Pangolin", + "fontFamily": "Pangolin, cursive", + "slug": "pangolin", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/pangolin/v11/cY9GfjGcW0FPpi-tWPfK5d3aiLBG.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Pangolin" + } + ] + }, + { + "name": "Paprika", + "fontFamily": "Paprika, system-ui", + "slug": "paprika", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/paprika/v21/8QIJdijZitv49rDfuIgOq7jkAOw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Paprika" + } + ] + }, + { + "name": "Parisienne", + "fontFamily": "Parisienne, cursive", + "slug": "parisienne", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/parisienne/v13/E21i_d3kivvAkxhLEVZpcy96DuKuavM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Parisienne" + } + ] + }, + { + "name": "Passero One", + "fontFamily": "Passero One, system-ui", + "slug": "passero-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/passeroone/v24/JTUTjIko8DOq5FeaeEAjgE5B5Arr-s50.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Passero One" + } + ] + }, + { + "name": "Passion One", + "fontFamily": "Passion One, system-ui", + "slug": "passion-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/passionone/v16/PbynFmL8HhTPqbjUzux3JHuW_Frg6YoV.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Passion One" + }, + { + "src": "http://fonts.gstatic.com/s/passionone/v16/Pby6FmL8HhTPqbjUzux3JEMq037owpYcuH8y.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Passion One" + }, + { + "src": "http://fonts.gstatic.com/s/passionone/v16/Pby6FmL8HhTPqbjUzux3JEMS0X7owpYcuH8y.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Passion One" + } + ] + }, + { + "name": "Passions Conflict", + "fontFamily": "Passions Conflict, cursive", + "slug": "passions-conflict", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/passionsconflict/v5/kmKnZrcrFhfafnWX9x0GuEC-zowow5NeYRI4CN2V.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Passions Conflict" + } + ] + }, + { + "name": "Pathway Extreme", + "fontFamily": "Pathway Extreme, sans-serif", + "slug": "pathway-extreme", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xak2Nx1Kyw3igP5eg.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Pathway Extreme" + }, + { + "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xakWN11Kyw3igP5eg.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Pathway Extreme" + }, + { + "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xakht11Kyw3igP5eg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Pathway Extreme" + }, + { + "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xak2N11Kyw3igP5eg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Pathway Extreme" + }, + { + "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xak6t11Kyw3igP5eg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Pathway Extreme" + }, + { + "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xakBtp1Kyw3igP5eg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Pathway Extreme" + }, + { + "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xakP9p1Kyw3igP5eg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Pathway Extreme" + }, + { + "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xakWNp1Kyw3igP5eg.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Pathway Extreme" + }, + { + "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xakcdp1Kyw3igP5eg.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Pathway Extreme" + }, + { + "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ6daSYzqAbpepnF.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Pathway Extreme" + }, + { + "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ4daCYzqAbpepnF.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Pathway Extreme" + }, + { + "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ7DaCYzqAbpepnF.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Pathway Extreme" + }, + { + "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ6daCYzqAbpepnF.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Pathway Extreme" + }, + { + "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ6vaCYzqAbpepnF.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Pathway Extreme" + }, + { + "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ5DbyYzqAbpepnF.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Pathway Extreme" + }, + { + "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ56byYzqAbpepnF.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Pathway Extreme" + }, + { + "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ4dbyYzqAbpepnF.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Pathway Extreme" + }, + { + "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ40byYzqAbpepnF.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Pathway Extreme" + } + ] + }, + { + "name": "Pathway Gothic One", + "fontFamily": "Pathway Gothic One, sans-serif", + "slug": "pathway-gothic-one", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/pathwaygothicone/v15/MwQrbgD32-KAvjkYGNUUxAtW7pEBwx-dTFxeb80flQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Pathway Gothic One" + } + ] + }, + { + "name": "Patrick Hand", + "fontFamily": "Patrick Hand, cursive", + "slug": "patrick-hand", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/patrickhand/v20/LDI1apSQOAYtSuYWp8ZhfYeMWcjKm7sp8g.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Patrick Hand" + } + ] + }, + { + "name": "Patrick Hand SC", + "fontFamily": "Patrick Hand SC, cursive", + "slug": "patrick-hand-sc", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/patrickhandsc/v13/0nkwC9f7MfsBiWcLtY65AWDK873ViSi6JQc7Vg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Patrick Hand SC" + } + ] + }, + { + "name": "Pattaya", + "fontFamily": "Pattaya, sans-serif", + "slug": "pattaya", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/pattaya/v13/ea8ZadcqV_zkHY-XNdCn92ZEmVs.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Pattaya" + } + ] + }, + { + "name": "Patua One", + "fontFamily": "Patua One, system-ui", + "slug": "patua-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/patuaone/v16/ZXuke1cDvLCKLDcimxBI5PNvNA9LuA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Patua One" + } + ] + }, + { + "name": "Pavanam", + "fontFamily": "Pavanam, sans-serif", + "slug": "pavanam", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/pavanam/v11/BXRrvF_aiezLh0xPDOtQ9Wf0QcE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Pavanam" + } + ] + }, + { + "name": "Paytone One", + "fontFamily": "Paytone One, sans-serif", + "slug": "paytone-one", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/paytoneone/v21/0nksC9P7MfYHj2oFtYm2CiTqivr9iBq_.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Paytone One" + } + ] + }, + { + "name": "Peddana", + "fontFamily": "Peddana, serif", + "slug": "peddana", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/peddana/v20/aFTU7PBhaX89UcKWhh2aBYyMcKw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Peddana" + } + ] + }, + { + "name": "Peralta", + "fontFamily": "Peralta, system-ui", + "slug": "peralta", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/peralta/v17/hYkJPu0-RP_9d3kRGxAhrv956B8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Peralta" + } + ] + }, + { + "name": "Permanent Marker", + "fontFamily": "Permanent Marker, cursive", + "slug": "permanent-marker", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/permanentmarker/v16/Fh4uPib9Iyv2ucM6pGQMWimMp004HaqIfrT5nlk.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Permanent Marker" + } + ] + }, + { + "name": "Petemoss", + "fontFamily": "Petemoss, cursive", + "slug": "petemoss", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/petemoss/v5/A2BZn5tA2xgtGWHZgxkesKb9UouQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Petemoss" + } + ] + }, + { + "name": "Petit Formal Script", + "fontFamily": "Petit Formal Script, cursive", + "slug": "petit-formal-script", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/petitformalscript/v14/B50TF6xQr2TXJBnGOFME6u5OR83oRP5qoHnqP4gZSiE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Petit Formal Script" + } + ] + }, + { + "name": "Petrona", + "fontFamily": "Petrona, serif", + "slug": "petrona", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/petrona/v32/mtGl4_NXL7bZo9XXq35wRLONYyOjFk6NsARBH452Mvds.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Petrona" + }, + { + "src": "http://fonts.gstatic.com/s/petrona/v32/mtGl4_NXL7bZo9XXq35wRLONYyOjFk4NsQRBH452Mvds.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Petrona" + }, + { + "src": "http://fonts.gstatic.com/s/petrona/v32/mtGl4_NXL7bZo9XXq35wRLONYyOjFk7TsQRBH452Mvds.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Petrona" + }, + { + "src": "http://fonts.gstatic.com/s/petrona/v32/mtGl4_NXL7bZo9XXq35wRLONYyOjFk6NsQRBH452Mvds.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Petrona" + }, + { + "src": "http://fonts.gstatic.com/s/petrona/v32/mtGl4_NXL7bZo9XXq35wRLONYyOjFk6_sQRBH452Mvds.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Petrona" + }, + { + "src": "http://fonts.gstatic.com/s/petrona/v32/mtGl4_NXL7bZo9XXq35wRLONYyOjFk5TtgRBH452Mvds.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Petrona" + }, + { + "src": "http://fonts.gstatic.com/s/petrona/v32/mtGl4_NXL7bZo9XXq35wRLONYyOjFk5qtgRBH452Mvds.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Petrona" + }, + { + "src": "http://fonts.gstatic.com/s/petrona/v32/mtGl4_NXL7bZo9XXq35wRLONYyOjFk4NtgRBH452Mvds.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Petrona" + }, + { + "src": "http://fonts.gstatic.com/s/petrona/v32/mtGl4_NXL7bZo9XXq35wRLONYyOjFk4ktgRBH452Mvds.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Petrona" + }, + { + "src": "http://fonts.gstatic.com/s/petrona/v32/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8uwDFYpUN-dsIWs.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Petrona" + }, + { + "src": "http://fonts.gstatic.com/s/petrona/v32/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8mwCFYpUN-dsIWs.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Petrona" + }, + { + "src": "http://fonts.gstatic.com/s/petrona/v32/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8rICFYpUN-dsIWs.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Petrona" + }, + { + "src": "http://fonts.gstatic.com/s/petrona/v32/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8uwCFYpUN-dsIWs.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Petrona" + }, + { + "src": "http://fonts.gstatic.com/s/petrona/v32/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8t4CFYpUN-dsIWs.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Petrona" + }, + { + "src": "http://fonts.gstatic.com/s/petrona/v32/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8jIFFYpUN-dsIWs.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Petrona" + }, + { + "src": "http://fonts.gstatic.com/s/petrona/v32/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8gsFFYpUN-dsIWs.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Petrona" + }, + { + "src": "http://fonts.gstatic.com/s/petrona/v32/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8mwFFYpUN-dsIWs.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Petrona" + }, + { + "src": "http://fonts.gstatic.com/s/petrona/v32/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8kUFFYpUN-dsIWs.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Petrona" + } + ] + }, + { + "name": "Philosopher", + "fontFamily": "Philosopher, sans-serif", + "slug": "philosopher", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/philosopher/v19/vEFV2_5QCwIS4_Dhez5jcVBpRUwU08qe.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Philosopher" + }, + { + "src": "http://fonts.gstatic.com/s/philosopher/v19/vEFX2_5QCwIS4_Dhez5jcWBrT0g21tqeR7c.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Philosopher" + }, + { + "src": "http://fonts.gstatic.com/s/philosopher/v19/vEFI2_5QCwIS4_Dhez5jcWjVamgc-NaXXq7H.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Philosopher" + }, + { + "src": "http://fonts.gstatic.com/s/philosopher/v19/vEFK2_5QCwIS4_Dhez5jcWBrd_QZ8tK1W77HtMo.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Philosopher" + } + ] + }, + { + "name": "Phudu", + "fontFamily": "Phudu, system-ui", + "slug": "phudu", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/phudu/v1/0FlJVPSHk0ya-7OUeO_U-Lwm7PkK62zUSwWuz38Tgg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Phudu" + }, + { + "src": "http://fonts.gstatic.com/s/phudu/v1/0FlJVPSHk0ya-7OUeO_U-Lwm7PkKtWzUSwWuz38Tgg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Phudu" + }, + { + "src": "http://fonts.gstatic.com/s/phudu/v1/0FlJVPSHk0ya-7OUeO_U-Lwm7PkKh2zUSwWuz38Tgg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Phudu" + }, + { + "src": "http://fonts.gstatic.com/s/phudu/v1/0FlJVPSHk0ya-7OUeO_U-Lwm7PkKa2vUSwWuz38Tgg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Phudu" + }, + { + "src": "http://fonts.gstatic.com/s/phudu/v1/0FlJVPSHk0ya-7OUeO_U-Lwm7PkKUmvUSwWuz38Tgg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Phudu" + }, + { + "src": "http://fonts.gstatic.com/s/phudu/v1/0FlJVPSHk0ya-7OUeO_U-Lwm7PkKNWvUSwWuz38Tgg.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Phudu" + }, + { + "src": "http://fonts.gstatic.com/s/phudu/v1/0FlJVPSHk0ya-7OUeO_U-Lwm7PkKHGvUSwWuz38Tgg.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Phudu" + } + ] + }, + { + "name": "Piazzolla", + "fontFamily": "Piazzolla, serif", + "slug": "piazzolla", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7LYx3Ly1AHfAAy5.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Piazzolla" + }, + { + "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7JYxnLy1AHfAAy5.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Piazzolla" + }, + { + "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7KGxnLy1AHfAAy5.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Piazzolla" + }, + { + "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7LYxnLy1AHfAAy5.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Piazzolla" + }, + { + "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7LqxnLy1AHfAAy5.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Piazzolla" + }, + { + "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7IGwXLy1AHfAAy5.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Piazzolla" + }, + { + "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7I_wXLy1AHfAAy5.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Piazzolla" + }, + { + "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7JYwXLy1AHfAAy5.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Piazzolla" + }, + { + "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7JxwXLy1AHfAAy5.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Piazzolla" + }, + { + "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhZqw3gX9BRy5m5M.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Piazzolla" + }, + { + "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhRqx3gX9BRy5m5M.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Piazzolla" + }, + { + "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhcSx3gX9BRy5m5M.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Piazzolla" + }, + { + "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhZqx3gX9BRy5m5M.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Piazzolla" + }, + { + "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhaix3gX9BRy5m5M.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Piazzolla" + }, + { + "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhUS23gX9BRy5m5M.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Piazzolla" + }, + { + "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhX223gX9BRy5m5M.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Piazzolla" + }, + { + "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhRq23gX9BRy5m5M.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Piazzolla" + }, + { + "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhTO23gX9BRy5m5M.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Piazzolla" + } + ] + }, + { + "name": "Piedra", + "fontFamily": "Piedra, system-ui", + "slug": "piedra", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/piedra/v22/ke8kOg8aN0Bn7hTunEyHN_M3gA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Piedra" + } + ] + }, + { + "name": "Pinyon Script", + "fontFamily": "Pinyon Script, cursive", + "slug": "pinyon-script", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/pinyonscript/v18/6xKpdSJbL9-e9LuoeQiDRQR8aOLQO4bhiDY.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Pinyon Script" + } + ] + }, + { + "name": "Pirata One", + "fontFamily": "Pirata One, system-ui", + "slug": "pirata-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/pirataone/v22/I_urMpiDvgLdLh0fAtoftiiEr5_BdZ8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Pirata One" + } + ] + }, + { + "name": "Plaster", + "fontFamily": "Plaster, system-ui", + "slug": "plaster", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/plaster/v24/DdTm79QatW80eRh4Ei5JOtLOeLI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Plaster" + } + ] + }, + { + "name": "Play", + "fontFamily": "Play, sans-serif", + "slug": "play", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/play/v17/6aez4K2oVqwIjtI8Hp8Tx3A.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Play" + }, + { + "src": "http://fonts.gstatic.com/s/play/v17/6ae84K2oVqwItm4TOpc423nTJTM.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Play" + } + ] + }, + { + "name": "Playball", + "fontFamily": "Playball, system-ui", + "slug": "playball", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/playball/v17/TK3gWksYAxQ7jbsKcj8Dl-tPKo2t.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Playball" + } + ] + }, + { + "name": "Playfair", + "fontFamily": "Playfair, serif", + "slug": "playfair", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/playfair/v1/0nkQC9D7PO4KhmUJ5_zTZ_4MYQXznAK-bUcZXKO3UMnW6VNpe4-SiiZ4b8h5G3GutPlKetgdoSMw5ifm.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Playfair" + }, + { + "src": "http://fonts.gstatic.com/s/playfair/v1/0nkQC9D7PO4KhmUJ5_zTZ_4MYQXznAK-bUcZXKO3UMnW6VNpe4-SiiZ4b8h5G3GutPkUetgdoSMw5ifm.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Playfair" + }, + { + "src": "http://fonts.gstatic.com/s/playfair/v1/0nkQC9D7PO4KhmUJ5_zTZ_4MYQXznAK-bUcZXKO3UMnW6VNpe4-SiiZ4b8h5G3GutPkmetgdoSMw5ifm.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Playfair" + }, + { + "src": "http://fonts.gstatic.com/s/playfair/v1/0nkQC9D7PO4KhmUJ5_zTZ_4MYQXznAK-bUcZXKO3UMnW6VNpe4-SiiZ4b8h5G3GutPnKfdgdoSMw5ifm.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Playfair" + }, + { + "src": "http://fonts.gstatic.com/s/playfair/v1/0nkQC9D7PO4KhmUJ5_zTZ_4MYQXznAK-bUcZXKO3UMnW6VNpe4-SiiZ4b8h5G3GutPnzfdgdoSMw5ifm.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Playfair" + }, + { + "src": "http://fonts.gstatic.com/s/playfair/v1/0nkQC9D7PO4KhmUJ5_zTZ_4MYQXznAK-bUcZXKO3UMnW6VNpe4-SiiZ4b8h5G3GutPmUfdgdoSMw5ifm.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Playfair" + }, + { + "src": "http://fonts.gstatic.com/s/playfair/v1/0nkQC9D7PO4KhmUJ5_zTZ_4MYQXznAK-bUcZXKO3UMnW6VNpe4-SiiZ4b8h5G3GutPm9fdgdoSMw5ifm.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Playfair" + }, + { + "src": "http://fonts.gstatic.com/s/playfair/v1/0nkSC9D7PO4KhmUJ59baVQ_iWhg0cgSrLQZjFpFUsLCFf_1ubkfQeG9KkBAQcOsAs-zcOW5eqycS4zfmNrE.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Playfair" + }, + { + "src": "http://fonts.gstatic.com/s/playfair/v1/0nkSC9D7PO4KhmUJ59baVQ_iWhg0cgSrLQZjFpFUsLCFf_1ubkfQeG9KkBAQcOsAs-zcOTBeqycS4zfmNrE.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Playfair" + }, + { + "src": "http://fonts.gstatic.com/s/playfair/v1/0nkSC9D7PO4KhmUJ59baVQ_iWhg0cgSrLQZjFpFUsLCFf_1ubkfQeG9KkBAQcOsAs-zcOQJeqycS4zfmNrE.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Playfair" + }, + { + "src": "http://fonts.gstatic.com/s/playfair/v1/0nkSC9D7PO4KhmUJ59baVQ_iWhg0cgSrLQZjFpFUsLCFf_1ubkfQeG9KkBAQcOsAs-zcOe5ZqycS4zfmNrE.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Playfair" + }, + { + "src": "http://fonts.gstatic.com/s/playfair/v1/0nkSC9D7PO4KhmUJ59baVQ_iWhg0cgSrLQZjFpFUsLCFf_1ubkfQeG9KkBAQcOsAs-zcOddZqycS4zfmNrE.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Playfair" + }, + { + "src": "http://fonts.gstatic.com/s/playfair/v1/0nkSC9D7PO4KhmUJ59baVQ_iWhg0cgSrLQZjFpFUsLCFf_1ubkfQeG9KkBAQcOsAs-zcObBZqycS4zfmNrE.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Playfair" + }, + { + "src": "http://fonts.gstatic.com/s/playfair/v1/0nkSC9D7PO4KhmUJ59baVQ_iWhg0cgSrLQZjFpFUsLCFf_1ubkfQeG9KkBAQcOsAs-zcOZlZqycS4zfmNrE.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Playfair" + } + ] + }, + { + "name": "Playfair Display", + "fontFamily": "Playfair Display, serif", + "slug": "playfair-display", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/playfairdisplay/v30/nuFvD-vYSZviVYUb_rj3ij__anPXJzDwcbmjWBN2PKdFvUDQZNLo_U2r.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Playfair Display" + }, + { + "src": "http://fonts.gstatic.com/s/playfairdisplay/v30/nuFvD-vYSZviVYUb_rj3ij__anPXJzDwcbmjWBN2PKd3vUDQZNLo_U2r.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Playfair Display" + }, + { + "src": "http://fonts.gstatic.com/s/playfairdisplay/v30/nuFvD-vYSZviVYUb_rj3ij__anPXJzDwcbmjWBN2PKebukDQZNLo_U2r.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Playfair Display" + }, + { + "src": "http://fonts.gstatic.com/s/playfairdisplay/v30/nuFvD-vYSZviVYUb_rj3ij__anPXJzDwcbmjWBN2PKeiukDQZNLo_U2r.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Playfair Display" + }, + { + "src": "http://fonts.gstatic.com/s/playfairdisplay/v30/nuFvD-vYSZviVYUb_rj3ij__anPXJzDwcbmjWBN2PKfFukDQZNLo_U2r.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Playfair Display" + }, + { + "src": "http://fonts.gstatic.com/s/playfairdisplay/v30/nuFvD-vYSZviVYUb_rj3ij__anPXJzDwcbmjWBN2PKfsukDQZNLo_U2r.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Playfair Display" + }, + { + "src": "http://fonts.gstatic.com/s/playfairdisplay/v30/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_qiTbtbK-F2rA0s.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Playfair Display" + }, + { + "src": "http://fonts.gstatic.com/s/playfairdisplay/v30/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_pqTbtbK-F2rA0s.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Playfair Display" + }, + { + "src": "http://fonts.gstatic.com/s/playfairdisplay/v30/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_naUbtbK-F2rA0s.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Playfair Display" + }, + { + "src": "http://fonts.gstatic.com/s/playfairdisplay/v30/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_k-UbtbK-F2rA0s.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Playfair Display" + }, + { + "src": "http://fonts.gstatic.com/s/playfairdisplay/v30/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_iiUbtbK-F2rA0s.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Playfair Display" + }, + { + "src": "http://fonts.gstatic.com/s/playfairdisplay/v30/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_gGUbtbK-F2rA0s.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Playfair Display" + } + ] + }, + { + "name": "Playfair Display SC", + "fontFamily": "Playfair Display SC, serif", + "slug": "playfair-display-sc", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/playfairdisplaysc/v15/ke85OhoaMkR6-hSn7kbHVoFf7ZfgMPr_pb4GEcM2M4s.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Playfair Display SC" + }, + { + "src": "http://fonts.gstatic.com/s/playfairdisplaysc/v15/ke87OhoaMkR6-hSn7kbHVoFf7ZfgMPr_lbwMFeEzI4sNKg.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Playfair Display SC" + }, + { + "src": "http://fonts.gstatic.com/s/playfairdisplaysc/v15/ke80OhoaMkR6-hSn7kbHVoFf7ZfgMPr_nQIpNcsdL4IUMyE.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Playfair Display SC" + }, + { + "src": "http://fonts.gstatic.com/s/playfairdisplaysc/v15/ke82OhoaMkR6-hSn7kbHVoFf7ZfgMPr_lbw0qc4XK6ARIyH5IA.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Playfair Display SC" + }, + { + "src": "http://fonts.gstatic.com/s/playfairdisplaysc/v15/ke80OhoaMkR6-hSn7kbHVoFf7ZfgMPr_nTorNcsdL4IUMyE.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Playfair Display SC" + }, + { + "src": "http://fonts.gstatic.com/s/playfairdisplaysc/v15/ke82OhoaMkR6-hSn7kbHVoFf7ZfgMPr_lbw0kcwXK6ARIyH5IA.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Playfair Display SC" + } + ] + }, + { + "name": "Plus Jakarta Sans", + "fontFamily": "Plus Jakarta Sans, sans-serif", + "slug": "plus-jakarta-sans", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/plusjakartasans/v7/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_KU7NShXUEKi4Rw.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Plus Jakarta Sans" + }, + { + "src": "http://fonts.gstatic.com/s/plusjakartasans/v7/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_907NShXUEKi4Rw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Plus Jakarta Sans" + }, + { + "src": "http://fonts.gstatic.com/s/plusjakartasans/v7/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_qU7NShXUEKi4Rw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Plus Jakarta Sans" + }, + { + "src": "http://fonts.gstatic.com/s/plusjakartasans/v7/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_m07NShXUEKi4Rw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Plus Jakarta Sans" + }, + { + "src": "http://fonts.gstatic.com/s/plusjakartasans/v7/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_d0nNShXUEKi4Rw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Plus Jakarta Sans" + }, + { + "src": "http://fonts.gstatic.com/s/plusjakartasans/v7/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_TknNShXUEKi4Rw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Plus Jakarta Sans" + }, + { + "src": "http://fonts.gstatic.com/s/plusjakartasans/v7/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_KUnNShXUEKi4Rw.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Plus Jakarta Sans" + }, + { + "src": "http://fonts.gstatic.com/s/plusjakartasans/v7/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ2lCR_QMq2oR82k.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Plus Jakarta Sans" + }, + { + "src": "http://fonts.gstatic.com/s/plusjakartasans/v7/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ17CR_QMq2oR82k.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Plus Jakarta Sans" + }, + { + "src": "http://fonts.gstatic.com/s/plusjakartasans/v7/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ0lCR_QMq2oR82k.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Plus Jakarta Sans" + }, + { + "src": "http://fonts.gstatic.com/s/plusjakartasans/v7/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ0XCR_QMq2oR82k.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Plus Jakarta Sans" + }, + { + "src": "http://fonts.gstatic.com/s/plusjakartasans/v7/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ37Dh_QMq2oR82k.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Plus Jakarta Sans" + }, + { + "src": "http://fonts.gstatic.com/s/plusjakartasans/v7/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ3CDh_QMq2oR82k.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Plus Jakarta Sans" + }, + { + "src": "http://fonts.gstatic.com/s/plusjakartasans/v7/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ2lDh_QMq2oR82k.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Plus Jakarta Sans" + } + ] + }, + { + "name": "Podkova", + "fontFamily": "Podkova, serif", + "slug": "podkova", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/podkova/v26/K2FufZ1EmftJSV9VQpXb1lo9vC3nZWtFzcU4EoporSHH.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Podkova" + }, + { + "src": "http://fonts.gstatic.com/s/podkova/v26/K2FufZ1EmftJSV9VQpXb1lo9vC3nZWt3zcU4EoporSHH.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Podkova" + }, + { + "src": "http://fonts.gstatic.com/s/podkova/v26/K2FufZ1EmftJSV9VQpXb1lo9vC3nZWubysU4EoporSHH.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Podkova" + }, + { + "src": "http://fonts.gstatic.com/s/podkova/v26/K2FufZ1EmftJSV9VQpXb1lo9vC3nZWuiysU4EoporSHH.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Podkova" + }, + { + "src": "http://fonts.gstatic.com/s/podkova/v26/K2FufZ1EmftJSV9VQpXb1lo9vC3nZWvFysU4EoporSHH.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Podkova" + } + ] + }, + { + "name": "Poiret One", + "fontFamily": "Poiret One, system-ui", + "slug": "poiret-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/poiretone/v14/UqyVK80NJXN4zfRgbdfbk5lWVscxdKE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Poiret One" + } + ] + }, + { + "name": "Poller One", + "fontFamily": "Poller One, system-ui", + "slug": "poller-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/pollerone/v19/ahccv82n0TN3gia5E4Bud-lbgUS5u0s.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Poller One" + } + ] + }, + { + "name": "Poltawski Nowy", + "fontFamily": "Poltawski Nowy, serif", + "slug": "poltawski-nowy", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/poltawskinowy/v2/flUsRq6ww480U1xsUpFXD-iDBNlSAOLkKCLnWq8KqCWnDS6V5CzCoQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Poltawski Nowy" + }, + { + "src": "http://fonts.gstatic.com/s/poltawskinowy/v2/flUsRq6ww480U1xsUpFXD-iDBNlSAOLkKCLnWq8KmiWnDS6V5CzCoQ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Poltawski Nowy" + }, + { + "src": "http://fonts.gstatic.com/s/poltawskinowy/v2/flUsRq6ww480U1xsUpFXD-iDBNlSAOLkKCLnWq8KdiKnDS6V5CzCoQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Poltawski Nowy" + }, + { + "src": "http://fonts.gstatic.com/s/poltawskinowy/v2/flUsRq6ww480U1xsUpFXD-iDBNlSAOLkKCLnWq8KTyKnDS6V5CzCoQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Poltawski Nowy" + }, + { + "src": "http://fonts.gstatic.com/s/poltawskinowy/v2/flUuRq6ww480U1xsUpFXD-iDBPNbMh08QUl99KgfYGZPTiSRxinSoROp.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Poltawski Nowy" + }, + { + "src": "http://fonts.gstatic.com/s/poltawskinowy/v2/flUuRq6ww480U1xsUpFXD-iDBPNbMh08QUl99KgfYGZ9TiSRxinSoROp.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Poltawski Nowy" + }, + { + "src": "http://fonts.gstatic.com/s/poltawskinowy/v2/flUuRq6ww480U1xsUpFXD-iDBPNbMh08QUl99KgfYGaRSSSRxinSoROp.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Poltawski Nowy" + }, + { + "src": "http://fonts.gstatic.com/s/poltawskinowy/v2/flUuRq6ww480U1xsUpFXD-iDBPNbMh08QUl99KgfYGaoSSSRxinSoROp.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Poltawski Nowy" + } + ] + }, + { + "name": "Poly", + "fontFamily": "Poly, serif", + "slug": "poly", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/poly/v16/MQpb-W6wKNitRLCAq2Lpris.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Poly" + }, + { + "src": "http://fonts.gstatic.com/s/poly/v16/MQpV-W6wKNitdLKKr0DsviuGWA.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Poly" + } + ] + }, + { + "name": "Pompiere", + "fontFamily": "Pompiere, system-ui", + "slug": "pompiere", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/pompiere/v15/VEMyRoxis5Dwuyeov6Wt5jDtreOL.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Pompiere" + } + ] + }, + { + "name": "Pontano Sans", + "fontFamily": "Pontano Sans, sans-serif", + "slug": "pontano-sans", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/pontanosans/v16/qFdW35GdgYR8EzR6oBLDHa3wyRf8W8eBM6XLOSzMncaMp9gzWsE.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Pontano Sans" + }, + { + "src": "http://fonts.gstatic.com/s/pontanosans/v16/qFdW35GdgYR8EzR6oBLDHa3wyRf8W8eBM6XLOXLMncaMp9gzWsE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Pontano Sans" + }, + { + "src": "http://fonts.gstatic.com/s/pontanosans/v16/qFdW35GdgYR8EzR6oBLDHa3wyRf8W8eBM6XLOUDMncaMp9gzWsE.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Pontano Sans" + }, + { + "src": "http://fonts.gstatic.com/s/pontanosans/v16/qFdW35GdgYR8EzR6oBLDHa3wyRf8W8eBM6XLOazLncaMp9gzWsE.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Pontano Sans" + }, + { + "src": "http://fonts.gstatic.com/s/pontanosans/v16/qFdW35GdgYR8EzR6oBLDHa3wyRf8W8eBM6XLOZXLncaMp9gzWsE.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Pontano Sans" + } + ] + }, + { + "name": "Poor Story", + "fontFamily": "Poor Story, system-ui", + "slug": "poor-story", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/poorstory/v20/jizfREFUsnUct9P6cDfd4OmnLD0Z4zM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Poor Story" + } + ] + }, + { + "name": "Poppins", + "fontFamily": "Poppins, sans-serif", + "slug": "poppins", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/poppins/v20/pxiGyp8kv8JHgFVrLPTed3FBGPaTSQ.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Poppins" + }, + { + "src": "http://fonts.gstatic.com/s/poppins/v20/pxiAyp8kv8JHgFVrJJLmE3tFOvODSVFF.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Poppins" + }, + { + "src": "http://fonts.gstatic.com/s/poppins/v20/pxiByp8kv8JHgFVrLFj_V1tvFP-KUEg.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Poppins" + }, + { + "src": "http://fonts.gstatic.com/s/poppins/v20/pxiDyp8kv8JHgFVrJJLmv1plEN2PQEhcqw.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Poppins" + }, + { + "src": "http://fonts.gstatic.com/s/poppins/v20/pxiByp8kv8JHgFVrLDz8V1tvFP-KUEg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Poppins" + }, + { + "src": "http://fonts.gstatic.com/s/poppins/v20/pxiDyp8kv8JHgFVrJJLm21llEN2PQEhcqw.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Poppins" + }, + { + "src": "http://fonts.gstatic.com/s/poppins/v20/pxiEyp8kv8JHgFVrFJDUc1NECPY.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Poppins" + }, + { + "src": "http://fonts.gstatic.com/s/poppins/v20/pxiGyp8kv8JHgFVrJJLed3FBGPaTSQ.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Poppins" + }, + { + "src": "http://fonts.gstatic.com/s/poppins/v20/pxiByp8kv8JHgFVrLGT9V1tvFP-KUEg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Poppins" + }, + { + "src": "http://fonts.gstatic.com/s/poppins/v20/pxiDyp8kv8JHgFVrJJLmg1hlEN2PQEhcqw.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Poppins" + }, + { + "src": "http://fonts.gstatic.com/s/poppins/v20/pxiByp8kv8JHgFVrLEj6V1tvFP-KUEg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Poppins" + }, + { + "src": "http://fonts.gstatic.com/s/poppins/v20/pxiDyp8kv8JHgFVrJJLmr19lEN2PQEhcqw.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Poppins" + }, + { + "src": "http://fonts.gstatic.com/s/poppins/v20/pxiByp8kv8JHgFVrLCz7V1tvFP-KUEg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Poppins" + }, + { + "src": "http://fonts.gstatic.com/s/poppins/v20/pxiDyp8kv8JHgFVrJJLmy15lEN2PQEhcqw.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Poppins" + }, + { + "src": "http://fonts.gstatic.com/s/poppins/v20/pxiByp8kv8JHgFVrLDD4V1tvFP-KUEg.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Poppins" + }, + { + "src": "http://fonts.gstatic.com/s/poppins/v20/pxiDyp8kv8JHgFVrJJLm111lEN2PQEhcqw.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Poppins" + }, + { + "src": "http://fonts.gstatic.com/s/poppins/v20/pxiByp8kv8JHgFVrLBT5V1tvFP-KUEg.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Poppins" + }, + { + "src": "http://fonts.gstatic.com/s/poppins/v20/pxiDyp8kv8JHgFVrJJLm81xlEN2PQEhcqw.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Poppins" + } + ] + }, + { + "name": "Port Lligat Sans", + "fontFamily": "Port Lligat Sans, sans-serif", + "slug": "port-lligat-sans", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/portlligatsans/v18/kmKmZrYrGBbdN1aV7Vokow6Lw4s4l7N0Tx4xEcQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Port Lligat Sans" + } + ] + }, + { + "name": "Port Lligat Slab", + "fontFamily": "Port Lligat Slab, serif", + "slug": "port-lligat-slab", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/portlligatslab/v21/LDIpaoiQNgArA8kR7ulhZ8P_NYOss7ob9yGLmfI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Port Lligat Slab" + } + ] + }, + { + "name": "Potta One", + "fontFamily": "Potta One, system-ui", + "slug": "potta-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/pottaone/v16/FeVSS05Bp6cy7xI-YfxQ3Z5nm29Gww.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Potta One" + } + ] + }, + { + "name": "Pragati Narrow", + "fontFamily": "Pragati Narrow, sans-serif", + "slug": "pragati-narrow", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/pragatinarrow/v13/vm8vdRf0T0bS1ffgsPB7WZ-mD17_ytN3M48a.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Pragati Narrow" + }, + { + "src": "http://fonts.gstatic.com/s/pragatinarrow/v13/vm8sdRf0T0bS1ffgsPB7WZ-mD2ZD5fd_GJMTlo_4.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Pragati Narrow" + } + ] + }, + { + "name": "Praise", + "fontFamily": "Praise, cursive", + "slug": "praise", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/praise/v5/qkBUXvUZ-cnFXcFyDvO67L9XmQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Praise" + } + ] + }, + { + "name": "Prata", + "fontFamily": "Prata, serif", + "slug": "prata", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/prata/v18/6xKhdSpbNNCT-vWIAG_5LWwJ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Prata" + } + ] + }, + { + "name": "Preahvihear", + "fontFamily": "Preahvihear, sans-serif", + "slug": "preahvihear", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/preahvihear/v27/6NUS8F-dNQeEYhzj7uluxswE49FJf8Wv.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Preahvihear" + } + ] + }, + { + "name": "Press Start 2P", + "fontFamily": "Press Start 2P, system-ui", + "slug": "press-start-2p", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/pressstart2p/v15/e3t4euO8T-267oIAQAu6jDQyK0nSgPJE4580.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Press Start 2P" + } + ] + }, + { + "name": "Pridi", + "fontFamily": "Pridi, serif", + "slug": "pridi", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/pridi/v11/2sDdZG5JnZLfkc1SiE0jRUG0AqUc.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Pridi" + }, + { + "src": "http://fonts.gstatic.com/s/pridi/v11/2sDdZG5JnZLfkc02i00jRUG0AqUc.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Pridi" + }, + { + "src": "http://fonts.gstatic.com/s/pridi/v11/2sDQZG5JnZLfkfWao2krbl29.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Pridi" + }, + { + "src": "http://fonts.gstatic.com/s/pridi/v11/2sDdZG5JnZLfkc1uik0jRUG0AqUc.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Pridi" + }, + { + "src": "http://fonts.gstatic.com/s/pridi/v11/2sDdZG5JnZLfkc1CjU0jRUG0AqUc.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Pridi" + }, + { + "src": "http://fonts.gstatic.com/s/pridi/v11/2sDdZG5JnZLfkc0mjE0jRUG0AqUc.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Pridi" + } + ] + }, + { + "name": "Princess Sofia", + "fontFamily": "Princess Sofia, cursive", + "slug": "princess-sofia", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/princesssofia/v22/qWczB6yguIb8DZ_GXZst16n7GRz7mDUoupoI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Princess Sofia" + } + ] + }, + { + "name": "Prociono", + "fontFamily": "Prociono, serif", + "slug": "prociono", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/prociono/v22/r05YGLlR-KxAf9GGO8upyDYtStiJ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Prociono" + } + ] + }, + { + "name": "Prompt", + "fontFamily": "Prompt, sans-serif", + "slug": "prompt", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/prompt/v10/-W_9XJnvUD7dzB2CA9oYREcjeo0k.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Prompt" + }, + { + "src": "http://fonts.gstatic.com/s/prompt/v10/-W_7XJnvUD7dzB2KZeJ8TkMBf50kbiM.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Prompt" + }, + { + "src": "http://fonts.gstatic.com/s/prompt/v10/-W_8XJnvUD7dzB2Cr_s4bmkvc5Q9dw.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Prompt" + }, + { + "src": "http://fonts.gstatic.com/s/prompt/v10/-W_6XJnvUD7dzB2KZeLQb2MrUZEtdzow.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Prompt" + }, + { + "src": "http://fonts.gstatic.com/s/prompt/v10/-W_8XJnvUD7dzB2Cy_g4bmkvc5Q9dw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Prompt" + }, + { + "src": "http://fonts.gstatic.com/s/prompt/v10/-W_6XJnvUD7dzB2KZeK0bGMrUZEtdzow.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Prompt" + }, + { + "src": "http://fonts.gstatic.com/s/prompt/v10/-W__XJnvUD7dzB26Z9AcZkIzeg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Prompt" + }, + { + "src": "http://fonts.gstatic.com/s/prompt/v10/-W_9XJnvUD7dzB2KZdoYREcjeo0k.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Prompt" + }, + { + "src": "http://fonts.gstatic.com/s/prompt/v10/-W_8XJnvUD7dzB2Ck_k4bmkvc5Q9dw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Prompt" + }, + { + "src": "http://fonts.gstatic.com/s/prompt/v10/-W_6XJnvUD7dzB2KZeLsbWMrUZEtdzow.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Prompt" + }, + { + "src": "http://fonts.gstatic.com/s/prompt/v10/-W_8XJnvUD7dzB2Cv_44bmkvc5Q9dw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Prompt" + }, + { + "src": "http://fonts.gstatic.com/s/prompt/v10/-W_6XJnvUD7dzB2KZeLAamMrUZEtdzow.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Prompt" + }, + { + "src": "http://fonts.gstatic.com/s/prompt/v10/-W_8XJnvUD7dzB2C2_84bmkvc5Q9dw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Prompt" + }, + { + "src": "http://fonts.gstatic.com/s/prompt/v10/-W_6XJnvUD7dzB2KZeKka2MrUZEtdzow.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Prompt" + }, + { + "src": "http://fonts.gstatic.com/s/prompt/v10/-W_8XJnvUD7dzB2Cx_w4bmkvc5Q9dw.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Prompt" + }, + { + "src": "http://fonts.gstatic.com/s/prompt/v10/-W_6XJnvUD7dzB2KZeK4aGMrUZEtdzow.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Prompt" + }, + { + "src": "http://fonts.gstatic.com/s/prompt/v10/-W_8XJnvUD7dzB2C4_04bmkvc5Q9dw.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Prompt" + }, + { + "src": "http://fonts.gstatic.com/s/prompt/v10/-W_6XJnvUD7dzB2KZeKcaWMrUZEtdzow.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Prompt" + } + ] + }, + { + "name": "Prosto One", + "fontFamily": "Prosto One, system-ui", + "slug": "prosto-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/prostoone/v17/OpNJno4VhNfK-RgpwWWxpipfWhXD00c.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Prosto One" + } + ] + }, + { + "name": "Proza Libre", + "fontFamily": "Proza Libre, sans-serif", + "slug": "proza-libre", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/prozalibre/v9/LYjGdGHgj0k1DIQRyUEyyHovftvXWYyz.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Proza Libre" + }, + { + "src": "http://fonts.gstatic.com/s/prozalibre/v9/LYjEdGHgj0k1DIQRyUEyyEotdN_1XJyz7zc.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Proza Libre" + }, + { + "src": "http://fonts.gstatic.com/s/prozalibre/v9/LYjbdGHgj0k1DIQRyUEyyELbV__fcpC69i6N.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Proza Libre" + }, + { + "src": "http://fonts.gstatic.com/s/prozalibre/v9/LYjZdGHgj0k1DIQRyUEyyEotTCvceJSY8z6Np1k.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Proza Libre" + }, + { + "src": "http://fonts.gstatic.com/s/prozalibre/v9/LYjbdGHgj0k1DIQRyUEyyEL3UP_fcpC69i6N.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Proza Libre" + }, + { + "src": "http://fonts.gstatic.com/s/prozalibre/v9/LYjZdGHgj0k1DIQRyUEyyEotTAfbeJSY8z6Np1k.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Proza Libre" + }, + { + "src": "http://fonts.gstatic.com/s/prozalibre/v9/LYjbdGHgj0k1DIQRyUEyyEKTUf_fcpC69i6N.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Proza Libre" + }, + { + "src": "http://fonts.gstatic.com/s/prozalibre/v9/LYjZdGHgj0k1DIQRyUEyyEotTGPaeJSY8z6Np1k.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Proza Libre" + }, + { + "src": "http://fonts.gstatic.com/s/prozalibre/v9/LYjbdGHgj0k1DIQRyUEyyEKPUv_fcpC69i6N.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Proza Libre" + }, + { + "src": "http://fonts.gstatic.com/s/prozalibre/v9/LYjZdGHgj0k1DIQRyUEyyEotTH_ZeJSY8z6Np1k.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Proza Libre" + } + ] + }, + { + "name": "Public Sans", + "fontFamily": "Public Sans, sans-serif", + "slug": "public-sans", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuFpi5ww0pX189fg.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Public Sans" + }, + { + "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymulpm5ww0pX189fg.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Public Sans" + }, + { + "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuSJm5ww0pX189fg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Public Sans" + }, + { + "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuFpm5ww0pX189fg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Public Sans" + }, + { + "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuJJm5ww0pX189fg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Public Sans" + }, + { + "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuyJ65ww0pX189fg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Public Sans" + }, + { + "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymu8Z65ww0pX189fg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Public Sans" + }, + { + "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymulp65ww0pX189fg.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Public Sans" + }, + { + "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuv565ww0pX189fg.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Public Sans" + }, + { + "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tpRgQctfVotfj7j.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Public Sans" + }, + { + "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673trRgActfVotfj7j.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Public Sans" + }, + { + "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673toPgActfVotfj7j.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Public Sans" + }, + { + "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tpRgActfVotfj7j.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Public Sans" + }, + { + "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tpjgActfVotfj7j.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Public Sans" + }, + { + "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tqPhwctfVotfj7j.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Public Sans" + }, + { + "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tq2hwctfVotfj7j.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Public Sans" + }, + { + "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673trRhwctfVotfj7j.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Public Sans" + }, + { + "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tr4hwctfVotfj7j.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Public Sans" + } + ] + }, + { + "name": "Puppies Play", + "fontFamily": "Puppies Play, cursive", + "slug": "puppies-play", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/puppiesplay/v6/wlp2gwHZEV99rG6M3NR9uB9vaAJSA_JN3Q.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Puppies Play" + } + ] + }, + { + "name": "Puritan", + "fontFamily": "Puritan, sans-serif", + "slug": "puritan", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/puritan/v24/845YNMgkAJ2VTtIo9JrwRdaI50M.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Puritan" + }, + { + "src": "http://fonts.gstatic.com/s/puritan/v24/845aNMgkAJ2VTtIoxJj6QfSN90PfXA.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Puritan" + }, + { + "src": "http://fonts.gstatic.com/s/puritan/v24/845dNMgkAJ2VTtIozCbfYd6j-0rGRes.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Puritan" + }, + { + "src": "http://fonts.gstatic.com/s/puritan/v24/845fNMgkAJ2VTtIoxJjC_dup_2jDVevnLQ.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Puritan" + } + ] + }, + { + "name": "Purple Purse", + "fontFamily": "Purple Purse, system-ui", + "slug": "purple-purse", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/purplepurse/v21/qWctB66gv53iAp-Vfs4My6qyeBb_ujA4ug.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Purple Purse" + } + ] + }, + { + "name": "Qahiri", + "fontFamily": "Qahiri, sans-serif", + "slug": "qahiri", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/qahiri/v9/tsssAp1RZy0C_hGuU3Chrnmupw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Qahiri" + } + ] + }, + { + "name": "Quando", + "fontFamily": "Quando, serif", + "slug": "quando", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/quando/v14/xMQVuFNaVa6YuW0pC6WzKX_QmA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Quando" + } + ] + }, + { + "name": "Quantico", + "fontFamily": "Quantico, sans-serif", + "slug": "quantico", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/quantico/v15/rax-HiSdp9cPL3KIF4xsLjxSmlLZ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Quantico" + }, + { + "src": "http://fonts.gstatic.com/s/quantico/v15/rax4HiSdp9cPL3KIF7xuJDhwn0LZ6T8.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Quantico" + }, + { + "src": "http://fonts.gstatic.com/s/quantico/v15/rax5HiSdp9cPL3KIF7TQARhasU7Q8Cad.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Quantico" + }, + { + "src": "http://fonts.gstatic.com/s/quantico/v15/rax7HiSdp9cPL3KIF7xuHIRfu0ry9TadML4.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Quantico" + } + ] + }, + { + "name": "Quattrocento", + "fontFamily": "Quattrocento, serif", + "slug": "quattrocento", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/quattrocento/v18/OZpEg_xvsDZQL_LKIF7q4jPHxGL7f4jFuA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Quattrocento" + }, + { + "src": "http://fonts.gstatic.com/s/quattrocento/v18/OZpbg_xvsDZQL_LKIF7q4jP_eE3fd6PZsXcM9w.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Quattrocento" + } + ] + }, + { + "name": "Quattrocento Sans", + "fontFamily": "Quattrocento Sans, sans-serif", + "slug": "quattrocento-sans", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/quattrocentosans/v18/va9c4lja2NVIDdIAAoMR5MfuElaRB3zOvU7eHGHJ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Quattrocento Sans" + }, + { + "src": "http://fonts.gstatic.com/s/quattrocentosans/v18/va9a4lja2NVIDdIAAoMR5MfuElaRB0zMt0r8GXHJkLI.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Quattrocento Sans" + }, + { + "src": "http://fonts.gstatic.com/s/quattrocentosans/v18/va9Z4lja2NVIDdIAAoMR5MfuElaRB0RykmrWN33AiasJ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Quattrocento Sans" + }, + { + "src": "http://fonts.gstatic.com/s/quattrocentosans/v18/va9X4lja2NVIDdIAAoMR5MfuElaRB0zMj_bTPXnijLsJV7E.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Quattrocento Sans" + } + ] + }, + { + "name": "Questrial", + "fontFamily": "Questrial, sans-serif", + "slug": "questrial", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/questrial/v18/QdVUSTchPBm7nuUeVf7EuStkm20oJA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Questrial" + } + ] + }, + { + "name": "Quicksand", + "fontFamily": "Quicksand, sans-serif", + "slug": "quicksand", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/quicksand/v30/6xK-dSZaM9iE8KbpRA_LJ3z8mH9BOJvgkKEo18G0wx40QDw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Quicksand" + }, + { + "src": "http://fonts.gstatic.com/s/quicksand/v30/6xK-dSZaM9iE8KbpRA_LJ3z8mH9BOJvgkP8o18G0wx40QDw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Quicksand" + }, + { + "src": "http://fonts.gstatic.com/s/quicksand/v30/6xK-dSZaM9iE8KbpRA_LJ3z8mH9BOJvgkM0o18G0wx40QDw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Quicksand" + }, + { + "src": "http://fonts.gstatic.com/s/quicksand/v30/6xK-dSZaM9iE8KbpRA_LJ3z8mH9BOJvgkCEv18G0wx40QDw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Quicksand" + }, + { + "src": "http://fonts.gstatic.com/s/quicksand/v30/6xK-dSZaM9iE8KbpRA_LJ3z8mH9BOJvgkBgv18G0wx40QDw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Quicksand" + } + ] + }, + { + "name": "Quintessential", + "fontFamily": "Quintessential, cursive", + "slug": "quintessential", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/quintessential/v20/fdNn9sOGq31Yjnh3qWU14DdtjY5wS7kmAyxM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Quintessential" + } + ] + }, + { + "name": "Qwigley", + "fontFamily": "Qwigley, cursive", + "slug": "qwigley", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/qwigley/v16/1cXzaU3UGJb5tGoCuVxsi1mBmcE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Qwigley" + } + ] + }, + { + "name": "Qwitcher Grypen", + "fontFamily": "Qwitcher Grypen, cursive", + "slug": "qwitcher-grypen", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/qwitchergrypen/v3/pxicypclp9tDilN9RrC5BSI1dZmrSGNAom-wpw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Qwitcher Grypen" + }, + { + "src": "http://fonts.gstatic.com/s/qwitchergrypen/v3/pxiZypclp9tDilN9RrC5BSI1dZmT9ExkqkSsrvNXiA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Qwitcher Grypen" + } + ] + }, + { + "name": "Racing Sans One", + "fontFamily": "Racing Sans One, system-ui", + "slug": "racing-sans-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/racingsansone/v13/sykr-yRtm7EvTrXNxkv5jfKKyDCwL3rmWpIBtA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Racing Sans One" + } + ] + }, + { + "name": "Radio Canada", + "fontFamily": "Radio Canada, sans-serif", + "slug": "radio-canada", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/radiocanada/v21/XRX13ISXn0dBMcibU6jlAqr3ejLv5OLZYiYXik6db2P4jxxlsls-0nESkQPIJOdSSfOT.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Radio Canada" + }, + { + "src": "http://fonts.gstatic.com/s/radiocanada/v21/XRX13ISXn0dBMcibU6jlAqr3ejLv5OLZYiYXik6db2P4jxxlsls-0nFMkQPIJOdSSfOT.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Radio Canada" + }, + { + "src": "http://fonts.gstatic.com/s/radiocanada/v21/XRX13ISXn0dBMcibU6jlAqr3ejLv5OLZYiYXik6db2P4jxxlsls-0nF-kQPIJOdSSfOT.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Radio Canada" + }, + { + "src": "http://fonts.gstatic.com/s/radiocanada/v21/XRX13ISXn0dBMcibU6jlAqr3ejLv5OLZYiYXik6db2P4jxxlsls-0nGSlgPIJOdSSfOT.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Radio Canada" + }, + { + "src": "http://fonts.gstatic.com/s/radiocanada/v21/XRX13ISXn0dBMcibU6jlAqr3ejLv5OLZYiYXik6db2P4jxxlsls-0nGrlgPIJOdSSfOT.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Radio Canada" + }, + { + "src": "http://fonts.gstatic.com/s/radiocanada/v21/XRX33ISXn0dBMcibU6jlAqrdcwAMBJuK9IgQn4bfnSrKcMQM2cGQ1WSE0rWLLuNwTOOTa9k.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Radio Canada" + }, + { + "src": "http://fonts.gstatic.com/s/radiocanada/v21/XRX33ISXn0dBMcibU6jlAqrdcwAMBJuK9IgQn4bfnSrKcMQM2cGQ1WSE0uuLLuNwTOOTa9k.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Radio Canada" + }, + { + "src": "http://fonts.gstatic.com/s/radiocanada/v21/XRX33ISXn0dBMcibU6jlAqrdcwAMBJuK9IgQn4bfnSrKcMQM2cGQ1WSE0tmLLuNwTOOTa9k.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Radio Canada" + }, + { + "src": "http://fonts.gstatic.com/s/radiocanada/v21/XRX33ISXn0dBMcibU6jlAqrdcwAMBJuK9IgQn4bfnSrKcMQM2cGQ1WSE0jWMLuNwTOOTa9k.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Radio Canada" + }, + { + "src": "http://fonts.gstatic.com/s/radiocanada/v21/XRX33ISXn0dBMcibU6jlAqrdcwAMBJuK9IgQn4bfnSrKcMQM2cGQ1WSE0gyMLuNwTOOTa9k.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Radio Canada" + } + ] + }, + { + "name": "Radley", + "fontFamily": "Radley, serif", + "slug": "radley", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/radley/v20/LYjDdGzinEIjCN19oAlEpVs3VQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Radley" + }, + { + "src": "http://fonts.gstatic.com/s/radley/v20/LYjBdGzinEIjCN1NogNAh14nVcfe.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Radley" + } + ] + }, + { + "name": "Rajdhani", + "fontFamily": "Rajdhani, sans-serif", + "slug": "rajdhani", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rajdhani/v15/LDI2apCSOBg7S-QT7pasEcOsc-bGkqIw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Rajdhani" + }, + { + "src": "http://fonts.gstatic.com/s/rajdhani/v15/LDIxapCSOBg7S-QT7q4AOeekWPrP.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rajdhani" + }, + { + "src": "http://fonts.gstatic.com/s/rajdhani/v15/LDI2apCSOBg7S-QT7pb0EMOsc-bGkqIw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Rajdhani" + }, + { + "src": "http://fonts.gstatic.com/s/rajdhani/v15/LDI2apCSOBg7S-QT7pbYF8Osc-bGkqIw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Rajdhani" + }, + { + "src": "http://fonts.gstatic.com/s/rajdhani/v15/LDI2apCSOBg7S-QT7pa8FsOsc-bGkqIw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Rajdhani" + } + ] + }, + { + "name": "Rakkas", + "fontFamily": "Rakkas, system-ui", + "slug": "rakkas", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rakkas/v17/Qw3cZQlNHiblL3j_lttPOeMcCw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rakkas" + } + ] + }, + { + "name": "Raleway", + "fontFamily": "Raleway, sans-serif", + "slug": "raleway", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/raleway/v28/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvao4CPNLA3JC9c.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Raleway" + }, + { + "src": "http://fonts.gstatic.com/s/raleway/v28/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVtaooCPNLA3JC9c.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Raleway" + }, + { + "src": "http://fonts.gstatic.com/s/raleway/v28/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVuEooCPNLA3JC9c.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Raleway" + }, + { + "src": "http://fonts.gstatic.com/s/raleway/v28/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvaooCPNLA3JC9c.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Raleway" + }, + { + "src": "http://fonts.gstatic.com/s/raleway/v28/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvoooCPNLA3JC9c.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Raleway" + }, + { + "src": "http://fonts.gstatic.com/s/raleway/v28/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVsEpYCPNLA3JC9c.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Raleway" + }, + { + "src": "http://fonts.gstatic.com/s/raleway/v28/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVs9pYCPNLA3JC9c.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Raleway" + }, + { + "src": "http://fonts.gstatic.com/s/raleway/v28/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVtapYCPNLA3JC9c.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Raleway" + }, + { + "src": "http://fonts.gstatic.com/s/raleway/v28/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVtzpYCPNLA3JC9c.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Raleway" + }, + { + "src": "http://fonts.gstatic.com/s/raleway/v28/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4WjNPrQVIT9c2c8.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Raleway" + }, + { + "src": "http://fonts.gstatic.com/s/raleway/v28/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4ejMPrQVIT9c2c8.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Raleway" + }, + { + "src": "http://fonts.gstatic.com/s/raleway/v28/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4TbMPrQVIT9c2c8.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Raleway" + }, + { + "src": "http://fonts.gstatic.com/s/raleway/v28/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4WjMPrQVIT9c2c8.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Raleway" + }, + { + "src": "http://fonts.gstatic.com/s/raleway/v28/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4VrMPrQVIT9c2c8.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Raleway" + }, + { + "src": "http://fonts.gstatic.com/s/raleway/v28/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4bbLPrQVIT9c2c8.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Raleway" + }, + { + "src": "http://fonts.gstatic.com/s/raleway/v28/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4Y_LPrQVIT9c2c8.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Raleway" + }, + { + "src": "http://fonts.gstatic.com/s/raleway/v28/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4ejLPrQVIT9c2c8.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Raleway" + }, + { + "src": "http://fonts.gstatic.com/s/raleway/v28/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4cHLPrQVIT9c2c8.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Raleway" + } + ] + }, + { + "name": "Raleway Dots", + "fontFamily": "Raleway Dots, system-ui", + "slug": "raleway-dots", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ralewaydots/v14/6NUR8FifJg6AfQvzpshgwJ8kyf9Fdty2ew.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Raleway Dots" + } + ] + }, + { + "name": "Ramabhadra", + "fontFamily": "Ramabhadra, sans-serif", + "slug": "ramabhadra", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ramabhadra/v15/EYq2maBOwqRW9P1SQ83LehNGX5uWw3o.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Ramabhadra" + } + ] + }, + { + "name": "Ramaraja", + "fontFamily": "Ramaraja, serif", + "slug": "ramaraja", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ramaraja/v15/SlGTmQearpYAYG1CABIkqnB6aSQU.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Ramaraja" + } + ] + }, + { + "name": "Rambla", + "fontFamily": "Rambla, sans-serif", + "slug": "rambla", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rambla/v13/snfrs0ip98hx6mr0I7IONthkwQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rambla" + }, + { + "src": "http://fonts.gstatic.com/s/rambla/v13/snfps0ip98hx6mrEIbgKFN10wYKa.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Rambla" + }, + { + "src": "http://fonts.gstatic.com/s/rambla/v13/snfos0ip98hx6mrMn50qPvN4yJuDYQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Rambla" + }, + { + "src": "http://fonts.gstatic.com/s/rambla/v13/snfus0ip98hx6mrEIYC2O_l86p6TYS-Y.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Rambla" + } + ] + }, + { + "name": "Rammetto One", + "fontFamily": "Rammetto One, system-ui", + "slug": "rammetto-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rammettoone/v15/LhWiMV3HOfMbMetJG3lQDpp9Mvuciu-_SQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rammetto One" + } + ] + }, + { + "name": "Rampart One", + "fontFamily": "Rampart One, system-ui", + "slug": "rampart-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rampartone/v7/K2F1fZFGl_JSR1tAWNG9R6qgLS76ZHOM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rampart One" + } + ] + }, + { + "name": "Ranchers", + "fontFamily": "Ranchers, system-ui", + "slug": "ranchers", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ranchers/v14/zrfm0H3Lx-P2Xvs2AoDYDC79XTHv.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Ranchers" + } + ] + }, + { + "name": "Rancho", + "fontFamily": "Rancho, cursive", + "slug": "rancho", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rancho/v17/46kulbzmXjLaqZRlbWXgd0RY1g.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rancho" + } + ] + }, + { + "name": "Ranga", + "fontFamily": "Ranga, system-ui", + "slug": "ranga", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ranga/v18/C8ct4cYisGb28p6CLDwZwmGE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Ranga" + }, + { + "src": "http://fonts.gstatic.com/s/ranga/v18/C8cg4cYisGb28qY-AxgR6X2NZAn2.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Ranga" + } + ] + }, + { + "name": "Rasa", + "fontFamily": "Rasa, serif", + "slug": "rasa", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rasa/v20/xn76YHIn1mWmVKl8ZtAM9NrJfN4YJW41fcvN2KT4.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Rasa" + }, + { + "src": "http://fonts.gstatic.com/s/rasa/v20/xn76YHIn1mWmVKl8ZtAM9NrJfN5GJW41fcvN2KT4.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rasa" + }, + { + "src": "http://fonts.gstatic.com/s/rasa/v20/xn76YHIn1mWmVKl8ZtAM9NrJfN50JW41fcvN2KT4.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Rasa" + }, + { + "src": "http://fonts.gstatic.com/s/rasa/v20/xn76YHIn1mWmVKl8ZtAM9NrJfN6YIm41fcvN2KT4.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Rasa" + }, + { + "src": "http://fonts.gstatic.com/s/rasa/v20/xn76YHIn1mWmVKl8ZtAM9NrJfN6hIm41fcvN2KT4.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Rasa" + }, + { + "src": "http://fonts.gstatic.com/s/rasa/v20/xn78YHIn1mWmfqBOmQhln0Bne8uOZth2d8_v3bT4Ycc.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Rasa" + }, + { + "src": "http://fonts.gstatic.com/s/rasa/v20/xn78YHIn1mWmfqBOmQhln0Bne8uOZoZ2d8_v3bT4Ycc.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Rasa" + }, + { + "src": "http://fonts.gstatic.com/s/rasa/v20/xn78YHIn1mWmfqBOmQhln0Bne8uOZrR2d8_v3bT4Ycc.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Rasa" + }, + { + "src": "http://fonts.gstatic.com/s/rasa/v20/xn78YHIn1mWmfqBOmQhln0Bne8uOZlhxd8_v3bT4Ycc.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Rasa" + }, + { + "src": "http://fonts.gstatic.com/s/rasa/v20/xn78YHIn1mWmfqBOmQhln0Bne8uOZmFxd8_v3bT4Ycc.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Rasa" + } + ] + }, + { + "name": "Rationale", + "fontFamily": "Rationale, sans-serif", + "slug": "rationale", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rationale/v24/9XUnlJ92n0_JFxHIfHcsdlFMzLC2Zw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rationale" + } + ] + }, + { + "name": "Ravi Prakash", + "fontFamily": "Ravi Prakash, system-ui", + "slug": "ravi-prakash", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/raviprakash/v19/gokpH6fsDkVrF9Bv9X8SOAKHmNZEq6TTFw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Ravi Prakash" + } + ] + }, + { + "name": "Readex Pro", + "fontFamily": "Readex Pro, sans-serif", + "slug": "readex-pro", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/readexpro/v21/SLXnc1bJ7HE5YDoGPuzj_dh8uc7wUy8ZQQyX2KY8TL0kGZN6blTCYUSmgmsglvjkag.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Readex Pro" + }, + { + "src": "http://fonts.gstatic.com/s/readexpro/v21/SLXnc1bJ7HE5YDoGPuzj_dh8uc7wUy8ZQQyX2KY8TL0kGZN6blTCv0Smgmsglvjkag.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Readex Pro" + }, + { + "src": "http://fonts.gstatic.com/s/readexpro/v21/SLXnc1bJ7HE5YDoGPuzj_dh8uc7wUy8ZQQyX2KY8TL0kGZN6blTC4USmgmsglvjkag.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Readex Pro" + }, + { + "src": "http://fonts.gstatic.com/s/readexpro/v21/SLXnc1bJ7HE5YDoGPuzj_dh8uc7wUy8ZQQyX2KY8TL0kGZN6blTC00Smgmsglvjkag.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Readex Pro" + }, + { + "src": "http://fonts.gstatic.com/s/readexpro/v21/SLXnc1bJ7HE5YDoGPuzj_dh8uc7wUy8ZQQyX2KY8TL0kGZN6blTCP0Omgmsglvjkag.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Readex Pro" + }, + { + "src": "http://fonts.gstatic.com/s/readexpro/v21/SLXnc1bJ7HE5YDoGPuzj_dh8uc7wUy8ZQQyX2KY8TL0kGZN6blTCBkOmgmsglvjkag.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Readex Pro" + } + ] + }, + { + "name": "Recursive", + "fontFamily": "Recursive, sans-serif", + "slug": "recursive", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/recursive/v37/8vJN7wMr0mhh-RQChyHEH06TlXhq_gukbYrFMk1QuAIcyEwG_X-dpEfaE5YaERmK-CImKsvxvU-MXGX2fSqasNfUvz2xbXfn1uEQadDck018vwxjDJCL.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Recursive" + }, + { + "src": "http://fonts.gstatic.com/s/recursive/v37/8vJN7wMr0mhh-RQChyHEH06TlXhq_gukbYrFMk1QuAIcyEwG_X-dpEfaE5YaERmK-CImKsvxvU-MXGX2fSqasNfUvz2xbXfn1uEQadCCk018vwxjDJCL.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Recursive" + }, + { + "src": "http://fonts.gstatic.com/s/recursive/v37/8vJN7wMr0mhh-RQChyHEH06TlXhq_gukbYrFMk1QuAIcyEwG_X-dpEfaE5YaERmK-CImKsvxvU-MXGX2fSqasNfUvz2xbXfn1uEQadCwk018vwxjDJCL.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Recursive" + }, + { + "src": "http://fonts.gstatic.com/s/recursive/v37/8vJN7wMr0mhh-RQChyHEH06TlXhq_gukbYrFMk1QuAIcyEwG_X-dpEfaE5YaERmK-CImKsvxvU-MXGX2fSqasNfUvz2xbXfn1uEQadBclE18vwxjDJCL.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Recursive" + }, + { + "src": "http://fonts.gstatic.com/s/recursive/v37/8vJN7wMr0mhh-RQChyHEH06TlXhq_gukbYrFMk1QuAIcyEwG_X-dpEfaE5YaERmK-CImKsvxvU-MXGX2fSqasNfUvz2xbXfn1uEQadBllE18vwxjDJCL.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Recursive" + }, + { + "src": "http://fonts.gstatic.com/s/recursive/v37/8vJN7wMr0mhh-RQChyHEH06TlXhq_gukbYrFMk1QuAIcyEwG_X-dpEfaE5YaERmK-CImKsvxvU-MXGX2fSqasNfUvz2xbXfn1uEQadAClE18vwxjDJCL.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Recursive" + }, + { + "src": "http://fonts.gstatic.com/s/recursive/v37/8vJN7wMr0mhh-RQChyHEH06TlXhq_gukbYrFMk1QuAIcyEwG_X-dpEfaE5YaERmK-CImKsvxvU-MXGX2fSqasNfUvz2xbXfn1uEQadArlE18vwxjDJCL.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Recursive" + } + ] + }, + { + "name": "Red Hat Display", + "fontFamily": "Red Hat Display, sans-serif", + "slug": "red-hat-display", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/redhatdisplay/v14/8vIf7wUr0m80wwYf0QCXZzYzUoTK8RZQvRd-D1NYbjKWckg5-Xecg3w.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Red Hat Display" + }, + { + "src": "http://fonts.gstatic.com/s/redhatdisplay/v14/8vIf7wUr0m80wwYf0QCXZzYzUoTK8RZQvRd-D1NYbmyWckg5-Xecg3w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Red Hat Display" + }, + { + "src": "http://fonts.gstatic.com/s/redhatdisplay/v14/8vIf7wUr0m80wwYf0QCXZzYzUoTK8RZQvRd-D1NYbl6Wckg5-Xecg3w.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Red Hat Display" + }, + { + "src": "http://fonts.gstatic.com/s/redhatdisplay/v14/8vIf7wUr0m80wwYf0QCXZzYzUoTK8RZQvRd-D1NYbrKRckg5-Xecg3w.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Red Hat Display" + }, + { + "src": "http://fonts.gstatic.com/s/redhatdisplay/v14/8vIf7wUr0m80wwYf0QCXZzYzUoTK8RZQvRd-D1NYbouRckg5-Xecg3w.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Red Hat Display" + }, + { + "src": "http://fonts.gstatic.com/s/redhatdisplay/v14/8vIf7wUr0m80wwYf0QCXZzYzUoTK8RZQvRd-D1NYbuyRckg5-Xecg3w.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Red Hat Display" + }, + { + "src": "http://fonts.gstatic.com/s/redhatdisplay/v14/8vIf7wUr0m80wwYf0QCXZzYzUoTK8RZQvRd-D1NYbsWRckg5-Xecg3w.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Red Hat Display" + }, + { + "src": "http://fonts.gstatic.com/s/redhatdisplay/v14/8vIh7wUr0m80wwYf0QCXZzYzUoTg-CSvZX4Vlf1fe6TVxAsz_VWZk3zJGg.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Red Hat Display" + }, + { + "src": "http://fonts.gstatic.com/s/redhatdisplay/v14/8vIh7wUr0m80wwYf0QCXZzYzUoTg-CSvZX4Vlf1fe6TVmgsz_VWZk3zJGg.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Red Hat Display" + }, + { + "src": "http://fonts.gstatic.com/s/redhatdisplay/v14/8vIh7wUr0m80wwYf0QCXZzYzUoTg-CSvZX4Vlf1fe6TVqAsz_VWZk3zJGg.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Red Hat Display" + }, + { + "src": "http://fonts.gstatic.com/s/redhatdisplay/v14/8vIh7wUr0m80wwYf0QCXZzYzUoTg-CSvZX4Vlf1fe6TVRAwz_VWZk3zJGg.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Red Hat Display" + }, + { + "src": "http://fonts.gstatic.com/s/redhatdisplay/v14/8vIh7wUr0m80wwYf0QCXZzYzUoTg-CSvZX4Vlf1fe6TVfQwz_VWZk3zJGg.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Red Hat Display" + }, + { + "src": "http://fonts.gstatic.com/s/redhatdisplay/v14/8vIh7wUr0m80wwYf0QCXZzYzUoTg-CSvZX4Vlf1fe6TVGgwz_VWZk3zJGg.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Red Hat Display" + }, + { + "src": "http://fonts.gstatic.com/s/redhatdisplay/v14/8vIh7wUr0m80wwYf0QCXZzYzUoTg-CSvZX4Vlf1fe6TVMwwz_VWZk3zJGg.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Red Hat Display" + } + ] + }, + { + "name": "Red Hat Mono", + "fontFamily": "Red Hat Mono, monospace", + "slug": "red-hat-mono", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/redhatmono/v10/jVyY7nDnA2uf2zVvFAhhzEs-VMSjJpBTfgjwQQPI-7HNuW4QuKI.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Red Hat Mono" + }, + { + "src": "http://fonts.gstatic.com/s/redhatmono/v10/jVyY7nDnA2uf2zVvFAhhzEs-VMSjJpBTfgjwQV3I-7HNuW4QuKI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Red Hat Mono" + }, + { + "src": "http://fonts.gstatic.com/s/redhatmono/v10/jVyY7nDnA2uf2zVvFAhhzEs-VMSjJpBTfgjwQW_I-7HNuW4QuKI.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Red Hat Mono" + }, + { + "src": "http://fonts.gstatic.com/s/redhatmono/v10/jVyY7nDnA2uf2zVvFAhhzEs-VMSjJpBTfgjwQYPP-7HNuW4QuKI.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Red Hat Mono" + }, + { + "src": "http://fonts.gstatic.com/s/redhatmono/v10/jVyY7nDnA2uf2zVvFAhhzEs-VMSjJpBTfgjwQbrP-7HNuW4QuKI.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Red Hat Mono" + }, + { + "src": "http://fonts.gstatic.com/s/redhatmono/v10/jVye7nDnA2uf2zVvFAhhzEsUXfZc_vk45Kb3VJWLTfLHvUwVqKIJuw.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Red Hat Mono" + }, + { + "src": "http://fonts.gstatic.com/s/redhatmono/v10/jVye7nDnA2uf2zVvFAhhzEsUXfZc_vk45Kb3VJWLE_LHvUwVqKIJuw.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Red Hat Mono" + }, + { + "src": "http://fonts.gstatic.com/s/redhatmono/v10/jVye7nDnA2uf2zVvFAhhzEsUXfZc_vk45Kb3VJWLIfLHvUwVqKIJuw.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Red Hat Mono" + }, + { + "src": "http://fonts.gstatic.com/s/redhatmono/v10/jVye7nDnA2uf2zVvFAhhzEsUXfZc_vk45Kb3VJWLzfXHvUwVqKIJuw.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Red Hat Mono" + }, + { + "src": "http://fonts.gstatic.com/s/redhatmono/v10/jVye7nDnA2uf2zVvFAhhzEsUXfZc_vk45Kb3VJWL9PXHvUwVqKIJuw.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Red Hat Mono" + } + ] + }, + { + "name": "Red Hat Text", + "fontFamily": "Red Hat Text, sans-serif", + "slug": "red-hat-text", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/redhattext/v13/RrQCbohi_ic6B3yVSzGBrMx6ZI_cy1A6Ok2ML-ZwVrbacYVFtIY.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Red Hat Text" + }, + { + "src": "http://fonts.gstatic.com/s/redhattext/v13/RrQCbohi_ic6B3yVSzGBrMx6ZI_cy1A6Ok2ML7hwVrbacYVFtIY.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Red Hat Text" + }, + { + "src": "http://fonts.gstatic.com/s/redhattext/v13/RrQCbohi_ic6B3yVSzGBrMx6ZI_cy1A6Ok2ML4pwVrbacYVFtIY.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Red Hat Text" + }, + { + "src": "http://fonts.gstatic.com/s/redhattext/v13/RrQCbohi_ic6B3yVSzGBrMx6ZI_cy1A6Ok2ML2Z3VrbacYVFtIY.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Red Hat Text" + }, + { + "src": "http://fonts.gstatic.com/s/redhattext/v13/RrQCbohi_ic6B3yVSzGBrMx6ZI_cy1A6Ok2ML193VrbacYVFtIY.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Red Hat Text" + }, + { + "src": "http://fonts.gstatic.com/s/redhattext/v13/RrQEbohi_ic6B3yVSzGBrMxQbb0jEzlRoOOLOnAz4PXQdadApIYv_g.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Red Hat Text" + }, + { + "src": "http://fonts.gstatic.com/s/redhattext/v13/RrQEbohi_ic6B3yVSzGBrMxQbb0jEzlRoOOLOnAzvvXQdadApIYv_g.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Red Hat Text" + }, + { + "src": "http://fonts.gstatic.com/s/redhattext/v13/RrQEbohi_ic6B3yVSzGBrMxQbb0jEzlRoOOLOnAzjPXQdadApIYv_g.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Red Hat Text" + }, + { + "src": "http://fonts.gstatic.com/s/redhattext/v13/RrQEbohi_ic6B3yVSzGBrMxQbb0jEzlRoOOLOnAzYPLQdadApIYv_g.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Red Hat Text" + }, + { + "src": "http://fonts.gstatic.com/s/redhattext/v13/RrQEbohi_ic6B3yVSzGBrMxQbb0jEzlRoOOLOnAzWfLQdadApIYv_g.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Red Hat Text" + } + ] + }, + { + "name": "Red Rose", + "fontFamily": "Red Rose, system-ui", + "slug": "red-rose", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/redrose/v18/QdVISTYiLBjouPgEUajvsfWwDtc3MH8y8_sDcjSsYUVUjg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Red Rose" + }, + { + "src": "http://fonts.gstatic.com/s/redrose/v18/QdVISTYiLBjouPgEUajvsfWwDtc3MH8yrfsDcjSsYUVUjg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Red Rose" + }, + { + "src": "http://fonts.gstatic.com/s/redrose/v18/QdVISTYiLBjouPgEUajvsfWwDtc3MH8yn_sDcjSsYUVUjg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Red Rose" + }, + { + "src": "http://fonts.gstatic.com/s/redrose/v18/QdVISTYiLBjouPgEUajvsfWwDtc3MH8yc_wDcjSsYUVUjg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Red Rose" + }, + { + "src": "http://fonts.gstatic.com/s/redrose/v18/QdVISTYiLBjouPgEUajvsfWwDtc3MH8ySvwDcjSsYUVUjg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Red Rose" + } + ] + }, + { + "name": "Redacted", + "fontFamily": "Redacted, system-ui", + "slug": "redacted", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/redacted/v6/Z9XVDmdRShme2O_7aITe4u2El6GC.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Redacted" + } + ] + }, + { + "name": "Redacted Script", + "fontFamily": "Redacted Script, system-ui", + "slug": "redacted-script", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/redactedscript/v7/ypvEbXGRglhokR7dcC3d1-R6zmxqHUzVmbI397ldkg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Redacted Script" + }, + { + "src": "http://fonts.gstatic.com/s/redactedscript/v7/ypvBbXGRglhokR7dcC3d1-R6zmxSsWTxkZkr_g.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Redacted Script" + }, + { + "src": "http://fonts.gstatic.com/s/redactedscript/v7/ypvEbXGRglhokR7dcC3d1-R6zmxqDUvVmbI397ldkg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Redacted Script" + } + ] + }, + { + "name": "Redressed", + "fontFamily": "Redressed, cursive", + "slug": "redressed", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/redressed/v25/x3dickHUbrmJ7wMy9MsBfPACvy_1BA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Redressed" + } + ] + }, + { + "name": "Reem Kufi", + "fontFamily": "Reem Kufi, sans-serif", + "slug": "reem-kufi", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/reemkufi/v20/2sDPZGJLip7W2J7v7wQZZE1I0yCmYzzQtuZnEGGf3qGuvM4.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Reem Kufi" + }, + { + "src": "http://fonts.gstatic.com/s/reemkufi/v20/2sDPZGJLip7W2J7v7wQZZE1I0yCmYzzQttRnEGGf3qGuvM4.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Reem Kufi" + }, + { + "src": "http://fonts.gstatic.com/s/reemkufi/v20/2sDPZGJLip7W2J7v7wQZZE1I0yCmYzzQtjhgEGGf3qGuvM4.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Reem Kufi" + }, + { + "src": "http://fonts.gstatic.com/s/reemkufi/v20/2sDPZGJLip7W2J7v7wQZZE1I0yCmYzzQtgFgEGGf3qGuvM4.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Reem Kufi" + } + ] + }, + { + "name": "Reem Kufi Fun", + "fontFamily": "Reem Kufi Fun, sans-serif", + "slug": "reem-kufi-fun", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/reemkufifun/v7/uK_m4rOFYukkmyUEbF43fIryZEk5qRZ8nrKChoYj3nCgrvqZzZXq.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Reem Kufi Fun" + }, + { + "src": "http://fonts.gstatic.com/s/reemkufifun/v7/uK_m4rOFYukkmyUEbF43fIryZEk5qRZ8nrKChoYR3nCgrvqZzZXq.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Reem Kufi Fun" + }, + { + "src": "http://fonts.gstatic.com/s/reemkufifun/v7/uK_m4rOFYukkmyUEbF43fIryZEk5qRZ8nrKChob92XCgrvqZzZXq.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Reem Kufi Fun" + }, + { + "src": "http://fonts.gstatic.com/s/reemkufifun/v7/uK_m4rOFYukkmyUEbF43fIryZEk5qRZ8nrKChobE2XCgrvqZzZXq.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Reem Kufi Fun" + } + ] + }, + { + "name": "Reem Kufi Ink", + "fontFamily": "Reem Kufi Ink, sans-serif", + "slug": "reem-kufi-ink", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/reemkufiink/v9/oPWJ_kJmmu8hCvB9iFumxZSnRj5dQnSX1ko.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Reem Kufi Ink" + } + ] + }, + { + "name": "Reenie Beanie", + "fontFamily": "Reenie Beanie, cursive", + "slug": "reenie-beanie", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/reeniebeanie/v16/z7NSdR76eDkaJKZJFkkjuvWxbP2_qoOgf_w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Reenie Beanie" + } + ] + }, + { + "name": "Reggae One", + "fontFamily": "Reggae One, system-ui", + "slug": "reggae-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/reggaeone/v15/~CgwKClJlZ2dhZSBPbmUgACoECAEYAQ==.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Reggae One" + } + ] + }, + { + "name": "Revalia", + "fontFamily": "Revalia, system-ui", + "slug": "revalia", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/revalia/v20/WwkexPimBE2-4ZPEeVruNIgJSNM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Revalia" + } + ] + }, + { + "name": "Rhodium Libre", + "fontFamily": "Rhodium Libre, serif", + "slug": "rhodium-libre", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rhodiumlibre/v17/1q2AY5adA0tn_ukeHcQHqpx6pETLeo2gm2U.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rhodium Libre" + } + ] + }, + { + "name": "Ribeye", + "fontFamily": "Ribeye, system-ui", + "slug": "ribeye", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ribeye/v22/L0x8DFMxk1MP9R3RvPCmRSlUig.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Ribeye" + } + ] + }, + { + "name": "Ribeye Marrow", + "fontFamily": "Ribeye Marrow, system-ui", + "slug": "ribeye-marrow", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ribeyemarrow/v22/GFDsWApshnqMRO2JdtRZ2d0vEAwTVWgKdtw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Ribeye Marrow" + } + ] + }, + { + "name": "Righteous", + "fontFamily": "Righteous, system-ui", + "slug": "righteous", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/righteous/v14/1cXxaUPXBpj2rGoU7C9mj3uEicG01A.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Righteous" + } + ] + }, + { + "name": "Risque", + "fontFamily": "Risque, system-ui", + "slug": "risque", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/risque/v20/VdGfAZUfHosahXxoCUYVBJ-T5g.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Risque" + } + ] + }, + { + "name": "Road Rage", + "fontFamily": "Road Rage, system-ui", + "slug": "road-rage", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/roadrage/v5/6NUU8F2fKAOBKjjr4ekvtMYAwdRZfw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Road Rage" + } + ] + }, + { + "name": "Roboto", + "fontFamily": "Roboto, sans-serif", + "slug": "roboto", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/roboto/v30/KFOkCnqEu92Fr1MmgWxPKTM1K9nz.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Roboto" + }, + { + "src": "http://fonts.gstatic.com/s/roboto/v30/KFOiCnqEu92Fr1Mu51QrIzcXLsnzjYk.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Roboto" + }, + { + "src": "http://fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmSU5vAx05IsDqlA.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Roboto" + }, + { + "src": "http://fonts.gstatic.com/s/roboto/v30/KFOjCnqEu92Fr1Mu51TjARc9AMX6lJBP.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Roboto" + }, + { + "src": "http://fonts.gstatic.com/s/roboto/v30/KFOmCnqEu92Fr1Me5WZLCzYlKw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Roboto" + }, + { + "src": "http://fonts.gstatic.com/s/roboto/v30/KFOkCnqEu92Fr1Mu52xPKTM1K9nz.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Roboto" + }, + { + "src": "http://fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmEU9vAx05IsDqlA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Roboto" + }, + { + "src": "http://fonts.gstatic.com/s/roboto/v30/KFOjCnqEu92Fr1Mu51S7ABc9AMX6lJBP.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Roboto" + }, + { + "src": "http://fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmWUlvAx05IsDqlA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Roboto" + }, + { + "src": "http://fonts.gstatic.com/s/roboto/v30/KFOjCnqEu92Fr1Mu51TzBhc9AMX6lJBP.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Roboto" + }, + { + "src": "http://fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmYUtvAx05IsDqlA.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Roboto" + }, + { + "src": "http://fonts.gstatic.com/s/roboto/v30/KFOjCnqEu92Fr1Mu51TLBBc9AMX6lJBP.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Roboto" + } + ] + }, + { + "name": "Roboto Condensed", + "fontFamily": "Roboto Condensed, sans-serif", + "slug": "roboto-condensed", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/robotocondensed/v25/ieVi2ZhZI2eCN5jzbjEETS9weq8-33mZKCMSbvtdYyQ.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Roboto Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/robotocondensed/v25/ieVg2ZhZI2eCN5jzbjEETS9weq8-19eDpCEYatlYcyRi4A.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Roboto Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/robotocondensed/v25/ieVl2ZhZI2eCN5jzbjEETS9weq8-59WxDCs5cvI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Roboto Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/robotocondensed/v25/ieVj2ZhZI2eCN5jzbjEETS9weq8-19e7CAk8YvJEeg.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Roboto Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/robotocondensed/v25/ieVi2ZhZI2eCN5jzbjEETS9weq8-32meKCMSbvtdYyQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Roboto Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/robotocondensed/v25/ieVg2ZhZI2eCN5jzbjEETS9weq8-19eDtCYYatlYcyRi4A.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Roboto Condensed" + } + ] + }, + { + "name": "Roboto Flex", + "fontFamily": "Roboto Flex, sans-serif", + "slug": "roboto-flex", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/robotoflex/v9/NaN4epOXO_NexZs0b5QrzlOHb8wCikXpYqmZsWI-__OGfttPZktqc2VdZ80KvCLZaPcSBZtOx2MifRuWR28sPJtUMbsFEK6cRrleUx9Xgbm3WLHa_F4Ep4Fm0PN19Ik5Dntczx0wZGzhPlL1YNMYKbv9_1IQXOw7AiUJVXpRJ6cXW4O8TNGoXjC79QRyaLshNDUf3e0O-gn5rrZCu20YNYG0EACUTNK-QKavMlxGIY8dxef0jQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Roboto Flex" + } + ] + }, + { + "name": "Roboto Mono", + "fontFamily": "Roboto Mono, monospace", + "slug": "roboto-mono", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/robotomono/v22/L0xuDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vuPQ--5Ip2sSQ.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Roboto Mono" + }, + { + "src": "http://fonts.gstatic.com/s/robotomono/v22/L0xuDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_XvqPQ--5Ip2sSQ.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Roboto Mono" + }, + { + "src": "http://fonts.gstatic.com/s/robotomono/v22/L0xuDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_gPqPQ--5Ip2sSQ.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Roboto Mono" + }, + { + "src": "http://fonts.gstatic.com/s/robotomono/v22/L0xuDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vqPQ--5Ip2sSQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Roboto Mono" + }, + { + "src": "http://fonts.gstatic.com/s/robotomono/v22/L0xuDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_7PqPQ--5Ip2sSQ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Roboto Mono" + }, + { + "src": "http://fonts.gstatic.com/s/robotomono/v22/L0xuDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_AP2PQ--5Ip2sSQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Roboto Mono" + }, + { + "src": "http://fonts.gstatic.com/s/robotomono/v22/L0xuDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_Of2PQ--5Ip2sSQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Roboto Mono" + }, + { + "src": "http://fonts.gstatic.com/s/robotomono/v22/L0xoDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAeW9AJi8SZwt.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Roboto Mono" + }, + { + "src": "http://fonts.gstatic.com/s/robotomono/v22/L0xoDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrnnAOW9AJi8SZwt.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Roboto Mono" + }, + { + "src": "http://fonts.gstatic.com/s/robotomono/v22/L0xoDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrk5AOW9AJi8SZwt.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Roboto Mono" + }, + { + "src": "http://fonts.gstatic.com/s/robotomono/v22/L0xoDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAOW9AJi8SZwt.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Roboto Mono" + }, + { + "src": "http://fonts.gstatic.com/s/robotomono/v22/L0xoDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlVAOW9AJi8SZwt.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Roboto Mono" + }, + { + "src": "http://fonts.gstatic.com/s/robotomono/v22/L0xoDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrm5B-W9AJi8SZwt.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Roboto Mono" + }, + { + "src": "http://fonts.gstatic.com/s/robotomono/v22/L0xoDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrmAB-W9AJi8SZwt.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Roboto Mono" + } + ] + }, + { + "name": "Roboto Serif", + "fontFamily": "Roboto Serif, serif", + "slug": "roboto-serif", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcEliosp6d2Af5fR4k.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Roboto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcElqotp6d2Af5fR4k.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Roboto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcElnQtp6d2Af5fR4k.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Roboto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcEliotp6d2Af5fR4k.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Roboto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcElhgtp6d2Af5fR4k.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Roboto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcElvQqp6d2Af5fR4k.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Roboto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcEls0qp6d2Af5fR4k.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Roboto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcElqoqp6d2Af5fR4k.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Roboto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcEloMqp6d2Af5fR4k.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Roboto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-JuT-V8BdxaV4nUFw.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Roboto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-Juz-R8BdxaV4nUFw.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Roboto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-JuEeR8BdxaV4nUFw.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Roboto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-JuT-R8BdxaV4nUFw.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Roboto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-JufeR8BdxaV4nUFw.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Roboto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-JukeN8BdxaV4nUFw.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Roboto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-JuqON8BdxaV4nUFw.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Roboto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-Juz-N8BdxaV4nUFw.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Roboto Serif" + }, + { + "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-Ju5uN8BdxaV4nUFw.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Roboto Serif" + } + ] + }, + { + "name": "Roboto Slab", + "fontFamily": "Roboto Slab, serif", + "slug": "roboto-slab", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/robotoslab/v25/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjojIWWaG5iddG-1A.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Roboto Slab" + }, + { + "src": "http://fonts.gstatic.com/s/robotoslab/v25/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjoDISWaG5iddG-1A.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Roboto Slab" + }, + { + "src": "http://fonts.gstatic.com/s/robotoslab/v25/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjo0oSWaG5iddG-1A.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Roboto Slab" + }, + { + "src": "http://fonts.gstatic.com/s/robotoslab/v25/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjojISWaG5iddG-1A.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Roboto Slab" + }, + { + "src": "http://fonts.gstatic.com/s/robotoslab/v25/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjovoSWaG5iddG-1A.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Roboto Slab" + }, + { + "src": "http://fonts.gstatic.com/s/robotoslab/v25/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjoUoOWaG5iddG-1A.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Roboto Slab" + }, + { + "src": "http://fonts.gstatic.com/s/robotoslab/v25/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjoa4OWaG5iddG-1A.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Roboto Slab" + }, + { + "src": "http://fonts.gstatic.com/s/robotoslab/v25/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjoDIOWaG5iddG-1A.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Roboto Slab" + }, + { + "src": "http://fonts.gstatic.com/s/robotoslab/v25/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjoJYOWaG5iddG-1A.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Roboto Slab" + } + ] + }, + { + "name": "Rochester", + "fontFamily": "Rochester, cursive", + "slug": "rochester", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rochester/v18/6ae-4KCqVa4Zy6Fif-Uy31vWNTMwoQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rochester" + } + ] + }, + { + "name": "Rock 3D", + "fontFamily": "Rock 3D, system-ui", + "slug": "rock-3d", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rock3d/v10/yYLp0hrL0PCo651513SnwRnQyNI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rock 3D" + } + ] + }, + { + "name": "Rock Salt", + "fontFamily": "Rock Salt, cursive", + "slug": "rock-salt", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rocksalt/v18/MwQ0bhv11fWD6QsAVOZbsEk7hbBWrA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rock Salt" + } + ] + }, + { + "name": "RocknRoll One", + "fontFamily": "RocknRoll One, sans-serif", + "slug": "rocknroll-one", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rocknrollone/v10/kmK7ZqspGAfCeUiW6FFlmEC9guVhs7tfUxc.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "RocknRoll One" + } + ] + }, + { + "name": "Rokkitt", + "fontFamily": "Rokkitt, serif", + "slug": "rokkitt", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdb35qfgYFjGy5hukqqhw5XeRgdi1rydpDLE76HvN6n.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Rokkitt" + }, + { + "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdb35qfgYFjGy5hukqqhw5XeRgdi1pyd5DLE76HvN6n.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Rokkitt" + }, + { + "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdb35qfgYFjGy5hukqqhw5XeRgdi1qsd5DLE76HvN6n.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Rokkitt" + }, + { + "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdb35qfgYFjGy5hukqqhw5XeRgdi1ryd5DLE76HvN6n.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rokkitt" + }, + { + "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdb35qfgYFjGy5hukqqhw5XeRgdi1rAd5DLE76HvN6n.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Rokkitt" + }, + { + "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdb35qfgYFjGy5hukqqhw5XeRgdi1oscJDLE76HvN6n.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Rokkitt" + }, + { + "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdb35qfgYFjGy5hukqqhw5XeRgdi1oVcJDLE76HvN6n.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Rokkitt" + }, + { + "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdb35qfgYFjGy5hukqqhw5XeRgdi1pycJDLE76HvN6n.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Rokkitt" + }, + { + "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdb35qfgYFjGy5hukqqhw5XeRgdi1pbcJDLE76HvN6n.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Rokkitt" + }, + { + "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NHiJGbqluc6nu9E.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Rokkitt" + }, + { + "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NPiIGbqluc6nu9E.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Rokkitt" + }, + { + "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NCaIGbqluc6nu9E.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Rokkitt" + }, + { + "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NHiIGbqluc6nu9E.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Rokkitt" + }, + { + "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NEqIGbqluc6nu9E.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Rokkitt" + }, + { + "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NKaPGbqluc6nu9E.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Rokkitt" + }, + { + "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NJ-PGbqluc6nu9E.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Rokkitt" + }, + { + "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NPiPGbqluc6nu9E.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Rokkitt" + }, + { + "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NNGPGbqluc6nu9E.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Rokkitt" + } + ] + }, + { + "name": "Romanesco", + "fontFamily": "Romanesco, cursive", + "slug": "romanesco", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/romanesco/v21/w8gYH2ozQOY7_r_J7mSn3HwLqOqSBg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Romanesco" + } + ] + }, + { + "name": "Ropa Sans", + "fontFamily": "Ropa Sans, sans-serif", + "slug": "ropa-sans", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ropasans/v15/EYqxmaNOzLlWtsZSScyKWjloU5KP2g.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Ropa Sans" + }, + { + "src": "http://fonts.gstatic.com/s/ropasans/v15/EYq3maNOzLlWtsZSScy6WDNscZef2mNE.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Ropa Sans" + } + ] + }, + { + "name": "Rosario", + "fontFamily": "Rosario, sans-serif", + "slug": "rosario", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rosario/v31/xfuu0WDhWW_fOEoY8l_VPNZfB7jPM69GCWczd-YnOzUD.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Rosario" + }, + { + "src": "http://fonts.gstatic.com/s/rosario/v31/xfuu0WDhWW_fOEoY8l_VPNZfB7jPM68YCWczd-YnOzUD.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rosario" + }, + { + "src": "http://fonts.gstatic.com/s/rosario/v31/xfuu0WDhWW_fOEoY8l_VPNZfB7jPM68qCWczd-YnOzUD.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Rosario" + }, + { + "src": "http://fonts.gstatic.com/s/rosario/v31/xfuu0WDhWW_fOEoY8l_VPNZfB7jPM6_GDmczd-YnOzUD.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Rosario" + }, + { + "src": "http://fonts.gstatic.com/s/rosario/v31/xfuu0WDhWW_fOEoY8l_VPNZfB7jPM6__Dmczd-YnOzUD.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Rosario" + }, + { + "src": "http://fonts.gstatic.com/s/rosario/v31/xfug0WDhWW_fOEoY2Fbnww42bCJhNLrQStFwfeIFPiUDn08.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Rosario" + }, + { + "src": "http://fonts.gstatic.com/s/rosario/v31/xfug0WDhWW_fOEoY2Fbnww42bCJhNLrQSo9wfeIFPiUDn08.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Rosario" + }, + { + "src": "http://fonts.gstatic.com/s/rosario/v31/xfug0WDhWW_fOEoY2Fbnww42bCJhNLrQSr1wfeIFPiUDn08.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Rosario" + }, + { + "src": "http://fonts.gstatic.com/s/rosario/v31/xfug0WDhWW_fOEoY2Fbnww42bCJhNLrQSlF3feIFPiUDn08.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Rosario" + }, + { + "src": "http://fonts.gstatic.com/s/rosario/v31/xfug0WDhWW_fOEoY2Fbnww42bCJhNLrQSmh3feIFPiUDn08.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Rosario" + } + ] + }, + { + "name": "Rosarivo", + "fontFamily": "Rosarivo, serif", + "slug": "rosarivo", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rosarivo/v20/PlI-Fl2lO6N9f8HaNAeC2nhMnNy5.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rosarivo" + }, + { + "src": "http://fonts.gstatic.com/s/rosarivo/v20/PlI4Fl2lO6N9f8HaNDeA0Hxumcy5ZX8.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Rosarivo" + } + ] + }, + { + "name": "Rouge Script", + "fontFamily": "Rouge Script, cursive", + "slug": "rouge-script", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rougescript/v14/LYjFdGbiklMoCIQOw1Ep3S4PVPXbUJWq9g.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rouge Script" + } + ] + }, + { + "name": "Rowdies", + "fontFamily": "Rowdies, system-ui", + "slug": "rowdies", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rowdies/v15/ptRMTieMYPNBAK219hth5O7yKQNute8.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Rowdies" + }, + { + "src": "http://fonts.gstatic.com/s/rowdies/v15/ptRJTieMYPNBAK21zrdJwObZNQo.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rowdies" + }, + { + "src": "http://fonts.gstatic.com/s/rowdies/v15/ptRMTieMYPNBAK219gtm5O7yKQNute8.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Rowdies" + } + ] + }, + { + "name": "Rozha One", + "fontFamily": "Rozha One, serif", + "slug": "rozha-one", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rozhaone/v13/AlZy_zVFtYP12Zncg2khdXf4XB0Tow.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rozha One" + } + ] + }, + { + "name": "Rubik", + "fontFamily": "Rubik, sans-serif", + "slug": "rubik", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rubik/v26/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-WYi1UE80V4bVkA.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Rubik" + }, + { + "src": "http://fonts.gstatic.com/s/rubik/v26/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-B4i1UE80V4bVkA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rubik" + }, + { + "src": "http://fonts.gstatic.com/s/rubik/v26/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-NYi1UE80V4bVkA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Rubik" + }, + { + "src": "http://fonts.gstatic.com/s/rubik/v26/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-2Y-1UE80V4bVkA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Rubik" + }, + { + "src": "http://fonts.gstatic.com/s/rubik/v26/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-4I-1UE80V4bVkA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Rubik" + }, + { + "src": "http://fonts.gstatic.com/s/rubik/v26/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-h4-1UE80V4bVkA.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Rubik" + }, + { + "src": "http://fonts.gstatic.com/s/rubik/v26/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-ro-1UE80V4bVkA.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Rubik" + }, + { + "src": "http://fonts.gstatic.com/s/rubik/v26/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8sDE0UwdYPFkJ1O.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Rubik" + }, + { + "src": "http://fonts.gstatic.com/s/rubik/v26/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8tdE0UwdYPFkJ1O.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Rubik" + }, + { + "src": "http://fonts.gstatic.com/s/rubik/v26/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8tvE0UwdYPFkJ1O.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Rubik" + }, + { + "src": "http://fonts.gstatic.com/s/rubik/v26/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8uDFEUwdYPFkJ1O.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Rubik" + }, + { + "src": "http://fonts.gstatic.com/s/rubik/v26/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8u6FEUwdYPFkJ1O.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Rubik" + }, + { + "src": "http://fonts.gstatic.com/s/rubik/v26/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8vdFEUwdYPFkJ1O.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Rubik" + }, + { + "src": "http://fonts.gstatic.com/s/rubik/v26/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8v0FEUwdYPFkJ1O.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Rubik" + } + ] + }, + { + "name": "Rubik 80s Fade", + "fontFamily": "Rubik 80s Fade, system-ui", + "slug": "rubik-80s-fade", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rubik80sfade/v2/U9MF6dW37nLSmnwZXyoV-uPXUhHwkbL8IHcK.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rubik 80s Fade" + } + ] + }, + { + "name": "Rubik Beastly", + "fontFamily": "Rubik Beastly, system-ui", + "slug": "rubik-beastly", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rubikbeastly/v10/0QImMXRd5oOmSC2ZQ7o9653X07z8_ApHqqk.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rubik Beastly" + } + ] + }, + { + "name": "Rubik Bubbles", + "fontFamily": "Rubik Bubbles, system-ui", + "slug": "rubik-bubbles", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rubikbubbles/v3/JIA1UVdwbHFJtwA7Us1BPFbRNTENfDxyRXI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rubik Bubbles" + } + ] + }, + { + "name": "Rubik Burned", + "fontFamily": "Rubik Burned, system-ui", + "slug": "rubik-burned", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rubikburned/v1/Jqzk5TmOVOqQHihKqPpscqniHQuaCY5ZSg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rubik Burned" + } + ] + }, + { + "name": "Rubik Dirt", + "fontFamily": "Rubik Dirt, system-ui", + "slug": "rubik-dirt", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rubikdirt/v2/DtVmJxC7WLEj1uIXEWAdulwm6gDXvwE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rubik Dirt" + } + ] + }, + { + "name": "Rubik Distressed", + "fontFamily": "Rubik Distressed, system-ui", + "slug": "rubik-distressed", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rubikdistressed/v1/GFDxWBdsmnqAVqjtUsZf2dcrQ2ldcWAhatVBaGM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rubik Distressed" + } + ] + }, + { + "name": "Rubik Gemstones", + "fontFamily": "Rubik Gemstones, system-ui", + "slug": "rubik-gemstones", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rubikgemstones/v1/zrf90HrL0-_8Xb4DFM2rUkWbOVrOiCnGqi1GMw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rubik Gemstones" + } + ] + }, + { + "name": "Rubik Glitch", + "fontFamily": "Rubik Glitch, system-ui", + "slug": "rubik-glitch", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rubikglitch/v2/qkBSXv8b_srFRYQVYrDKh9ZvmC7HONiSFQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rubik Glitch" + } + ] + }, + { + "name": "Rubik Iso", + "fontFamily": "Rubik Iso, system-ui", + "slug": "rubik-iso", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rubikiso/v2/x3dickHUfr-S4VAI4sABfPACvy_1BA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rubik Iso" + } + ] + }, + { + "name": "Rubik Marker Hatch", + "fontFamily": "Rubik Marker Hatch, system-ui", + "slug": "rubik-marker-hatch", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rubikmarkerhatch/v1/QldTNSFQsh0B_bFXXWv6LAt-jswapJHQDL4iw0H6zw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rubik Marker Hatch" + } + ] + }, + { + "name": "Rubik Maze", + "fontFamily": "Rubik Maze, system-ui", + "slug": "rubik-maze", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rubikmaze/v2/xMQRuF9ZVa2ftiJEavXSAX7inS-bxV4.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rubik Maze" + } + ] + }, + { + "name": "Rubik Microbe", + "fontFamily": "Rubik Microbe, system-ui", + "slug": "rubik-microbe", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rubikmicrobe/v2/UqyWK8oPP3hjw6ANS9rM3PsZcs8aaKgiauE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rubik Microbe" + } + ] + }, + { + "name": "Rubik Mono One", + "fontFamily": "Rubik Mono One, sans-serif", + "slug": "rubik-mono-one", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rubikmonoone/v15/UqyJK8kPP3hjw6ANTdfRk9YSN-8wRqQrc_j9.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rubik Mono One" + } + ] + }, + { + "name": "Rubik Moonrocks", + "fontFamily": "Rubik Moonrocks, system-ui", + "slug": "rubik-moonrocks", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rubikmoonrocks/v2/845ANMAmAI2VUZMLu_W0M7HqlDHnXcD7JGy1Sw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rubik Moonrocks" + } + ] + }, + { + "name": "Rubik Pixels", + "fontFamily": "Rubik Pixels, system-ui", + "slug": "rubik-pixels", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rubikpixels/v2/SlGXmQOaupkIeSx4CEpB7AdSaBYRagrQrA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rubik Pixels" + } + ] + }, + { + "name": "Rubik Puddles", + "fontFamily": "Rubik Puddles, system-ui", + "slug": "rubik-puddles", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rubikpuddles/v2/1Ptog8bYX_qGnkLkrU5MJsQcJfC0wVMT-aE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rubik Puddles" + } + ] + }, + { + "name": "Rubik Spray Paint", + "fontFamily": "Rubik Spray Paint, system-ui", + "slug": "rubik-spray-paint", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rubikspraypaint/v1/WnzhHBAoeBPUDTB4EWR82y6EXWPH-Ro-QoaBZQxP.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rubik Spray Paint" + } + ] + }, + { + "name": "Rubik Storm", + "fontFamily": "Rubik Storm, system-ui", + "slug": "rubik-storm", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rubikstorm/v1/eLGYP-_uPgO5Ag7ju9JaouL9T2Xh9NQk.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rubik Storm" + } + ] + }, + { + "name": "Rubik Vinyl", + "fontFamily": "Rubik Vinyl, system-ui", + "slug": "rubik-vinyl", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rubikvinyl/v1/iJWABXKIfDnIV4mQ5BfjvUXexox2ztOU.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rubik Vinyl" + } + ] + }, + { + "name": "Rubik Wet Paint", + "fontFamily": "Rubik Wet Paint, system-ui", + "slug": "rubik-wet-paint", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rubikwetpaint/v2/HTx0L20uMDGHgdULcpTF3Oe4d_-F-zz313DuvQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rubik Wet Paint" + } + ] + }, + { + "name": "Ruda", + "fontFamily": "Ruda, sans-serif", + "slug": "ruda", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ruda/v23/k3kKo8YQJOpFgHQ1mQ5VkEbUKaJFsi_-2KiSGg-H.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Ruda" + }, + { + "src": "http://fonts.gstatic.com/s/ruda/v23/k3kKo8YQJOpFgHQ1mQ5VkEbUKaJ3si_-2KiSGg-H.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Ruda" + }, + { + "src": "http://fonts.gstatic.com/s/ruda/v23/k3kKo8YQJOpFgHQ1mQ5VkEbUKaKbtS_-2KiSGg-H.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Ruda" + }, + { + "src": "http://fonts.gstatic.com/s/ruda/v23/k3kKo8YQJOpFgHQ1mQ5VkEbUKaKitS_-2KiSGg-H.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Ruda" + }, + { + "src": "http://fonts.gstatic.com/s/ruda/v23/k3kKo8YQJOpFgHQ1mQ5VkEbUKaLFtS_-2KiSGg-H.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Ruda" + }, + { + "src": "http://fonts.gstatic.com/s/ruda/v23/k3kKo8YQJOpFgHQ1mQ5VkEbUKaLstS_-2KiSGg-H.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Ruda" + } + ] + }, + { + "name": "Rufina", + "fontFamily": "Rufina, serif", + "slug": "rufina", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rufina/v13/Yq6V-LyURyLy-aKyoxRktOdClg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rufina" + }, + { + "src": "http://fonts.gstatic.com/s/rufina/v13/Yq6W-LyURyLy-aKKHztAvMxenxE0SA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Rufina" + } + ] + }, + { + "name": "Ruge Boogie", + "fontFamily": "Ruge Boogie, cursive", + "slug": "ruge-boogie", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rugeboogie/v25/JIA3UVFwbHRF_GIWSMhKNROiPzUveSxy.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Ruge Boogie" + } + ] + }, + { + "name": "Ruluko", + "fontFamily": "Ruluko, sans-serif", + "slug": "ruluko", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ruluko/v21/xMQVuFNZVaODtm0pC6WzKX_QmA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Ruluko" + } + ] + }, + { + "name": "Rum Raisin", + "fontFamily": "Rum Raisin, sans-serif", + "slug": "rum-raisin", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rumraisin/v20/nwpRtKu3Ih8D5avB4h2uJ3-IywA7eMM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rum Raisin" + } + ] + }, + { + "name": "Ruslan Display", + "fontFamily": "Ruslan Display, system-ui", + "slug": "ruslan-display", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ruslandisplay/v22/Gw6jwczl81XcIZuckK_e3UpfdzxrldyFvm1n.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Ruslan Display" + } + ] + }, + { + "name": "Russo One", + "fontFamily": "Russo One, sans-serif", + "slug": "russo-one", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/russoone/v14/Z9XUDmZRWg6M1LvRYsH-yMOInrib9Q.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Russo One" + } + ] + }, + { + "name": "Ruthie", + "fontFamily": "Ruthie, cursive", + "slug": "ruthie", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ruthie/v24/gokvH63sGkdqXuU9lD53Q2u_mQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Ruthie" + } + ] + }, + { + "name": "Rye", + "fontFamily": "Rye, system-ui", + "slug": "rye", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/rye/v13/r05XGLJT86YDFpTsXOqx4w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Rye" + } + ] + }, + { + "name": "STIX Two Text", + "fontFamily": "STIX Two Text, serif", + "slug": "stix-two-text", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/stixtwotext/v11/YA9Gr02F12Xkf5whdwKf11l0jbKkeidMTtZ5Yihg2SOYWxFMN1WD.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "STIX Two Text" + }, + { + "src": "http://fonts.gstatic.com/s/stixtwotext/v11/YA9Gr02F12Xkf5whdwKf11l0jbKkeidMTtZ5YihS2SOYWxFMN1WD.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "STIX Two Text" + }, + { + "src": "http://fonts.gstatic.com/s/stixtwotext/v11/YA9Gr02F12Xkf5whdwKf11l0jbKkeidMTtZ5Yii-3iOYWxFMN1WD.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "STIX Two Text" + }, + { + "src": "http://fonts.gstatic.com/s/stixtwotext/v11/YA9Gr02F12Xkf5whdwKf11l0jbKkeidMTtZ5YiiH3iOYWxFMN1WD.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "STIX Two Text" + }, + { + "src": "http://fonts.gstatic.com/s/stixtwotext/v11/YA9Er02F12Xkf5whdwKf11l0p7uWhf8lJUzXZT2omsvbURVuMkWDmSo.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "STIX Two Text" + }, + { + "src": "http://fonts.gstatic.com/s/stixtwotext/v11/YA9Er02F12Xkf5whdwKf11l0p7uWhf8lJUzXZT2omvnbURVuMkWDmSo.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "STIX Two Text" + }, + { + "src": "http://fonts.gstatic.com/s/stixtwotext/v11/YA9Er02F12Xkf5whdwKf11l0p7uWhf8lJUzXZT2omhXcURVuMkWDmSo.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "STIX Two Text" + }, + { + "src": "http://fonts.gstatic.com/s/stixtwotext/v11/YA9Er02F12Xkf5whdwKf11l0p7uWhf8lJUzXZT2omizcURVuMkWDmSo.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "STIX Two Text" + } + ] + }, + { + "name": "Sacramento", + "fontFamily": "Sacramento, cursive", + "slug": "sacramento", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sacramento/v13/buEzpo6gcdjy0EiZMBUG0CoV_NxLeiw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sacramento" + } + ] + }, + { + "name": "Sahitya", + "fontFamily": "Sahitya, serif", + "slug": "sahitya", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sahitya/v17/6qLAKZkOuhnuqlJAaScFPywEDnI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sahitya" + }, + { + "src": "http://fonts.gstatic.com/s/sahitya/v17/6qLFKZkOuhnuqlJAUZsqGyQvEnvSexI.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Sahitya" + } + ] + }, + { + "name": "Sail", + "fontFamily": "Sail, system-ui", + "slug": "sail", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sail/v16/DPEjYwiBxwYJFBTDADYAbvw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sail" + } + ] + }, + { + "name": "Saira", + "fontFamily": "Saira, sans-serif", + "slug": "saira", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/saira/v14/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA71rDosg7lwYmUVY.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Saira" + }, + { + "src": "http://fonts.gstatic.com/s/saira/v14/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA79rCosg7lwYmUVY.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Saira" + }, + { + "src": "http://fonts.gstatic.com/s/saira/v14/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA7wTCosg7lwYmUVY.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Saira" + }, + { + "src": "http://fonts.gstatic.com/s/saira/v14/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA71rCosg7lwYmUVY.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Saira" + }, + { + "src": "http://fonts.gstatic.com/s/saira/v14/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA72jCosg7lwYmUVY.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Saira" + }, + { + "src": "http://fonts.gstatic.com/s/saira/v14/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA74TFosg7lwYmUVY.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Saira" + }, + { + "src": "http://fonts.gstatic.com/s/saira/v14/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA773Fosg7lwYmUVY.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Saira" + }, + { + "src": "http://fonts.gstatic.com/s/saira/v14/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA79rFosg7lwYmUVY.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Saira" + }, + { + "src": "http://fonts.gstatic.com/s/saira/v14/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA7_PFosg7lwYmUVY.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Saira" + }, + { + "src": "http://fonts.gstatic.com/s/saira/v14/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKBSooxkyQjQVYmxA.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Saira" + }, + { + "src": "http://fonts.gstatic.com/s/saira/v14/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKByosxkyQjQVYmxA.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Saira" + }, + { + "src": "http://fonts.gstatic.com/s/saira/v14/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKBFIsxkyQjQVYmxA.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Saira" + }, + { + "src": "http://fonts.gstatic.com/s/saira/v14/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKBSosxkyQjQVYmxA.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Saira" + }, + { + "src": "http://fonts.gstatic.com/s/saira/v14/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKBeIsxkyQjQVYmxA.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Saira" + }, + { + "src": "http://fonts.gstatic.com/s/saira/v14/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKBlIwxkyQjQVYmxA.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Saira" + }, + { + "src": "http://fonts.gstatic.com/s/saira/v14/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKBrYwxkyQjQVYmxA.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Saira" + }, + { + "src": "http://fonts.gstatic.com/s/saira/v14/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKByowxkyQjQVYmxA.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Saira" + }, + { + "src": "http://fonts.gstatic.com/s/saira/v14/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKB44wxkyQjQVYmxA.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Saira" + } + ] + }, + { + "name": "Saira Condensed", + "fontFamily": "Saira Condensed, sans-serif", + "slug": "saira-condensed", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sairacondensed/v11/EJRMQgErUN8XuHNEtX81i9TmEkrnwetA2omSrzS8.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Saira Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sairacondensed/v11/EJRLQgErUN8XuHNEtX81i9TmEkrnbcpg8Keepi2lHw.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Saira Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sairacondensed/v11/EJRLQgErUN8XuHNEtX81i9TmEkrnCclg8Keepi2lHw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Saira Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sairacondensed/v11/EJROQgErUN8XuHNEtX81i9TmEkrfpeFE-IyCrw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Saira Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sairacondensed/v11/EJRLQgErUN8XuHNEtX81i9TmEkrnUchg8Keepi2lHw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Saira Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sairacondensed/v11/EJRLQgErUN8XuHNEtX81i9TmEkrnfc9g8Keepi2lHw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Saira Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sairacondensed/v11/EJRLQgErUN8XuHNEtX81i9TmEkrnGc5g8Keepi2lHw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Saira Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sairacondensed/v11/EJRLQgErUN8XuHNEtX81i9TmEkrnBc1g8Keepi2lHw.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Saira Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sairacondensed/v11/EJRLQgErUN8XuHNEtX81i9TmEkrnIcxg8Keepi2lHw.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Saira Condensed" + } + ] + }, + { + "name": "Saira Extra Condensed", + "fontFamily": "Saira Extra Condensed, sans-serif", + "slug": "saira-extra-condensed", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sairaextracondensed/v11/-nFsOHYr-vcC7h8MklGBkrvmUG9rbpkisrTri0jx9i5ss3a3.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Saira Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sairaextracondensed/v11/-nFvOHYr-vcC7h8MklGBkrvmUG9rbpkisrTrJ2nR3ABgum-uoQ.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Saira Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sairaextracondensed/v11/-nFvOHYr-vcC7h8MklGBkrvmUG9rbpkisrTrQ2rR3ABgum-uoQ.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Saira Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sairaextracondensed/v11/-nFiOHYr-vcC7h8MklGBkrvmUG9rbpkisrTT70L11Ct8sw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Saira Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sairaextracondensed/v11/-nFvOHYr-vcC7h8MklGBkrvmUG9rbpkisrTrG2vR3ABgum-uoQ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Saira Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sairaextracondensed/v11/-nFvOHYr-vcC7h8MklGBkrvmUG9rbpkisrTrN2zR3ABgum-uoQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Saira Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sairaextracondensed/v11/-nFvOHYr-vcC7h8MklGBkrvmUG9rbpkisrTrU23R3ABgum-uoQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Saira Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sairaextracondensed/v11/-nFvOHYr-vcC7h8MklGBkrvmUG9rbpkisrTrT27R3ABgum-uoQ.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Saira Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sairaextracondensed/v11/-nFvOHYr-vcC7h8MklGBkrvmUG9rbpkisrTra2_R3ABgum-uoQ.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Saira Extra Condensed" + } + ] + }, + { + "name": "Saira Semi Condensed", + "fontFamily": "Saira Semi Condensed, sans-serif", + "slug": "saira-semi-condensed", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sairasemicondensed/v11/U9MN6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXdvaOM8rXT-8V8.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Saira Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sairasemicondensed/v11/U9MM6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXfDScMWg3j36Ebz.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Saira Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sairasemicondensed/v11/U9MM6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXenSsMWg3j36Ebz.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Saira Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sairasemicondensed/v11/U9MD6c-2-nnJkHxyCjRcnMHcWVWV1cWRRU8LYuceqGT-.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Saira Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sairasemicondensed/v11/U9MM6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXf_S8MWg3j36Ebz.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Saira Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sairasemicondensed/v11/U9MM6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXfTTMMWg3j36Ebz.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Saira Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sairasemicondensed/v11/U9MM6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXe3TcMWg3j36Ebz.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Saira Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sairasemicondensed/v11/U9MM6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXerTsMWg3j36Ebz.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Saira Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sairasemicondensed/v11/U9MM6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXePT8MWg3j36Ebz.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Saira Semi Condensed" + } + ] + }, + { + "name": "Saira Stencil One", + "fontFamily": "Saira Stencil One, system-ui", + "slug": "saira-stencil-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sairastencilone/v14/SLXSc03I6HkvZGJ1GvvipLoYSTEL9AsMawif2YQ2.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Saira Stencil One" + } + ] + }, + { + "name": "Salsa", + "fontFamily": "Salsa, system-ui", + "slug": "salsa", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/salsa/v17/gNMKW3FiRpKj-imY8ncKEZez.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Salsa" + } + ] + }, + { + "name": "Sanchez", + "fontFamily": "Sanchez, serif", + "slug": "sanchez", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sanchez/v13/Ycm2sZJORluHnXbITm5b_BwE1l0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sanchez" + }, + { + "src": "http://fonts.gstatic.com/s/sanchez/v13/Ycm0sZJORluHnXbIfmxR-D4Bxl3gkw.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Sanchez" + } + ] + }, + { + "name": "Sancreek", + "fontFamily": "Sancreek, system-ui", + "slug": "sancreek", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sancreek/v23/pxiHypAnsdxUm159X7D-XV9NEe-K.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sancreek" + } + ] + }, + { + "name": "Sansita", + "fontFamily": "Sansita, sans-serif", + "slug": "sansita", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sansita/v11/QldONTRRphEb_-V7HBm7TXFf3qw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sansita" + }, + { + "src": "http://fonts.gstatic.com/s/sansita/v11/QldMNTRRphEb_-V7LBuxSVNazqx2xg.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Sansita" + }, + { + "src": "http://fonts.gstatic.com/s/sansita/v11/QldLNTRRphEb_-V7JKWUaXl0wqVv3_g.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Sansita" + }, + { + "src": "http://fonts.gstatic.com/s/sansita/v11/QldJNTRRphEb_-V7LBuJ9Xx-xodqz_joDQ.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Sansita" + }, + { + "src": "http://fonts.gstatic.com/s/sansita/v11/QldLNTRRphEb_-V7JLmXaXl0wqVv3_g.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Sansita" + }, + { + "src": "http://fonts.gstatic.com/s/sansita/v11/QldJNTRRphEb_-V7LBuJ6X9-xodqz_joDQ.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Sansita" + }, + { + "src": "http://fonts.gstatic.com/s/sansita/v11/QldLNTRRphEb_-V7JJ2WaXl0wqVv3_g.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Sansita" + }, + { + "src": "http://fonts.gstatic.com/s/sansita/v11/QldJNTRRphEb_-V7LBuJzX5-xodqz_joDQ.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Sansita" + } + ] + }, + { + "name": "Sansita Swashed", + "fontFamily": "Sansita Swashed, system-ui", + "slug": "sansita-swashed", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sansitaswashed/v17/BXR8vFfZifTZgFlDDLgNkBydPKTt3pVCeYWqJnZSW-ppbToVehmEa4Q.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Sansita Swashed" + }, + { + "src": "http://fonts.gstatic.com/s/sansitaswashed/v17/BXR8vFfZifTZgFlDDLgNkBydPKTt3pVCeYWqJnZSW7RpbToVehmEa4Q.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sansita Swashed" + }, + { + "src": "http://fonts.gstatic.com/s/sansitaswashed/v17/BXR8vFfZifTZgFlDDLgNkBydPKTt3pVCeYWqJnZSW4ZpbToVehmEa4Q.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Sansita Swashed" + }, + { + "src": "http://fonts.gstatic.com/s/sansitaswashed/v17/BXR8vFfZifTZgFlDDLgNkBydPKTt3pVCeYWqJnZSW2pubToVehmEa4Q.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Sansita Swashed" + }, + { + "src": "http://fonts.gstatic.com/s/sansitaswashed/v17/BXR8vFfZifTZgFlDDLgNkBydPKTt3pVCeYWqJnZSW1NubToVehmEa4Q.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Sansita Swashed" + }, + { + "src": "http://fonts.gstatic.com/s/sansitaswashed/v17/BXR8vFfZifTZgFlDDLgNkBydPKTt3pVCeYWqJnZSWzRubToVehmEa4Q.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Sansita Swashed" + }, + { + "src": "http://fonts.gstatic.com/s/sansitaswashed/v17/BXR8vFfZifTZgFlDDLgNkBydPKTt3pVCeYWqJnZSWx1ubToVehmEa4Q.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Sansita Swashed" + } + ] + }, + { + "name": "Sarabun", + "fontFamily": "Sarabun, sans-serif", + "slug": "sarabun", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sarabun/v13/DtVhJx26TKEr37c9YHZJmnYI5gnOpg.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Sarabun" + }, + { + "src": "http://fonts.gstatic.com/s/sarabun/v13/DtVnJx26TKEr37c9aBBx_nwMxAzephhN.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Sarabun" + }, + { + "src": "http://fonts.gstatic.com/s/sarabun/v13/DtVmJx26TKEr37c9YNpoulwm6gDXvwE.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Sarabun" + }, + { + "src": "http://fonts.gstatic.com/s/sarabun/v13/DtVkJx26TKEr37c9aBBxUl0s7iLSrwFUlw.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Sarabun" + }, + { + "src": "http://fonts.gstatic.com/s/sarabun/v13/DtVmJx26TKEr37c9YL5rulwm6gDXvwE.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Sarabun" + }, + { + "src": "http://fonts.gstatic.com/s/sarabun/v13/DtVkJx26TKEr37c9aBBxNl4s7iLSrwFUlw.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Sarabun" + }, + { + "src": "http://fonts.gstatic.com/s/sarabun/v13/DtVjJx26TKEr37c9WBJDnlQN9gk.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sarabun" + }, + { + "src": "http://fonts.gstatic.com/s/sarabun/v13/DtVhJx26TKEr37c9aBBJmnYI5gnOpg.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Sarabun" + }, + { + "src": "http://fonts.gstatic.com/s/sarabun/v13/DtVmJx26TKEr37c9YOZqulwm6gDXvwE.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Sarabun" + }, + { + "src": "http://fonts.gstatic.com/s/sarabun/v13/DtVkJx26TKEr37c9aBBxbl8s7iLSrwFUlw.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Sarabun" + }, + { + "src": "http://fonts.gstatic.com/s/sarabun/v13/DtVmJx26TKEr37c9YMptulwm6gDXvwE.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Sarabun" + }, + { + "src": "http://fonts.gstatic.com/s/sarabun/v13/DtVkJx26TKEr37c9aBBxQlgs7iLSrwFUlw.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Sarabun" + }, + { + "src": "http://fonts.gstatic.com/s/sarabun/v13/DtVmJx26TKEr37c9YK5sulwm6gDXvwE.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Sarabun" + }, + { + "src": "http://fonts.gstatic.com/s/sarabun/v13/DtVkJx26TKEr37c9aBBxJlks7iLSrwFUlw.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Sarabun" + }, + { + "src": "http://fonts.gstatic.com/s/sarabun/v13/DtVmJx26TKEr37c9YLJvulwm6gDXvwE.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Sarabun" + }, + { + "src": "http://fonts.gstatic.com/s/sarabun/v13/DtVkJx26TKEr37c9aBBxOlos7iLSrwFUlw.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Sarabun" + } + ] + }, + { + "name": "Sarala", + "fontFamily": "Sarala, sans-serif", + "slug": "sarala", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sarala/v10/uK_y4riEZv4o1w9RCh0TMv6EXw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sarala" + }, + { + "src": "http://fonts.gstatic.com/s/sarala/v10/uK_x4riEZv4o1w9ptjI3OtWYVkMpXA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Sarala" + } + ] + }, + { + "name": "Sarina", + "fontFamily": "Sarina, system-ui", + "slug": "sarina", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sarina/v21/-F6wfjF3ITQwasLhLkDUriBQxw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sarina" + } + ] + }, + { + "name": "Sarpanch", + "fontFamily": "Sarpanch, sans-serif", + "slug": "sarpanch", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sarpanch/v11/hESy6Xt4NCpRuk6Pzh2ARIrX_20n.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sarpanch" + }, + { + "src": "http://fonts.gstatic.com/s/sarpanch/v11/hES16Xt4NCpRuk6PziV0ba7f1HEuRHkM.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Sarpanch" + }, + { + "src": "http://fonts.gstatic.com/s/sarpanch/v11/hES16Xt4NCpRuk6PziVYaq7f1HEuRHkM.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Sarpanch" + }, + { + "src": "http://fonts.gstatic.com/s/sarpanch/v11/hES16Xt4NCpRuk6PziU8a67f1HEuRHkM.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Sarpanch" + }, + { + "src": "http://fonts.gstatic.com/s/sarpanch/v11/hES16Xt4NCpRuk6PziUgaK7f1HEuRHkM.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Sarpanch" + }, + { + "src": "http://fonts.gstatic.com/s/sarpanch/v11/hES16Xt4NCpRuk6PziUEaa7f1HEuRHkM.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Sarpanch" + } + ] + }, + { + "name": "Sassy Frass", + "fontFamily": "Sassy Frass, cursive", + "slug": "sassy-frass", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sassyfrass/v5/LhWhMVrGOe0FLb97BjhsE99dGNWQg_am.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sassy Frass" + } + ] + }, + { + "name": "Satisfy", + "fontFamily": "Satisfy, cursive", + "slug": "satisfy", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/satisfy/v17/rP2Hp2yn6lkG50LoOZSCHBeHFl0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Satisfy" + } + ] + }, + { + "name": "Sawarabi Gothic", + "fontFamily": "Sawarabi Gothic, sans-serif", + "slug": "sawarabi-gothic", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sawarabigothic/v12/x3d4ckfVaqqa-BEj-I9mE65u3k3NBSk3E2YljQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sawarabi Gothic" + } + ] + }, + { + "name": "Sawarabi Mincho", + "fontFamily": "Sawarabi Mincho, serif", + "slug": "sawarabi-mincho", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sawarabimincho/v17/8QIRdiDaitzr7brc8ahpxt6GcIJTLahP46UDUw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sawarabi Mincho" + } + ] + }, + { + "name": "Scada", + "fontFamily": "Scada, sans-serif", + "slug": "scada", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/scada/v15/RLpxK5Pv5qumeWJoxzUobkvv.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Scada" + }, + { + "src": "http://fonts.gstatic.com/s/scada/v15/RLp_K5Pv5qumeVJqzTEKa1vvffg.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Scada" + }, + { + "src": "http://fonts.gstatic.com/s/scada/v15/RLp8K5Pv5qumeVrU6BEgRVfmZOE5.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Scada" + }, + { + "src": "http://fonts.gstatic.com/s/scada/v15/RLp6K5Pv5qumeVJq9Y0lT1PEYfE5p6g.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Scada" + } + ] + }, + { + "name": "Scheherazade New", + "fontFamily": "Scheherazade New, serif", + "slug": "scheherazade-new", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/scheherazadenew/v15/4UaZrFhTvxVnHDvUkUiHg8jprP4DCwNsOl4p5Is.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Scheherazade New" + }, + { + "src": "http://fonts.gstatic.com/s/scheherazadenew/v15/4UaerFhTvxVnHDvUkUiHg8jprP4DM_dFHlYC-IKnoSE.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Scheherazade New" + }, + { + "src": "http://fonts.gstatic.com/s/scheherazadenew/v15/4UaerFhTvxVnHDvUkUiHg8jprP4DM9tCHlYC-IKnoSE.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Scheherazade New" + }, + { + "src": "http://fonts.gstatic.com/s/scheherazadenew/v15/4UaerFhTvxVnHDvUkUiHg8jprP4DM79DHlYC-IKnoSE.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Scheherazade New" + } + ] + }, + { + "name": "Schibsted Grotesk", + "fontFamily": "Schibsted Grotesk, sans-serif", + "slug": "schibsted-grotesk", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzK5SSPQuCQF3t8uOwiUL-taUTtarVKQ9vZ6pJJWlMNIsEAT8JuXFGVOQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Schibsted Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzK5SSPQuCQF3t8uOwiUL-taUTtarVKQ9vZ6pJJWlMNEMEAT8JuXFGVOQ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Schibsted Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzK5SSPQuCQF3t8uOwiUL-taUTtarVKQ9vZ6pJJWlMN_MYAT8JuXFGVOQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Schibsted Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzK5SSPQuCQF3t8uOwiUL-taUTtarVKQ9vZ6pJJWlMNxcYAT8JuXFGVOQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Schibsted Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzK5SSPQuCQF3t8uOwiUL-taUTtarVKQ9vZ6pJJWlMNosYAT8JuXFGVOQ.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Schibsted Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzK5SSPQuCQF3t8uOwiUL-taUTtarVKQ9vZ6pJJWlMNi8YAT8JuXFGVOQ.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Schibsted Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzI5SSPQuCQF3t8uOwiUL-taUTtap9DcSQBg_nT9FQY6oLoDMhqflSFOTXs.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Schibsted Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzI5SSPQuCQF3t8uOwiUL-taUTtap9DcSQBg_nT9FQY6oLaDMhqflSFOTXs.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Schibsted Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzI5SSPQuCQF3t8uOwiUL-taUTtap9DcSQBg_nT9FQY6oI2C8hqflSFOTXs.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Schibsted Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzI5SSPQuCQF3t8uOwiUL-taUTtap9DcSQBg_nT9FQY6oIPC8hqflSFOTXs.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Schibsted Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzI5SSPQuCQF3t8uOwiUL-taUTtap9DcSQBg_nT9FQY6oJoC8hqflSFOTXs.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Schibsted Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzI5SSPQuCQF3t8uOwiUL-taUTtap9DcSQBg_nT9FQY6oJBC8hqflSFOTXs.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Schibsted Grotesk" + } + ] + }, + { + "name": "Schoolbell", + "fontFamily": "Schoolbell, cursive", + "slug": "schoolbell", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/schoolbell/v18/92zQtBZWOrcgoe-fgnJIVxIQ6mRqfiQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Schoolbell" + } + ] + }, + { + "name": "Scope One", + "fontFamily": "Scope One, serif", + "slug": "scope-one", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/scopeone/v14/WBLnrEXKYFlGHrOKmGD1W0_MJMGxiQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Scope One" + } + ] + }, + { + "name": "Seaweed Script", + "fontFamily": "Seaweed Script, system-ui", + "slug": "seaweed-script", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/seaweedscript/v13/bx6cNx6Tne2pxOATYE8C_Rsoe0WJ-KcGVbLW.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Seaweed Script" + } + ] + }, + { + "name": "Secular One", + "fontFamily": "Secular One, sans-serif", + "slug": "secular-one", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/secularone/v11/8QINdiTajsj_87rMuMdKypDlMul7LJpK.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Secular One" + } + ] + }, + { + "name": "Sedgwick Ave", + "fontFamily": "Sedgwick Ave, cursive", + "slug": "sedgwick-ave", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sedgwickave/v12/uK_04rKEYuguzAcSYRdWTJq8Xmg1Vcf5JA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sedgwick Ave" + } + ] + }, + { + "name": "Sedgwick Ave Display", + "fontFamily": "Sedgwick Ave Display, cursive", + "slug": "sedgwick-ave-display", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sedgwickavedisplay/v19/xfuu0XPgU3jZPUoUo3ScvmPi-NapQ8OxM2czd-YnOzUD.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sedgwick Ave Display" + } + ] + }, + { + "name": "Sen", + "fontFamily": "Sen, sans-serif", + "slug": "sen", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sen/v7/6xKjdSxYI9_Hm_-MImrpLQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sen" + }, + { + "src": "http://fonts.gstatic.com/s/sen/v7/6xKudSxYI9__J9CoKkH1JHUQSQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Sen" + }, + { + "src": "http://fonts.gstatic.com/s/sen/v7/6xKudSxYI9__O9OoKkH1JHUQSQ.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Sen" + } + ] + }, + { + "name": "Send Flowers", + "fontFamily": "Send Flowers, cursive", + "slug": "send-flowers", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sendflowers/v2/If2PXTjtZS-0Xqy13uCQSULvxwjjouU1iw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Send Flowers" + } + ] + }, + { + "name": "Sevillana", + "fontFamily": "Sevillana, system-ui", + "slug": "sevillana", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sevillana/v21/KFOlCnWFscmDt1Bfiy1vAx05IsDqlA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sevillana" + } + ] + }, + { + "name": "Seymour One", + "fontFamily": "Seymour One, sans-serif", + "slug": "seymour-one", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/seymourone/v20/4iCp6Khla9xbjQpoWGGd0myIPYBvgpUI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Seymour One" + } + ] + }, + { + "name": "Shadows Into Light", + "fontFamily": "Shadows Into Light, cursive", + "slug": "shadows-into-light", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/shadowsintolight/v15/UqyNK9UOIntux_czAvDQx_ZcHqZXBNQDcsr4xzSMYA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Shadows Into Light" + } + ] + }, + { + "name": "Shadows Into Light Two", + "fontFamily": "Shadows Into Light Two, cursive", + "slug": "shadows-into-light-two", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/shadowsintolighttwo/v14/4iC86LVlZsRSjQhpWGedwyOoW-0A6_kpsyNmlAvNGLNnIF0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Shadows Into Light Two" + } + ] + }, + { + "name": "Shalimar", + "fontFamily": "Shalimar, cursive", + "slug": "shalimar", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/shalimar/v5/uU9MCBoE6I6iNWFUvTPx8PCOg0uX.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Shalimar" + } + ] + }, + { + "name": "Shantell Sans", + "fontFamily": "Shantell Sans, system-ui", + "slug": "shantell-sans", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/shantellsans/v7/FeUaS0pCoLIo-lcdY7kjvNoQqWVWB0qWpl29ajppTuUTu_kJKmHesPOL-maYi4xZeHCNQ09eBlmv2QcUzJ39-rAISYQiS2i2yPwxjyRN.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Shantell Sans" + }, + { + "src": "http://fonts.gstatic.com/s/shantellsans/v7/FeUaS0pCoLIo-lcdY7kjvNoQqWVWB0qWpl29ajppTuUTu_kJKmHesPOL-maYi4xZeHCNQ09eBlmv2QcUzJ39-rAISYR8S2i2yPwxjyRN.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Shantell Sans" + }, + { + "src": "http://fonts.gstatic.com/s/shantellsans/v7/FeUaS0pCoLIo-lcdY7kjvNoQqWVWB0qWpl29ajppTuUTu_kJKmHesPOL-maYi4xZeHCNQ09eBlmv2QcUzJ39-rAISYROS2i2yPwxjyRN.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Shantell Sans" + }, + { + "src": "http://fonts.gstatic.com/s/shantellsans/v7/FeUaS0pCoLIo-lcdY7kjvNoQqWVWB0qWpl29ajppTuUTu_kJKmHesPOL-maYi4xZeHCNQ09eBlmv2QcUzJ39-rAISYSiTGi2yPwxjyRN.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Shantell Sans" + }, + { + "src": "http://fonts.gstatic.com/s/shantellsans/v7/FeUaS0pCoLIo-lcdY7kjvNoQqWVWB0qWpl29ajppTuUTu_kJKmHesPOL-maYi4xZeHCNQ09eBlmv2QcUzJ39-rAISYSbTGi2yPwxjyRN.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Shantell Sans" + }, + { + "src": "http://fonts.gstatic.com/s/shantellsans/v7/FeUaS0pCoLIo-lcdY7kjvNoQqWVWB0qWpl29ajppTuUTu_kJKmHesPOL-maYi4xZeHCNQ09eBlmv2QcUzJ39-rAISYT8TGi2yPwxjyRN.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Shantell Sans" + }, + { + "src": "http://fonts.gstatic.com/s/shantellsans/v7/FeUcS0pCoLIo-lcdY7kjvNoQg2xkycTqsuA6bi9pTt8YiT-NXidjb_ee-maigL6R8nKVh8BbE1mv4wwmM0WUkSqmTpG0CN71wvgTijRNYgQ.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Shantell Sans" + }, + { + "src": "http://fonts.gstatic.com/s/shantellsans/v7/FeUcS0pCoLIo-lcdY7kjvNoQg2xkycTqsuA6bi9pTt8YiT-NXidjb_ee-maigL6R8nKVh8BbE1mv4wwmM0WUkSqmTpG0CID1wvgTijRNYgQ.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Shantell Sans" + }, + { + "src": "http://fonts.gstatic.com/s/shantellsans/v7/FeUcS0pCoLIo-lcdY7kjvNoQg2xkycTqsuA6bi9pTt8YiT-NXidjb_ee-maigL6R8nKVh8BbE1mv4wwmM0WUkSqmTpG0CLL1wvgTijRNYgQ.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Shantell Sans" + }, + { + "src": "http://fonts.gstatic.com/s/shantellsans/v7/FeUcS0pCoLIo-lcdY7kjvNoQg2xkycTqsuA6bi9pTt8YiT-NXidjb_ee-maigL6R8nKVh8BbE1mv4wwmM0WUkSqmTpG0CF7ywvgTijRNYgQ.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Shantell Sans" + }, + { + "src": "http://fonts.gstatic.com/s/shantellsans/v7/FeUcS0pCoLIo-lcdY7kjvNoQg2xkycTqsuA6bi9pTt8YiT-NXidjb_ee-maigL6R8nKVh8BbE1mv4wwmM0WUkSqmTpG0CGfywvgTijRNYgQ.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Shantell Sans" + }, + { + "src": "http://fonts.gstatic.com/s/shantellsans/v7/FeUcS0pCoLIo-lcdY7kjvNoQg2xkycTqsuA6bi9pTt8YiT-NXidjb_ee-maigL6R8nKVh8BbE1mv4wwmM0WUkSqmTpG0CADywvgTijRNYgQ.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Shantell Sans" + } + ] + }, + { + "name": "Shanti", + "fontFamily": "Shanti, sans-serif", + "slug": "shanti", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/shanti/v23/t5thIREMM4uSDgzgU0ezpKfwzA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Shanti" + } + ] + }, + { + "name": "Share", + "fontFamily": "Share, system-ui", + "slug": "share", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/share/v16/i7dEIFliZjKNF5VNHLq2cV5d.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Share" + }, + { + "src": "http://fonts.gstatic.com/s/share/v16/i7dKIFliZjKNF6VPFr6UdE5dWFM.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Share" + }, + { + "src": "http://fonts.gstatic.com/s/share/v16/i7dJIFliZjKNF63xM56-WkJUQUq7.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Share" + }, + { + "src": "http://fonts.gstatic.com/s/share/v16/i7dPIFliZjKNF6VPLgK7UEZ2RFq7AwU.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Share" + } + ] + }, + { + "name": "Share Tech", + "fontFamily": "Share Tech, sans-serif", + "slug": "share-tech", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sharetech/v17/7cHtv4Uyi5K0OeZ7bohUwHoDmTcibrA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Share Tech" + } + ] + }, + { + "name": "Share Tech Mono", + "fontFamily": "Share Tech Mono, monospace", + "slug": "share-tech-mono", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sharetechmono/v15/J7aHnp1uDWRBEqV98dVQztYldFc7pAsEIc3Xew.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Share Tech Mono" + } + ] + }, + { + "name": "Shippori Antique", + "fontFamily": "Shippori Antique, sans-serif", + "slug": "shippori-antique", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/shipporiantique/v8/-F6qfid3KC8pdMyzR0qRyFUht11v8ldPg-IUDNg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Shippori Antique" + } + ] + }, + { + "name": "Shippori Antique B1", + "fontFamily": "Shippori Antique B1, sans-serif", + "slug": "shippori-antique-b1", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/shipporiantiqueb1/v8/2Eb7L_JwClR7Zl_UAKZ0mUHw3oMKd40grRFCj9-5Y8Y.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Shippori Antique B1" + } + ] + }, + { + "name": "Shippori Mincho", + "fontFamily": "Shippori Mincho, serif", + "slug": "shippori-mincho", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/shipporimincho/v14/VdGGAZweH5EbgHY6YExcZfDoj0BA2_-C7LoS7g.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Shippori Mincho" + }, + { + "src": "http://fonts.gstatic.com/s/shipporimincho/v14/VdGDAZweH5EbgHY6YExcZfDoj0B4L9am5JEO5--2zg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Shippori Mincho" + }, + { + "src": "http://fonts.gstatic.com/s/shipporimincho/v14/VdGDAZweH5EbgHY6YExcZfDoj0B4A9Gm5JEO5--2zg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Shippori Mincho" + }, + { + "src": "http://fonts.gstatic.com/s/shipporimincho/v14/VdGDAZweH5EbgHY6YExcZfDoj0B4Z9Cm5JEO5--2zg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Shippori Mincho" + }, + { + "src": "http://fonts.gstatic.com/s/shipporimincho/v14/VdGDAZweH5EbgHY6YExcZfDoj0B4e9Om5JEO5--2zg.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Shippori Mincho" + } + ] + }, + { + "name": "Shippori Mincho B1", + "fontFamily": "Shippori Mincho B1, serif", + "slug": "shippori-mincho-b1", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/shipporiminchob1/v19/~ChQKElNoaXBwb3JpIE1pbmNobyBCMSAAKgQIARgB.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Shippori Mincho B1" + }, + { + "src": "http://fonts.gstatic.com/s/shipporiminchob1/v19/~ChcKElNoaXBwb3JpIE1pbmNobyBCMRj0AyAAKgQIARgB.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Shippori Mincho B1" + }, + { + "src": "http://fonts.gstatic.com/s/shipporiminchob1/v19/~ChcKElNoaXBwb3JpIE1pbmNobyBCMRjYBCAAKgQIARgB.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Shippori Mincho B1" + }, + { + "src": "http://fonts.gstatic.com/s/shipporiminchob1/v19/~ChcKElNoaXBwb3JpIE1pbmNobyBCMRi8BSAAKgQIARgB.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Shippori Mincho B1" + }, + { + "src": "http://fonts.gstatic.com/s/shipporiminchob1/v19/~ChcKElNoaXBwb3JpIE1pbmNobyBCMRigBiAAKgQIARgB.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Shippori Mincho B1" + } + ] + }, + { + "name": "Shizuru", + "fontFamily": "Shizuru, system-ui", + "slug": "shizuru", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/shizuru/v10/O4ZSFGfvnxFiCA3i30IJlgUTj2A.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Shizuru" + } + ] + }, + { + "name": "Shojumaru", + "fontFamily": "Shojumaru, system-ui", + "slug": "shojumaru", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/shojumaru/v15/rax_HiWfutkLLnaKCtlMBBJek0vA8A.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Shojumaru" + } + ] + }, + { + "name": "Short Stack", + "fontFamily": "Short Stack, cursive", + "slug": "short-stack", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/shortstack/v15/bMrzmS2X6p0jZC6EcmPFX-SScX8D0nq6.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Short Stack" + } + ] + }, + { + "name": "Shrikhand", + "fontFamily": "Shrikhand, system-ui", + "slug": "shrikhand", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/shrikhand/v12/a8IbNovtLWfR7T7bMJwbBIiQ0zhMtA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Shrikhand" + } + ] + }, + { + "name": "Siemreap", + "fontFamily": "Siemreap, system-ui", + "slug": "siemreap", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/siemreap/v24/Gg82N5oFbgLvHAfNl2YbnA8DLXpe.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Siemreap" + } + ] + }, + { + "name": "Sigmar", + "fontFamily": "Sigmar, system-ui", + "slug": "sigmar", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sigmar/v3/hv-XlzJgIE8a85pUbWY3MTFgVg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sigmar" + } + ] + }, + { + "name": "Sigmar One", + "fontFamily": "Sigmar One, system-ui", + "slug": "sigmar-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sigmarone/v16/co3DmWZ8kjZuErj9Ta3dk6Pjp3Di8U0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sigmar One" + } + ] + }, + { + "name": "Signika", + "fontFamily": "Signika, sans-serif", + "slug": "signika", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/signika/v20/vEFO2_JTCgwQ5ejvMV0O96D01E8J0tIJHJbGhs_cfKe1.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Signika" + }, + { + "src": "http://fonts.gstatic.com/s/signika/v20/vEFO2_JTCgwQ5ejvMV0O96D01E8J0tJXHJbGhs_cfKe1.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Signika" + }, + { + "src": "http://fonts.gstatic.com/s/signika/v20/vEFO2_JTCgwQ5ejvMV0O96D01E8J0tJlHJbGhs_cfKe1.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Signika" + }, + { + "src": "http://fonts.gstatic.com/s/signika/v20/vEFO2_JTCgwQ5ejvMV0O96D01E8J0tKJG5bGhs_cfKe1.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Signika" + }, + { + "src": "http://fonts.gstatic.com/s/signika/v20/vEFO2_JTCgwQ5ejvMV0O96D01E8J0tKwG5bGhs_cfKe1.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Signika" + } + ] + }, + { + "name": "Signika Negative", + "fontFamily": "Signika Negative, sans-serif", + "slug": "signika-negative", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/signikanegative/v20/E21x_cfngu7HiRpPX3ZpNE4kY5zKSPmJXkF0VDD2RAr5S73st9hiuEq8.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Signika Negative" + }, + { + "src": "http://fonts.gstatic.com/s/signikanegative/v20/E21x_cfngu7HiRpPX3ZpNE4kY5zKSPmJXkF0VDD2RAqnS73st9hiuEq8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Signika Negative" + }, + { + "src": "http://fonts.gstatic.com/s/signikanegative/v20/E21x_cfngu7HiRpPX3ZpNE4kY5zKSPmJXkF0VDD2RAqVS73st9hiuEq8.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Signika Negative" + }, + { + "src": "http://fonts.gstatic.com/s/signikanegative/v20/E21x_cfngu7HiRpPX3ZpNE4kY5zKSPmJXkF0VDD2RAp5TL3st9hiuEq8.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Signika Negative" + }, + { + "src": "http://fonts.gstatic.com/s/signikanegative/v20/E21x_cfngu7HiRpPX3ZpNE4kY5zKSPmJXkF0VDD2RApATL3st9hiuEq8.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Signika Negative" + } + ] + }, + { + "name": "Silkscreen", + "fontFamily": "Silkscreen, system-ui", + "slug": "silkscreen", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/silkscreen/v1/m8JXjfVPf62XiF7kO-i9ULRvamODxdI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Silkscreen" + }, + { + "src": "http://fonts.gstatic.com/s/silkscreen/v1/m8JUjfVPf62XiF7kO-i9aAhATmuo2dudFvc.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Silkscreen" + } + ] + }, + { + "name": "Simonetta", + "fontFamily": "Simonetta, system-ui", + "slug": "simonetta", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/simonetta/v24/x3dickHVYrCU5BU15c4BfPACvy_1BA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Simonetta" + }, + { + "src": "http://fonts.gstatic.com/s/simonetta/v24/x3dkckHVYrCU5BU15c4xfvoGnSrlBBsy.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Simonetta" + }, + { + "src": "http://fonts.gstatic.com/s/simonetta/v24/x3dnckHVYrCU5BU15c45-N0mtwTpDQIrGg.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Simonetta" + }, + { + "src": "http://fonts.gstatic.com/s/simonetta/v24/x3d5ckHVYrCU5BU15c4xfsKCsA7tLwc7Gn88.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Simonetta" + } + ] + }, + { + "name": "Single Day", + "fontFamily": "Single Day, system-ui", + "slug": "single-day", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/singleday/v15/LYjHdGDjlEgoAcF95EI5jVoFUNfeQJU.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Single Day" + } + ] + }, + { + "name": "Sintony", + "fontFamily": "Sintony, sans-serif", + "slug": "sintony", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sintony/v13/XoHm2YDqR7-98cVUITQnu98ojjs.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sintony" + }, + { + "src": "http://fonts.gstatic.com/s/sintony/v13/XoHj2YDqR7-98cVUGYgIn9cDkjLp6C8.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Sintony" + } + ] + }, + { + "name": "Sirin Stencil", + "fontFamily": "Sirin Stencil, system-ui", + "slug": "sirin-stencil", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sirinstencil/v21/mem4YaWwznmLx-lzGfN7MdRydchGBq6al6o.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sirin Stencil" + } + ] + }, + { + "name": "Six Caps", + "fontFamily": "Six Caps, sans-serif", + "slug": "six-caps", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sixcaps/v16/6ae_4KGrU7VR7bNmabcS9XXaPCop.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Six Caps" + } + ] + }, + { + "name": "Skranji", + "fontFamily": "Skranji, system-ui", + "slug": "skranji", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/skranji/v13/OZpDg_dtriVFNerMYzuuklTm3Ek.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Skranji" + }, + { + "src": "http://fonts.gstatic.com/s/skranji/v13/OZpGg_dtriVFNerMW4eBtlzNwED-b4g.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Skranji" + } + ] + }, + { + "name": "Slabo 13px", + "fontFamily": "Slabo 13px, serif", + "slug": "slabo-13px", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/slabo13px/v13/11hEGp_azEvXZUdSBzzRcKer2wkYnvI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Slabo 13px" + } + ] + }, + { + "name": "Slabo 27px", + "fontFamily": "Slabo 27px, serif", + "slug": "slabo-27px", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/slabo27px/v12/mFT0WbgBwKPR_Z4hGN2qsxgJ1EJ7i90.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Slabo 27px" + } + ] + }, + { + "name": "Slackey", + "fontFamily": "Slackey, system-ui", + "slug": "slackey", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/slackey/v24/N0bV2SdQO-5yM0-dKlRaJdbWgdY.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Slackey" + } + ] + }, + { + "name": "Slackside One", + "fontFamily": "Slackside One, cursive", + "slug": "slackside-one", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/slacksideone/v8/EJRQQgMrXdcGsiBuvnRxodTwVy7VocNB6Iw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Slackside One" + } + ] + }, + { + "name": "Smokum", + "fontFamily": "Smokum, system-ui", + "slug": "smokum", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/smokum/v24/TK3iWkUbAhopmrdGHjUHte5fKg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Smokum" + } + ] + }, + { + "name": "Smooch", + "fontFamily": "Smooch, cursive", + "slug": "smooch", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/smooch/v5/o-0LIps4xW8U1xUBjqp_6hVdYg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Smooch" + } + ] + }, + { + "name": "Smooch Sans", + "fontFamily": "Smooch Sans, sans-serif", + "slug": "smooch-sans", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/smoochsans/v10/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oiwUFodqIeNlzayg.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Smooch Sans" + }, + { + "src": "http://fonts.gstatic.com/s/smoochsans/v10/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oiQUBodqIeNlzayg.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Smooch Sans" + }, + { + "src": "http://fonts.gstatic.com/s/smoochsans/v10/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oin0BodqIeNlzayg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Smooch Sans" + }, + { + "src": "http://fonts.gstatic.com/s/smoochsans/v10/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oiwUBodqIeNlzayg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Smooch Sans" + }, + { + "src": "http://fonts.gstatic.com/s/smoochsans/v10/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oi80BodqIeNlzayg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Smooch Sans" + }, + { + "src": "http://fonts.gstatic.com/s/smoochsans/v10/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oiH0dodqIeNlzayg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Smooch Sans" + }, + { + "src": "http://fonts.gstatic.com/s/smoochsans/v10/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oiJkdodqIeNlzayg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Smooch Sans" + }, + { + "src": "http://fonts.gstatic.com/s/smoochsans/v10/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oiQUdodqIeNlzayg.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Smooch Sans" + }, + { + "src": "http://fonts.gstatic.com/s/smoochsans/v10/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oiaEdodqIeNlzayg.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Smooch Sans" + } + ] + }, + { + "name": "Smythe", + "fontFamily": "Smythe, system-ui", + "slug": "smythe", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/smythe/v23/MwQ3bhT01--coT1BOLh_uGInjA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Smythe" + } + ] + }, + { + "name": "Sniglet", + "fontFamily": "Sniglet, system-ui", + "slug": "sniglet", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sniglet/v17/cIf9MaFLtkE3UjaJxCmrYGkHgIs.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sniglet" + }, + { + "src": "http://fonts.gstatic.com/s/sniglet/v17/cIf4MaFLtkE3UjaJ_ImHRGEsnIJkWL4.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Sniglet" + } + ] + }, + { + "name": "Snippet", + "fontFamily": "Snippet, sans-serif", + "slug": "snippet", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/snippet/v21/bWt47f7XfQH9Gupu2v_Afcp9QWc.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Snippet" + } + ] + }, + { + "name": "Snowburst One", + "fontFamily": "Snowburst One, system-ui", + "slug": "snowburst-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/snowburstone/v20/MQpS-WezKdujBsXY3B7I-UT7eZ-UPyacPbo.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Snowburst One" + } + ] + }, + { + "name": "Sofadi One", + "fontFamily": "Sofadi One, system-ui", + "slug": "sofadi-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sofadione/v21/JIA2UVBxdnVBuElZaMFGcDOIETkmYDU.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sofadi One" + } + ] + }, + { + "name": "Sofia", + "fontFamily": "Sofia, cursive", + "slug": "sofia", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sofia/v14/8QIHdirahM3j_vu-sowsrqjk.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sofia" + } + ] + }, + { + "name": "Sofia Sans", + "fontFamily": "Sofia Sans, sans-serif", + "slug": "sofia-sans", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69B6sa3trvKCXl8k.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Sofia Sans" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69D6sK3trvKCXl8k.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Sofia Sans" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69AksK3trvKCXl8k.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Sofia Sans" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69B6sK3trvKCXl8k.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sofia Sans" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69BIsK3trvKCXl8k.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Sofia Sans" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69Ckt63trvKCXl8k.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Sofia Sans" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69Cdt63trvKCXl8k.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Sofia Sans" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69D6t63trvKCXl8k.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Sofia Sans" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69DTt63trvKCXl8k.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Sofia Sans" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy80WvpPagW08kdLY.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Sofia Sans" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy88WupPagW08kdLY.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Sofia Sans" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy8xuupPagW08kdLY.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Sofia Sans" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy80WupPagW08kdLY.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Sofia Sans" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy83eupPagW08kdLY.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Sofia Sans" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy85uppPagW08kdLY.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Sofia Sans" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy86KppPagW08kdLY.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Sofia Sans" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy88WppPagW08kdLY.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Sofia Sans" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy8-yppPagW08kdLY.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Sofia Sans" + } + ] + }, + { + "name": "Sofia Sans Condensed", + "fontFamily": "Sofia Sans Condensed, sans-serif", + "slug": "sofia-sans-condensed", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqh-Csl8QO3OfwQQ.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Sofia Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqB-Gsl8QO3OfwQQ.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Sofia Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUq2eGsl8QO3OfwQQ.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Sofia Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqh-Gsl8QO3OfwQQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sofia Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqteGsl8QO3OfwQQ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Sofia Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqWeasl8QO3OfwQQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Sofia Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqYOasl8QO3OfwQQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Sofia Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqB-asl8QO3OfwQQ.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Sofia Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqLuasl8QO3OfwQQ.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Sofia Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6JE1c4K_uLgQZ_3.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Sofia Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6LE1M4K_uLgQZ_3.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Sofia Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6Ia1M4K_uLgQZ_3.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Sofia Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6JE1M4K_uLgQZ_3.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Sofia Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6J21M4K_uLgQZ_3.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Sofia Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6Ka084K_uLgQZ_3.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Sofia Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6Kj084K_uLgQZ_3.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Sofia Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6LE084K_uLgQZ_3.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Sofia Sans Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6Lt084K_uLgQZ_3.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Sofia Sans Condensed" + } + ] + }, + { + "name": "Sofia Sans Extra Condensed", + "fontFamily": "Sofia Sans Extra Condensed, sans-serif", + "slug": "sofia-sans-extra-condensed", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLmmmEfzmM356GxA.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Sofia Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLGmiEfzmM356GxA.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Sofia Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLxGiEfzmM356GxA.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Sofia Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLmmiEfzmM356GxA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sofia Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLqGiEfzmM356GxA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Sofia Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLRG-EfzmM356GxA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Sofia Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLfW-EfzmM356GxA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Sofia Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLGm-EfzmM356GxA.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Sofia Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLM2-EfzmM356GxA.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Sofia Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUitsPTOI_ZuWxFXe.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Sofia Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUivsPDOI_ZuWxFXe.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Sofia Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUisyPDOI_ZuWxFXe.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Sofia Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUitsPDOI_ZuWxFXe.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Sofia Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUitePDOI_ZuWxFXe.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Sofia Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUiuyOzOI_ZuWxFXe.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Sofia Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUiuLOzOI_ZuWxFXe.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Sofia Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUivsOzOI_ZuWxFXe.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Sofia Sans Extra Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUivFOzOI_ZuWxFXe.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Sofia Sans Extra Condensed" + } + ] + }, + { + "name": "Sofia Sans Semi Condensed", + "fontFamily": "Sofia Sans Semi Condensed, sans-serif", + "slug": "sofia-sans-semi-condensed", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvoobEO9TGahllIhN.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Sofia Sans Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvoqbEe9TGahllIhN.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Sofia Sans Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvopFEe9TGahllIhN.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Sofia Sans Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvoobEe9TGahllIhN.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sofia Sans Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvoopEe9TGahllIhN.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Sofia Sans Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvorFFu9TGahllIhN.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Sofia Sans Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvor8Fu9TGahllIhN.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Sofia Sans Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvoqbFu9TGahllIhN.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Sofia Sans Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvoqyFu9TGahllIhN.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Sofia Sans Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUgcRE6xHkZhNeas.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Sofia Sans Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUocQE6xHkZhNeas.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Sofia Sans Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUlkQE6xHkZhNeas.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Sofia Sans Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUgcQE6xHkZhNeas.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Sofia Sans Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUjUQE6xHkZhNeas.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Sofia Sans Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUtkXE6xHkZhNeas.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Sofia Sans Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUuAXE6xHkZhNeas.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Sofia Sans Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUocXE6xHkZhNeas.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Sofia Sans Semi Condensed" + }, + { + "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUq4XE6xHkZhNeas.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Sofia Sans Semi Condensed" + } + ] + }, + { + "name": "Solitreo", + "fontFamily": "Solitreo, cursive", + "slug": "solitreo", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/solitreo/v2/r05YGLlS5a9KYsyNO8upyDYtStiJ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Solitreo" + } + ] + }, + { + "name": "Solway", + "fontFamily": "Solway, serif", + "slug": "solway", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/solway/v18/AMOTz46Cs2uTAOCuLlgZms0QW3mqyg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Solway" + }, + { + "src": "http://fonts.gstatic.com/s/solway/v18/AMOQz46Cs2uTAOCWgnA9kuYMUg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Solway" + }, + { + "src": "http://fonts.gstatic.com/s/solway/v18/AMOTz46Cs2uTAOCudlkZms0QW3mqyg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Solway" + }, + { + "src": "http://fonts.gstatic.com/s/solway/v18/AMOTz46Cs2uTAOCuPl8Zms0QW3mqyg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Solway" + }, + { + "src": "http://fonts.gstatic.com/s/solway/v18/AMOTz46Cs2uTAOCuIlwZms0QW3mqyg.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Solway" + } + ] + }, + { + "name": "Song Myung", + "fontFamily": "Song Myung, serif", + "slug": "song-myung", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/songmyung/v20/1cX2aUDWAJH5-EIC7DIhr1GqhcitzeM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Song Myung" + } + ] + }, + { + "name": "Sono", + "fontFamily": "Sono, sans-serif", + "slug": "sono", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sono/v4/aFT97PNiY3U2Cqf_aYEN64CYaK18YWJEsV6u-QLiOsxVNkWdEnR4qYeB4Q.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Sono" + }, + { + "src": "http://fonts.gstatic.com/s/sono/v4/aFT97PNiY3U2Cqf_aYEN64CYaK18YWJEsV6u-QLiOsxV6EWdEnR4qYeB4Q.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Sono" + }, + { + "src": "http://fonts.gstatic.com/s/sono/v4/aFT97PNiY3U2Cqf_aYEN64CYaK18YWJEsV6u-QLiOsxVtkWdEnR4qYeB4Q.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sono" + }, + { + "src": "http://fonts.gstatic.com/s/sono/v4/aFT97PNiY3U2Cqf_aYEN64CYaK18YWJEsV6u-QLiOsxVhEWdEnR4qYeB4Q.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Sono" + }, + { + "src": "http://fonts.gstatic.com/s/sono/v4/aFT97PNiY3U2Cqf_aYEN64CYaK18YWJEsV6u-QLiOsxVaEKdEnR4qYeB4Q.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Sono" + }, + { + "src": "http://fonts.gstatic.com/s/sono/v4/aFT97PNiY3U2Cqf_aYEN64CYaK18YWJEsV6u-QLiOsxVUUKdEnR4qYeB4Q.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Sono" + }, + { + "src": "http://fonts.gstatic.com/s/sono/v4/aFT97PNiY3U2Cqf_aYEN64CYaK18YWJEsV6u-QLiOsxVNkKdEnR4qYeB4Q.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Sono" + } + ] + }, + { + "name": "Sonsie One", + "fontFamily": "Sonsie One, system-ui", + "slug": "sonsie-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sonsieone/v21/PbymFmP_EAnPqbKaoc18YVu80lbp8JM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sonsie One" + } + ] + }, + { + "name": "Sora", + "fontFamily": "Sora, sans-serif", + "slug": "sora", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sora/v11/xMQOuFFYT72X5wkB_18qmnndmSdSn3-KIwNhBti0.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Sora" + }, + { + "src": "http://fonts.gstatic.com/s/sora/v11/xMQOuFFYT72X5wkB_18qmnndmSfSnn-KIwNhBti0.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Sora" + }, + { + "src": "http://fonts.gstatic.com/s/sora/v11/xMQOuFFYT72X5wkB_18qmnndmScMnn-KIwNhBti0.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Sora" + }, + { + "src": "http://fonts.gstatic.com/s/sora/v11/xMQOuFFYT72X5wkB_18qmnndmSdSnn-KIwNhBti0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sora" + }, + { + "src": "http://fonts.gstatic.com/s/sora/v11/xMQOuFFYT72X5wkB_18qmnndmSdgnn-KIwNhBti0.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Sora" + }, + { + "src": "http://fonts.gstatic.com/s/sora/v11/xMQOuFFYT72X5wkB_18qmnndmSeMmX-KIwNhBti0.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Sora" + }, + { + "src": "http://fonts.gstatic.com/s/sora/v11/xMQOuFFYT72X5wkB_18qmnndmSe1mX-KIwNhBti0.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Sora" + }, + { + "src": "http://fonts.gstatic.com/s/sora/v11/xMQOuFFYT72X5wkB_18qmnndmSfSmX-KIwNhBti0.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Sora" + } + ] + }, + { + "name": "Sorts Mill Goudy", + "fontFamily": "Sorts Mill Goudy, serif", + "slug": "sorts-mill-goudy", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sortsmillgoudy/v15/Qw3GZR9MED_6PSuS_50nEaVrfzgEXH0OjpM75PE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sorts Mill Goudy" + }, + { + "src": "http://fonts.gstatic.com/s/sortsmillgoudy/v15/Qw3AZR9MED_6PSuS_50nEaVrfzgEbH8EirE-9PGLfQ.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Sorts Mill Goudy" + } + ] + }, + { + "name": "Source Code Pro", + "fontFamily": "Source Code Pro, monospace", + "slug": "source-code-pro", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sourcecodepro/v22/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DEyQhM5hTXUcdJg.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Source Code Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourcecodepro/v22/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DJKQhM5hTXUcdJg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Source Code Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourcecodepro/v22/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DMyQhM5hTXUcdJg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Source Code Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourcecodepro/v22/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DP6QhM5hTXUcdJg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Source Code Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourcecodepro/v22/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DBKXhM5hTXUcdJg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Source Code Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourcecodepro/v22/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DCuXhM5hTXUcdJg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Source Code Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourcecodepro/v22/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DEyXhM5hTXUcdJg.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Source Code Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourcecodepro/v22/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DGWXhM5hTXUcdJg.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Source Code Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourcecodepro/v22/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTT7I1rSVcZZJiGpw.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Source Code Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourcecodepro/v22/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTTMo1rSVcZZJiGpw.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Source Code Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourcecodepro/v22/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTTbI1rSVcZZJiGpw.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Source Code Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourcecodepro/v22/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTTXo1rSVcZZJiGpw.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Source Code Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourcecodepro/v22/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTTsoprSVcZZJiGpw.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Source Code Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourcecodepro/v22/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTTi4prSVcZZJiGpw.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Source Code Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourcecodepro/v22/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTT7IprSVcZZJiGpw.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Source Code Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourcecodepro/v22/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTTxYprSVcZZJiGpw.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Source Code Pro" + } + ] + }, + { + "name": "Source Sans 3", + "fontFamily": "Source Sans 3, sans-serif", + "slug": "source-sans-3", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sourcesans3/v9/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8Kw461EN_io6npfB.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Source Sans 3" + }, + { + "src": "http://fonts.gstatic.com/s/sourcesans3/v9/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8Kzm61EN_io6npfB.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Source Sans 3" + }, + { + "src": "http://fonts.gstatic.com/s/sourcesans3/v9/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8Ky461EN_io6npfB.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Source Sans 3" + }, + { + "src": "http://fonts.gstatic.com/s/sourcesans3/v9/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8KyK61EN_io6npfB.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Source Sans 3" + }, + { + "src": "http://fonts.gstatic.com/s/sourcesans3/v9/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8Kxm7FEN_io6npfB.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Source Sans 3" + }, + { + "src": "http://fonts.gstatic.com/s/sourcesans3/v9/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8Kxf7FEN_io6npfB.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Source Sans 3" + }, + { + "src": "http://fonts.gstatic.com/s/sourcesans3/v9/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8Kw47FEN_io6npfB.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Source Sans 3" + }, + { + "src": "http://fonts.gstatic.com/s/sourcesans3/v9/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8KwR7FEN_io6npfB.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Source Sans 3" + }, + { + "src": "http://fonts.gstatic.com/s/sourcesans3/v9/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqDlO9C4Ym4fB3Ts.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Source Sans 3" + }, + { + "src": "http://fonts.gstatic.com/s/sourcesans3/v9/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqOdO9C4Ym4fB3Ts.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Source Sans 3" + }, + { + "src": "http://fonts.gstatic.com/s/sourcesans3/v9/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqLlO9C4Ym4fB3Ts.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Source Sans 3" + }, + { + "src": "http://fonts.gstatic.com/s/sourcesans3/v9/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqItO9C4Ym4fB3Ts.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Source Sans 3" + }, + { + "src": "http://fonts.gstatic.com/s/sourcesans3/v9/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqGdJ9C4Ym4fB3Ts.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Source Sans 3" + }, + { + "src": "http://fonts.gstatic.com/s/sourcesans3/v9/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqF5J9C4Ym4fB3Ts.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Source Sans 3" + }, + { + "src": "http://fonts.gstatic.com/s/sourcesans3/v9/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqDlJ9C4Ym4fB3Ts.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Source Sans 3" + }, + { + "src": "http://fonts.gstatic.com/s/sourcesans3/v9/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqBBJ9C4Ym4fB3Ts.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Source Sans 3" + } + ] + }, + { + "name": "Source Sans Pro", + "fontFamily": "Source Sans Pro, sans-serif", + "slug": "source-sans-pro", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sourcesanspro/v21/6xKydSBYKcSV-LCoeQqfX1RYOo3i94_AkB1v_8CGxg.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Source Sans Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourcesanspro/v21/6xKwdSBYKcSV-LCoeQqfX1RYOo3qPZYokRdr3cWWxg40.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Source Sans Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourcesanspro/v21/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zAkB1v_8CGxg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Source Sans Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourcesanspro/v21/6xKwdSBYKcSV-LCoeQqfX1RYOo3qPZZMkhdr3cWWxg40.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Source Sans Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourcesanspro/v21/6xK3dSBYKcSV-LCoeQqfX1RYOo3aP6TkmDZz9g.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Source Sans Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourcesanspro/v21/6xK1dSBYKcSV-LCoeQqfX1RYOo3qPa7gujNj9tmf.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Source Sans Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourcesanspro/v21/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rAkB1v_8CGxg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Source Sans Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourcesanspro/v21/6xKwdSBYKcSV-LCoeQqfX1RYOo3qPZY4lBdr3cWWxg40.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Source Sans Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourcesanspro/v21/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vAkB1v_8CGxg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Source Sans Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourcesanspro/v21/6xKwdSBYKcSV-LCoeQqfX1RYOo3qPZZclRdr3cWWxg40.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Source Sans Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourcesanspro/v21/6xKydSBYKcSV-LCoeQqfX1RYOo3iu4nAkB1v_8CGxg.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Source Sans Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourcesanspro/v21/6xKwdSBYKcSV-LCoeQqfX1RYOo3qPZZklxdr3cWWxg40.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Source Sans Pro" + } + ] + }, + { + "name": "Source Serif 4", + "fontFamily": "Source Serif 4, serif", + "slug": "source-serif-4", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sourceserif4/v7/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjipdqrhxXD-wGvjU.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Source Serif 4" + }, + { + "src": "http://fonts.gstatic.com/s/sourceserif4/v7/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjiklqrhxXD-wGvjU.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Source Serif 4" + }, + { + "src": "http://fonts.gstatic.com/s/sourceserif4/v7/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjihdqrhxXD-wGvjU.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Source Serif 4" + }, + { + "src": "http://fonts.gstatic.com/s/sourceserif4/v7/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjiiVqrhxXD-wGvjU.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Source Serif 4" + }, + { + "src": "http://fonts.gstatic.com/s/sourceserif4/v7/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjisltrhxXD-wGvjU.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Source Serif 4" + }, + { + "src": "http://fonts.gstatic.com/s/sourceserif4/v7/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjivBtrhxXD-wGvjU.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Source Serif 4" + }, + { + "src": "http://fonts.gstatic.com/s/sourceserif4/v7/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjipdtrhxXD-wGvjU.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Source Serif 4" + }, + { + "src": "http://fonts.gstatic.com/s/sourceserif4/v7/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjir5trhxXD-wGvjU.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Source Serif 4" + }, + { + "src": "http://fonts.gstatic.com/s/sourceserif4/v7/vEF02_tTDB4M7-auWDN0ahZJW1ge6NmXpVAHV83Bfb_US2D2QYxoUKIkn98pxl9dC84DrjXEXw.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Source Serif 4" + }, + { + "src": "http://fonts.gstatic.com/s/sourceserif4/v7/vEF02_tTDB4M7-auWDN0ahZJW1ge6NmXpVAHV83Bfb_US2D2QYxoUKIkn98pGF9dC84DrjXEXw.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Source Serif 4" + }, + { + "src": "http://fonts.gstatic.com/s/sourceserif4/v7/vEF02_tTDB4M7-auWDN0ahZJW1ge6NmXpVAHV83Bfb_US2D2QYxoUKIkn98pRl9dC84DrjXEXw.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Source Serif 4" + }, + { + "src": "http://fonts.gstatic.com/s/sourceserif4/v7/vEF02_tTDB4M7-auWDN0ahZJW1ge6NmXpVAHV83Bfb_US2D2QYxoUKIkn98pdF9dC84DrjXEXw.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Source Serif 4" + }, + { + "src": "http://fonts.gstatic.com/s/sourceserif4/v7/vEF02_tTDB4M7-auWDN0ahZJW1ge6NmXpVAHV83Bfb_US2D2QYxoUKIkn98pmFhdC84DrjXEXw.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Source Serif 4" + }, + { + "src": "http://fonts.gstatic.com/s/sourceserif4/v7/vEF02_tTDB4M7-auWDN0ahZJW1ge6NmXpVAHV83Bfb_US2D2QYxoUKIkn98poVhdC84DrjXEXw.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Source Serif 4" + }, + { + "src": "http://fonts.gstatic.com/s/sourceserif4/v7/vEF02_tTDB4M7-auWDN0ahZJW1ge6NmXpVAHV83Bfb_US2D2QYxoUKIkn98pxlhdC84DrjXEXw.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Source Serif 4" + }, + { + "src": "http://fonts.gstatic.com/s/sourceserif4/v7/vEF02_tTDB4M7-auWDN0ahZJW1ge6NmXpVAHV83Bfb_US2D2QYxoUKIkn98p71hdC84DrjXEXw.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Source Serif 4" + } + ] + }, + { + "name": "Source Serif Pro", + "fontFamily": "Source Serif Pro, serif", + "slug": "source-serif-pro", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sourceserifpro/v15/neIXzD-0qpwxpaWvjeD0X88SAOeasbsfhSugxYUvZrI.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Source Serif Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourceserifpro/v15/neIVzD-0qpwxpaWvjeD0X88SAOeauXEGbSqqwacqdrKvbQ.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Source Serif Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourceserifpro/v15/neIXzD-0qpwxpaWvjeD0X88SAOeasd8chSugxYUvZrI.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Source Serif Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourceserifpro/v15/neIVzD-0qpwxpaWvjeD0X88SAOeauXEGCSmqwacqdrKvbQ.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Source Serif Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourceserifpro/v15/neIQzD-0qpwxpaWvjeD0X88SAOeaiXM0oSOL2Yw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Source Serif Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourceserifpro/v15/neIWzD-0qpwxpaWvjeD0X88SAOeauXE-pQGOyYw2fw.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Source Serif Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourceserifpro/v15/neIXzD-0qpwxpaWvjeD0X88SAOeasasahSugxYUvZrI.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Source Serif Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourceserifpro/v15/neIVzD-0qpwxpaWvjeD0X88SAOeauXEGfS-qwacqdrKvbQ.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Source Serif Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourceserifpro/v15/neIXzD-0qpwxpaWvjeD0X88SAOeasc8bhSugxYUvZrI.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Source Serif Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourceserifpro/v15/neIVzD-0qpwxpaWvjeD0X88SAOeauXEGGS6qwacqdrKvbQ.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Source Serif Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourceserifpro/v15/neIXzD-0qpwxpaWvjeD0X88SAOeasfcZhSugxYUvZrI.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Source Serif Pro" + }, + { + "src": "http://fonts.gstatic.com/s/sourceserifpro/v15/neIVzD-0qpwxpaWvjeD0X88SAOeauXEGISyqwacqdrKvbQ.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Source Serif Pro" + } + ] + }, + { + "name": "Space Grotesk", + "fontFamily": "Space Grotesk, sans-serif", + "slug": "space-grotesk", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/spacegrotesk/v15/V8mQoQDjQSkFtoMM3T6r8E7mF71Q-gOoraIAEj62UUsjNsFjTDJK.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Space Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/spacegrotesk/v15/V8mQoQDjQSkFtoMM3T6r8E7mF71Q-gOoraIAEj7oUUsjNsFjTDJK.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Space Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/spacegrotesk/v15/V8mQoQDjQSkFtoMM3T6r8E7mF71Q-gOoraIAEj7aUUsjNsFjTDJK.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Space Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/spacegrotesk/v15/V8mQoQDjQSkFtoMM3T6r8E7mF71Q-gOoraIAEj42VksjNsFjTDJK.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Space Grotesk" + }, + { + "src": "http://fonts.gstatic.com/s/spacegrotesk/v15/V8mQoQDjQSkFtoMM3T6r8E7mF71Q-gOoraIAEj4PVksjNsFjTDJK.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Space Grotesk" + } + ] + }, + { + "name": "Space Mono", + "fontFamily": "Space Mono, monospace", + "slug": "space-mono", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/spacemono/v12/i7dPIFZifjKcF5UAWdDRUEZ2RFq7AwU.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Space Mono" + }, + { + "src": "http://fonts.gstatic.com/s/spacemono/v12/i7dNIFZifjKcF5UAWdDRYER8QHi-EwWMbg.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Space Mono" + }, + { + "src": "http://fonts.gstatic.com/s/spacemono/v12/i7dMIFZifjKcF5UAWdDRaPpZYFKQHwyVd3U.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Space Mono" + }, + { + "src": "http://fonts.gstatic.com/s/spacemono/v12/i7dSIFZifjKcF5UAWdDRYERE_FeaGy6QZ3WfYg.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Space Mono" + } + ] + }, + { + "name": "Special Elite", + "fontFamily": "Special Elite, system-ui", + "slug": "special-elite", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/specialelite/v18/XLYgIZbkc4JPUL5CVArUVL0nhncESXFtUsM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Special Elite" + } + ] + }, + { + "name": "Spectral", + "fontFamily": "Spectral, serif", + "slug": "spectral", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/spectral/v13/rnCs-xNNww_2s0amA9v2s13GY_etWWIJ.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Spectral" + }, + { + "src": "http://fonts.gstatic.com/s/spectral/v13/rnCu-xNNww_2s0amA9M8qrXHafOPXHIJErY.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Spectral" + }, + { + "src": "http://fonts.gstatic.com/s/spectral/v13/rnCs-xNNww_2s0amA9uSsF3GY_etWWIJ.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Spectral" + }, + { + "src": "http://fonts.gstatic.com/s/spectral/v13/rnCu-xNNww_2s0amA9M8qtHEafOPXHIJErY.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Spectral" + }, + { + "src": "http://fonts.gstatic.com/s/spectral/v13/rnCr-xNNww_2s0amA-M-mHnOSOuk.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Spectral" + }, + { + "src": "http://fonts.gstatic.com/s/spectral/v13/rnCt-xNNww_2s0amA9M8kn3sTfukQHs.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Spectral" + }, + { + "src": "http://fonts.gstatic.com/s/spectral/v13/rnCs-xNNww_2s0amA9vKsV3GY_etWWIJ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Spectral" + }, + { + "src": "http://fonts.gstatic.com/s/spectral/v13/rnCu-xNNww_2s0amA9M8qonFafOPXHIJErY.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Spectral" + }, + { + "src": "http://fonts.gstatic.com/s/spectral/v13/rnCs-xNNww_2s0amA9vmtl3GY_etWWIJ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Spectral" + }, + { + "src": "http://fonts.gstatic.com/s/spectral/v13/rnCu-xNNww_2s0amA9M8qqXCafOPXHIJErY.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Spectral" + }, + { + "src": "http://fonts.gstatic.com/s/spectral/v13/rnCs-xNNww_2s0amA9uCt13GY_etWWIJ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Spectral" + }, + { + "src": "http://fonts.gstatic.com/s/spectral/v13/rnCu-xNNww_2s0amA9M8qsHDafOPXHIJErY.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Spectral" + }, + { + "src": "http://fonts.gstatic.com/s/spectral/v13/rnCs-xNNww_2s0amA9uetF3GY_etWWIJ.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Spectral" + }, + { + "src": "http://fonts.gstatic.com/s/spectral/v13/rnCu-xNNww_2s0amA9M8qt3AafOPXHIJErY.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Spectral" + } + ] + }, + { + "name": "Spectral SC", + "fontFamily": "Spectral SC, serif", + "slug": "spectral-sc", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/spectralsc/v12/Ktk0ALCRZonmalTgyPmRfs1qwkTXPYeVXJZB.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Spectral SC" + }, + { + "src": "http://fonts.gstatic.com/s/spectralsc/v12/Ktk2ALCRZonmalTgyPmRfsWg26zWN4O3WYZB_sU.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Spectral SC" + }, + { + "src": "http://fonts.gstatic.com/s/spectralsc/v12/Ktk0ALCRZonmalTgyPmRfs0OwUTXPYeVXJZB.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Spectral SC" + }, + { + "src": "http://fonts.gstatic.com/s/spectralsc/v12/Ktk2ALCRZonmalTgyPmRfsWg28jVN4O3WYZB_sU.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Spectral SC" + }, + { + "src": "http://fonts.gstatic.com/s/spectralsc/v12/KtkpALCRZonmalTgyPmRfvWi6WDfFpuc.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Spectral SC" + }, + { + "src": "http://fonts.gstatic.com/s/spectralsc/v12/KtkrALCRZonmalTgyPmRfsWg42T9E4ucRY8.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Spectral SC" + }, + { + "src": "http://fonts.gstatic.com/s/spectralsc/v12/Ktk0ALCRZonmalTgyPmRfs1WwETXPYeVXJZB.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Spectral SC" + }, + { + "src": "http://fonts.gstatic.com/s/spectralsc/v12/Ktk2ALCRZonmalTgyPmRfsWg25DUN4O3WYZB_sU.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Spectral SC" + }, + { + "src": "http://fonts.gstatic.com/s/spectralsc/v12/Ktk0ALCRZonmalTgyPmRfs16x0TXPYeVXJZB.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Spectral SC" + }, + { + "src": "http://fonts.gstatic.com/s/spectralsc/v12/Ktk2ALCRZonmalTgyPmRfsWg27zTN4O3WYZB_sU.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Spectral SC" + }, + { + "src": "http://fonts.gstatic.com/s/spectralsc/v12/Ktk0ALCRZonmalTgyPmRfs0exkTXPYeVXJZB.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Spectral SC" + }, + { + "src": "http://fonts.gstatic.com/s/spectralsc/v12/Ktk2ALCRZonmalTgyPmRfsWg29jSN4O3WYZB_sU.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Spectral SC" + }, + { + "src": "http://fonts.gstatic.com/s/spectralsc/v12/Ktk0ALCRZonmalTgyPmRfs0CxUTXPYeVXJZB.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Spectral SC" + }, + { + "src": "http://fonts.gstatic.com/s/spectralsc/v12/Ktk2ALCRZonmalTgyPmRfsWg28TRN4O3WYZB_sU.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Spectral SC" + } + ] + }, + { + "name": "Spicy Rice", + "fontFamily": "Spicy Rice, system-ui", + "slug": "spicy-rice", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/spicyrice/v21/uK_24rSEd-Uqwk4jY1RyGv-2WkowRcc.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Spicy Rice" + } + ] + }, + { + "name": "Spinnaker", + "fontFamily": "Spinnaker, sans-serif", + "slug": "spinnaker", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/spinnaker/v17/w8gYH2oyX-I0_rvR6Hmn3HwLqOqSBg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Spinnaker" + } + ] + }, + { + "name": "Spirax", + "fontFamily": "Spirax, system-ui", + "slug": "spirax", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/spirax/v21/buE3poKgYNLy0F3cXktt-Csn-Q.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Spirax" + } + ] + }, + { + "name": "Splash", + "fontFamily": "Splash, cursive", + "slug": "splash", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/splash/v2/KtksAL2RZoDkbU6hpPPGNdS6wg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Splash" + } + ] + }, + { + "name": "Spline Sans", + "fontFamily": "Spline Sans, sans-serif", + "slug": "spline-sans", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/splinesans/v9/_6_sED73Uf-2WfU2LzycEZousNzn1a1lKWRpZlnYEtvlUfE2kw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Spline Sans" + }, + { + "src": "http://fonts.gstatic.com/s/splinesans/v9/_6_sED73Uf-2WfU2LzycEZousNzn1a1lKWRpOFnYEtvlUfE2kw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Spline Sans" + }, + { + "src": "http://fonts.gstatic.com/s/splinesans/v9/_6_sED73Uf-2WfU2LzycEZousNzn1a1lKWRpClnYEtvlUfE2kw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Spline Sans" + }, + { + "src": "http://fonts.gstatic.com/s/splinesans/v9/_6_sED73Uf-2WfU2LzycEZousNzn1a1lKWRp5l7YEtvlUfE2kw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Spline Sans" + }, + { + "src": "http://fonts.gstatic.com/s/splinesans/v9/_6_sED73Uf-2WfU2LzycEZousNzn1a1lKWRp317YEtvlUfE2kw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Spline Sans" + } + ] + }, + { + "name": "Spline Sans Mono", + "fontFamily": "Spline Sans Mono, monospace", + "slug": "spline-sans-mono", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/splinesansmono/v8/R70MjzAei_CDNLfgZxrW6wrZOF2WdZ6xabUGSVtNuGA8MrtVy4d4dGb1.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Spline Sans Mono" + }, + { + "src": "http://fonts.gstatic.com/s/splinesansmono/v8/R70MjzAei_CDNLfgZxrW6wrZOF2WdZ6xabUGSVtNuGBiMrtVy4d4dGb1.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Spline Sans Mono" + }, + { + "src": "http://fonts.gstatic.com/s/splinesansmono/v8/R70MjzAei_CDNLfgZxrW6wrZOF2WdZ6xabUGSVtNuGBQMrtVy4d4dGb1.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Spline Sans Mono" + }, + { + "src": "http://fonts.gstatic.com/s/splinesansmono/v8/R70MjzAei_CDNLfgZxrW6wrZOF2WdZ6xabUGSVtNuGC8NbtVy4d4dGb1.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Spline Sans Mono" + }, + { + "src": "http://fonts.gstatic.com/s/splinesansmono/v8/R70MjzAei_CDNLfgZxrW6wrZOF2WdZ6xabUGSVtNuGCFNbtVy4d4dGb1.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Spline Sans Mono" + }, + { + "src": "http://fonts.gstatic.com/s/splinesansmono/v8/R70yjzAei_CDNLfgZxrW6wrZOF2WX5eDlm1vIsHjv3WqcQ0WwYNacXb12MM.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Spline Sans Mono" + }, + { + "src": "http://fonts.gstatic.com/s/splinesansmono/v8/R70yjzAei_CDNLfgZxrW6wrZOF2WX5eDlm1vIsHjv3WqcVMWwYNacXb12MM.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Spline Sans Mono" + }, + { + "src": "http://fonts.gstatic.com/s/splinesansmono/v8/R70yjzAei_CDNLfgZxrW6wrZOF2WX5eDlm1vIsHjv3WqcWEWwYNacXb12MM.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Spline Sans Mono" + }, + { + "src": "http://fonts.gstatic.com/s/splinesansmono/v8/R70yjzAei_CDNLfgZxrW6wrZOF2WX5eDlm1vIsHjv3WqcY0RwYNacXb12MM.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Spline Sans Mono" + }, + { + "src": "http://fonts.gstatic.com/s/splinesansmono/v8/R70yjzAei_CDNLfgZxrW6wrZOF2WX5eDlm1vIsHjv3WqcbQRwYNacXb12MM.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Spline Sans Mono" + } + ] + }, + { + "name": "Squada One", + "fontFamily": "Squada One, system-ui", + "slug": "squada-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/squadaone/v14/BCasqZ8XsOrx4mcOk6MtWaA8WDBkHgs.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Squada One" + } + ] + }, + { + "name": "Square Peg", + "fontFamily": "Square Peg, cursive", + "slug": "square-peg", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/squarepeg/v2/y83eW48Nzw6ZlUHc-phrBDHrHHfrFPE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Square Peg" + } + ] + }, + { + "name": "Sree Krushnadevaraya", + "fontFamily": "Sree Krushnadevaraya, serif", + "slug": "sree-krushnadevaraya", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sreekrushnadevaraya/v21/R70FjzQeifmPepmyQQjQ9kvwMkWYPfTA_EWb2FhQuXir.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sree Krushnadevaraya" + } + ] + }, + { + "name": "Sriracha", + "fontFamily": "Sriracha, cursive", + "slug": "sriracha", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sriracha/v11/0nkrC9D4IuYBgWcI9ObYRQDioeb0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sriracha" + } + ] + }, + { + "name": "Srisakdi", + "fontFamily": "Srisakdi, system-ui", + "slug": "srisakdi", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/srisakdi/v16/yMJRMIlvdpDbkB0A-jq8fSx5i814.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Srisakdi" + }, + { + "src": "http://fonts.gstatic.com/s/srisakdi/v16/yMJWMIlvdpDbkB0A-gIAUghxoNFxW0Hz.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Srisakdi" + } + ] + }, + { + "name": "Staatliches", + "fontFamily": "Staatliches, system-ui", + "slug": "staatliches", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/staatliches/v11/HI_OiY8KO6hCsQSoAPmtMbectJG9O9PS.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Staatliches" + } + ] + }, + { + "name": "Stalemate", + "fontFamily": "Stalemate, cursive", + "slug": "stalemate", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/stalemate/v20/taiIGmZ_EJq97-UfkZRpuqSs8ZQpaQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Stalemate" + } + ] + }, + { + "name": "Stalinist One", + "fontFamily": "Stalinist One, system-ui", + "slug": "stalinist-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/stalinistone/v54/MQpS-WezM9W4Dd7D3B7I-UT7eZ-UPyacPbo.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Stalinist One" + } + ] + }, + { + "name": "Stardos Stencil", + "fontFamily": "Stardos Stencil, system-ui", + "slug": "stardos-stencil", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/stardosstencil/v15/X7n94bcuGPC8hrvEOHXOgaKCc2TR71R3tiSx0g.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Stardos Stencil" + }, + { + "src": "http://fonts.gstatic.com/s/stardosstencil/v15/X7n44bcuGPC8hrvEOHXOgaKCc2TpU3tTvg-t29HSHw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Stardos Stencil" + } + ] + }, + { + "name": "Stick", + "fontFamily": "Stick, sans-serif", + "slug": "stick", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/stick/v15/Qw3TZQpMCyTtJSvfvPVDMPoF.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Stick" + } + ] + }, + { + "name": "Stick No Bills", + "fontFamily": "Stick No Bills, sans-serif", + "slug": "stick-no-bills", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sticknobills/v9/bWts7ffXZwHuAa9Uld-oEK4QKlxj9f9t_7uEmjcVP8Q7KriwKhcTKA.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Stick No Bills" + }, + { + "src": "http://fonts.gstatic.com/s/sticknobills/v9/bWts7ffXZwHuAa9Uld-oEK4QKlxj9f9t_7uEmjcV4cQ7KriwKhcTKA.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Stick No Bills" + }, + { + "src": "http://fonts.gstatic.com/s/sticknobills/v9/bWts7ffXZwHuAa9Uld-oEK4QKlxj9f9t_7uEmjcVv8Q7KriwKhcTKA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Stick No Bills" + }, + { + "src": "http://fonts.gstatic.com/s/sticknobills/v9/bWts7ffXZwHuAa9Uld-oEK4QKlxj9f9t_7uEmjcVjcQ7KriwKhcTKA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Stick No Bills" + }, + { + "src": "http://fonts.gstatic.com/s/sticknobills/v9/bWts7ffXZwHuAa9Uld-oEK4QKlxj9f9t_7uEmjcVYcM7KriwKhcTKA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Stick No Bills" + }, + { + "src": "http://fonts.gstatic.com/s/sticknobills/v9/bWts7ffXZwHuAa9Uld-oEK4QKlxj9f9t_7uEmjcVWMM7KriwKhcTKA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Stick No Bills" + }, + { + "src": "http://fonts.gstatic.com/s/sticknobills/v9/bWts7ffXZwHuAa9Uld-oEK4QKlxj9f9t_7uEmjcVP8M7KriwKhcTKA.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Stick No Bills" + } + ] + }, + { + "name": "Stint Ultra Condensed", + "fontFamily": "Stint Ultra Condensed, system-ui", + "slug": "stint-ultra-condensed", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/stintultracondensed/v21/-W_gXIrsVjjeyEnPC45qD2NoFPtBE0xCh2A-qhUO2cNvdg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Stint Ultra Condensed" + } + ] + }, + { + "name": "Stint Ultra Expanded", + "fontFamily": "Stint Ultra Expanded, system-ui", + "slug": "stint-ultra-expanded", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/stintultraexpanded/v20/CSRg4yNNh-GbW3o3JkwoDcdvMKMf0oBAd0qoATQkWwam.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Stint Ultra Expanded" + } + ] + }, + { + "name": "Stoke", + "fontFamily": "Stoke, serif", + "slug": "stoke", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/stoke/v22/z7NXdRb7aTMfKNvFVgxC_pjcTeWU.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Stoke" + }, + { + "src": "http://fonts.gstatic.com/s/stoke/v22/z7NadRb7aTMfKONpfihK1YTV.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Stoke" + } + ] + }, + { + "name": "Strait", + "fontFamily": "Strait, sans-serif", + "slug": "strait", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/strait/v15/DtViJxy6WaEr1LZzeDhtkl0U7w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Strait" + } + ] + }, + { + "name": "Style Script", + "fontFamily": "Style Script, cursive", + "slug": "style-script", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/stylescript/v8/vm8xdRX3SV7Z0aPa88xzW5npeFT76NZnMw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Style Script" + } + ] + }, + { + "name": "Stylish", + "fontFamily": "Stylish, sans-serif", + "slug": "stylish", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/stylish/v20/m8JSjfhPYriQkk7-fo35dLxEdmo.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Stylish" + } + ] + }, + { + "name": "Sue Ellen Francisco", + "fontFamily": "Sue Ellen Francisco, cursive", + "slug": "sue-ellen-francisco", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sueellenfrancisco/v16/wXK3E20CsoJ9j1DDkjHcQ5ZL8xRaxru9ropF2lqk9H4.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sue Ellen Francisco" + } + ] + }, + { + "name": "Suez One", + "fontFamily": "Suez One, serif", + "slug": "suez-one", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/suezone/v11/taiJGmd_EZ6rqscQgNFJkIqg-I0w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Suez One" + } + ] + }, + { + "name": "Sulphur Point", + "fontFamily": "Sulphur Point, sans-serif", + "slug": "sulphur-point", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sulphurpoint/v15/RLpkK5vv8KaycDcazWFPBj2afVU6n6kFUHPIFaU.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Sulphur Point" + }, + { + "src": "http://fonts.gstatic.com/s/sulphurpoint/v15/RLp5K5vv8KaycDcazWFPBj2aRfkSu6EuTHo.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sulphur Point" + }, + { + "src": "http://fonts.gstatic.com/s/sulphurpoint/v15/RLpkK5vv8KaycDcazWFPBj2afUU9n6kFUHPIFaU.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Sulphur Point" + } + ] + }, + { + "name": "Sumana", + "fontFamily": "Sumana, serif", + "slug": "sumana", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sumana/v10/4UaDrE5TqRBjGj-G8Bji76zR4w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sumana" + }, + { + "src": "http://fonts.gstatic.com/s/sumana/v10/4UaArE5TqRBjGj--TDfG54fN6ppsKg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Sumana" + } + ] + }, + { + "name": "Sunflower", + "fontFamily": "Sunflower, sans-serif", + "slug": "sunflower", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sunflower/v14/RWmPoKeF8fUjqIj7Vc-06MfiqYsGBGBzCw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Sunflower" + }, + { + "src": "http://fonts.gstatic.com/s/sunflower/v14/RWmPoKeF8fUjqIj7Vc-0sMbiqYsGBGBzCw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Sunflower" + }, + { + "src": "http://fonts.gstatic.com/s/sunflower/v14/RWmPoKeF8fUjqIj7Vc-0-MDiqYsGBGBzCw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Sunflower" + } + ] + }, + { + "name": "Sunshiney", + "fontFamily": "Sunshiney, cursive", + "slug": "sunshiney", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sunshiney/v24/LDIwapGTLBwsS-wT4vcgE8moUePWkg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sunshiney" + } + ] + }, + { + "name": "Supermercado One", + "fontFamily": "Supermercado One, system-ui", + "slug": "supermercado-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/supermercadoone/v22/OpNXnpQWg8jc_xps_Gi14kVVEXOn60b3MClBRTs.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Supermercado One" + } + ] + }, + { + "name": "Sura", + "fontFamily": "Sura, serif", + "slug": "sura", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/sura/v16/SZc23FL5PbyzFf5UWzXtjUM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Sura" + }, + { + "src": "http://fonts.gstatic.com/s/sura/v16/SZc53FL5PbyzLUJ7fz3GkUrS8DI.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Sura" + } + ] + }, + { + "name": "Suranna", + "fontFamily": "Suranna, serif", + "slug": "suranna", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/suranna/v13/gokuH6ztGkFjWe58tBRZT2KmgP0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Suranna" + } + ] + }, + { + "name": "Suravaram", + "fontFamily": "Suravaram, serif", + "slug": "suravaram", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/suravaram/v21/_gP61R_usiY7SCym4xIAi261Qv9roQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Suravaram" + } + ] + }, + { + "name": "Suwannaphum", + "fontFamily": "Suwannaphum, serif", + "slug": "suwannaphum", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/suwannaphum/v29/jAnAgHV7GtDvc8jbe8hXXL3B9cSWXx2VZmk.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Suwannaphum" + }, + { + "src": "http://fonts.gstatic.com/s/suwannaphum/v29/jAnfgHV7GtDvc8jbe8hXXL0J1-S8cRGcf3Ai.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Suwannaphum" + }, + { + "src": "http://fonts.gstatic.com/s/suwannaphum/v29/jAnCgHV7GtDvc8jbe8hXXIWl_8C0Wg2V.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Suwannaphum" + }, + { + "src": "http://fonts.gstatic.com/s/suwannaphum/v29/jAnfgHV7GtDvc8jbe8hXXL0Z0OS8cRGcf3Ai.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Suwannaphum" + }, + { + "src": "http://fonts.gstatic.com/s/suwannaphum/v29/jAnfgHV7GtDvc8jbe8hXXL0h0uS8cRGcf3Ai.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Suwannaphum" + } + ] + }, + { + "name": "Swanky and Moo Moo", + "fontFamily": "Swanky and Moo Moo, cursive", + "slug": "swanky-and-moo-moo", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/swankyandmoomoo/v22/flUlRrKz24IuWVI_WJYTYcqbEsMUZ3kUtbPkR64SYQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Swanky and Moo Moo" + } + ] + }, + { + "name": "Syncopate", + "fontFamily": "Syncopate, sans-serif", + "slug": "syncopate", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/syncopate/v19/pe0sMIuPIYBCpEV5eFdyAv2-C99ycg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Syncopate" + }, + { + "src": "http://fonts.gstatic.com/s/syncopate/v19/pe0pMIuPIYBCpEV5eFdKvtKaA_Rue1UwVg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Syncopate" + } + ] + }, + { + "name": "Syne", + "fontFamily": "Syne, sans-serif", + "slug": "syne", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/syne/v16/8vIS7w4qzmVxsWxjBZRjr0FKM_04uT6kR47NCV5Z.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Syne" + }, + { + "src": "http://fonts.gstatic.com/s/syne/v16/8vIS7w4qzmVxsWxjBZRjr0FKM_0KuT6kR47NCV5Z.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Syne" + }, + { + "src": "http://fonts.gstatic.com/s/syne/v16/8vIS7w4qzmVxsWxjBZRjr0FKM_3mvj6kR47NCV5Z.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Syne" + }, + { + "src": "http://fonts.gstatic.com/s/syne/v16/8vIS7w4qzmVxsWxjBZRjr0FKM_3fvj6kR47NCV5Z.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Syne" + }, + { + "src": "http://fonts.gstatic.com/s/syne/v16/8vIS7w4qzmVxsWxjBZRjr0FKM_24vj6kR47NCV5Z.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Syne" + } + ] + }, + { + "name": "Syne Mono", + "fontFamily": "Syne Mono, monospace", + "slug": "syne-mono", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/synemono/v15/K2FzfZNHj_FHBmRbFvHzIqCkDyvqZA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Syne Mono" + } + ] + }, + { + "name": "Syne Tactile", + "fontFamily": "Syne Tactile, system-ui", + "slug": "syne-tactile", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/synetactile/v15/11hGGpna2UTQKjMCVzjAPMKh3ysdjvKU8Q.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Syne Tactile" + } + ] + }, + { + "name": "Tai Heritage Pro", + "fontFamily": "Tai Heritage Pro, serif", + "slug": "tai-heritage-pro", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/taiheritagepro/v6/sZlfdQid-zgaNiNIYcUzJMU3IYyNoHxSENxuLuE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Tai Heritage Pro" + }, + { + "src": "http://fonts.gstatic.com/s/taiheritagepro/v6/sZlYdQid-zgaNiNIYcUzJMU3IYyNmMB9NNRFMuhjCXY.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Tai Heritage Pro" + } + ] + }, + { + "name": "Tajawal", + "fontFamily": "Tajawal, sans-serif", + "slug": "tajawal", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/tajawal/v9/Iurf6YBj_oCad4k1l_6gLrZjiLlJ-G0.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Tajawal" + }, + { + "src": "http://fonts.gstatic.com/s/tajawal/v9/Iurf6YBj_oCad4k1l5qjLrZjiLlJ-G0.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Tajawal" + }, + { + "src": "http://fonts.gstatic.com/s/tajawal/v9/Iura6YBj_oCad4k1rzaLCr5IlLA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Tajawal" + }, + { + "src": "http://fonts.gstatic.com/s/tajawal/v9/Iurf6YBj_oCad4k1l8KiLrZjiLlJ-G0.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Tajawal" + }, + { + "src": "http://fonts.gstatic.com/s/tajawal/v9/Iurf6YBj_oCad4k1l4qkLrZjiLlJ-G0.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Tajawal" + }, + { + "src": "http://fonts.gstatic.com/s/tajawal/v9/Iurf6YBj_oCad4k1l5anLrZjiLlJ-G0.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Tajawal" + }, + { + "src": "http://fonts.gstatic.com/s/tajawal/v9/Iurf6YBj_oCad4k1l7KmLrZjiLlJ-G0.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Tajawal" + } + ] + }, + { + "name": "Tangerine", + "fontFamily": "Tangerine, cursive", + "slug": "tangerine", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/tangerine/v17/IurY6Y5j_oScZZow4VOBDpxNhLBQ4Q.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Tangerine" + }, + { + "src": "http://fonts.gstatic.com/s/tangerine/v17/Iurd6Y5j_oScZZow4VO5srNpjJtM6G0t9w.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Tangerine" + } + ] + }, + { + "name": "Tapestry", + "fontFamily": "Tapestry, cursive", + "slug": "tapestry", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/tapestry/v2/SlGTmQecrosEYXhaGBIkqnB6aSQU.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Tapestry" + } + ] + }, + { + "name": "Taprom", + "fontFamily": "Taprom, system-ui", + "slug": "taprom", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/taprom/v27/UcCn3F82JHycULbFQyk3-0kvHg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Taprom" + } + ] + }, + { + "name": "Tauri", + "fontFamily": "Tauri, sans-serif", + "slug": "tauri", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/tauri/v16/TwMA-IISS0AM3IpVWHU_TBqO.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Tauri" + } + ] + }, + { + "name": "Taviraj", + "fontFamily": "Taviraj, serif", + "slug": "taviraj", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/taviraj/v11/ahcbv8Cj3ylylTXzRIorV8N1jU2gog.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Taviraj" + }, + { + "src": "http://fonts.gstatic.com/s/taviraj/v11/ahcdv8Cj3ylylTXzTOwTM8lxr0iwolLl.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Taviraj" + }, + { + "src": "http://fonts.gstatic.com/s/taviraj/v11/ahccv8Cj3ylylTXzRCYKd-lbgUS5u0s.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Taviraj" + }, + { + "src": "http://fonts.gstatic.com/s/taviraj/v11/ahcev8Cj3ylylTXzTOwTn-hRhWa8q0v8ag.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Taviraj" + }, + { + "src": "http://fonts.gstatic.com/s/taviraj/v11/ahccv8Cj3ylylTXzREIJd-lbgUS5u0s.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Taviraj" + }, + { + "src": "http://fonts.gstatic.com/s/taviraj/v11/ahcev8Cj3ylylTXzTOwT--tRhWa8q0v8ag.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Taviraj" + }, + { + "src": "http://fonts.gstatic.com/s/taviraj/v11/ahcZv8Cj3ylylTXzfO4hU-FwnU0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Taviraj" + }, + { + "src": "http://fonts.gstatic.com/s/taviraj/v11/ahcbv8Cj3ylylTXzTOwrV8N1jU2gog.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Taviraj" + }, + { + "src": "http://fonts.gstatic.com/s/taviraj/v11/ahccv8Cj3ylylTXzRBoId-lbgUS5u0s.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Taviraj" + }, + { + "src": "http://fonts.gstatic.com/s/taviraj/v11/ahcev8Cj3ylylTXzTOwTo-pRhWa8q0v8ag.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Taviraj" + }, + { + "src": "http://fonts.gstatic.com/s/taviraj/v11/ahccv8Cj3ylylTXzRDYPd-lbgUS5u0s.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Taviraj" + }, + { + "src": "http://fonts.gstatic.com/s/taviraj/v11/ahcev8Cj3ylylTXzTOwTj-1RhWa8q0v8ag.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Taviraj" + }, + { + "src": "http://fonts.gstatic.com/s/taviraj/v11/ahccv8Cj3ylylTXzRFIOd-lbgUS5u0s.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Taviraj" + }, + { + "src": "http://fonts.gstatic.com/s/taviraj/v11/ahcev8Cj3ylylTXzTOwT6-xRhWa8q0v8ag.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Taviraj" + }, + { + "src": "http://fonts.gstatic.com/s/taviraj/v11/ahccv8Cj3ylylTXzRE4Nd-lbgUS5u0s.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Taviraj" + }, + { + "src": "http://fonts.gstatic.com/s/taviraj/v11/ahcev8Cj3ylylTXzTOwT9-9RhWa8q0v8ag.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Taviraj" + }, + { + "src": "http://fonts.gstatic.com/s/taviraj/v11/ahccv8Cj3ylylTXzRGoMd-lbgUS5u0s.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Taviraj" + }, + { + "src": "http://fonts.gstatic.com/s/taviraj/v11/ahcev8Cj3ylylTXzTOwT0-5RhWa8q0v8ag.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Taviraj" + } + ] + }, + { + "name": "Teko", + "fontFamily": "Teko, sans-serif", + "slug": "teko", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/teko/v16/LYjCdG7kmE0gdQhfgCNqqVIuTN4.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Teko" + }, + { + "src": "http://fonts.gstatic.com/s/teko/v16/LYjNdG7kmE0gTaR3pCtBtVs.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Teko" + }, + { + "src": "http://fonts.gstatic.com/s/teko/v16/LYjCdG7kmE0gdVBegCNqqVIuTN4.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Teko" + }, + { + "src": "http://fonts.gstatic.com/s/teko/v16/LYjCdG7kmE0gdXxZgCNqqVIuTN4.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Teko" + }, + { + "src": "http://fonts.gstatic.com/s/teko/v16/LYjCdG7kmE0gdRhYgCNqqVIuTN4.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Teko" + } + ] + }, + { + "name": "Telex", + "fontFamily": "Telex, sans-serif", + "slug": "telex", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/telex/v17/ieVw2Y1fKWmIO9fTB1piKFIf.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Telex" + } + ] + }, + { + "name": "Tenali Ramakrishna", + "fontFamily": "Tenali Ramakrishna, sans-serif", + "slug": "tenali-ramakrishna", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/tenaliramakrishna/v12/raxgHj6Yt9gAN3LLKs0BZVMo8jmwn1-8KJXqUFFvtA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Tenali Ramakrishna" + } + ] + }, + { + "name": "Tenor Sans", + "fontFamily": "Tenor Sans, sans-serif", + "slug": "tenor-sans", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/tenorsans/v17/bx6ANxqUneKx06UkIXISr3JyC22IyqI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Tenor Sans" + } + ] + }, + { + "name": "Text Me One", + "fontFamily": "Text Me One, sans-serif", + "slug": "text-me-one", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/textmeone/v21/i7dOIFdlayuLUvgoFvHQFWZcalayGhyV.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Text Me One" + } + ] + }, + { + "name": "Texturina", + "fontFamily": "Texturina, serif", + "slug": "texturina", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/texturina/v22/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2eYG_Ug25riW1OD.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Texturina" + }, + { + "src": "http://fonts.gstatic.com/s/texturina/v22/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2cYGvUg25riW1OD.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Texturina" + }, + { + "src": "http://fonts.gstatic.com/s/texturina/v22/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2fGGvUg25riW1OD.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Texturina" + }, + { + "src": "http://fonts.gstatic.com/s/texturina/v22/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2eYGvUg25riW1OD.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Texturina" + }, + { + "src": "http://fonts.gstatic.com/s/texturina/v22/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2eqGvUg25riW1OD.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Texturina" + }, + { + "src": "http://fonts.gstatic.com/s/texturina/v22/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2dGHfUg25riW1OD.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Texturina" + }, + { + "src": "http://fonts.gstatic.com/s/texturina/v22/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2d_HfUg25riW1OD.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Texturina" + }, + { + "src": "http://fonts.gstatic.com/s/texturina/v22/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2cYHfUg25riW1OD.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Texturina" + }, + { + "src": "http://fonts.gstatic.com/s/texturina/v22/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2cxHfUg25riW1OD.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Texturina" + }, + { + "src": "http://fonts.gstatic.com/s/texturina/v22/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWR1i0Z7AXkODN94.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Texturina" + }, + { + "src": "http://fonts.gstatic.com/s/texturina/v22/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWZ1j0Z7AXkODN94.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Texturina" + }, + { + "src": "http://fonts.gstatic.com/s/texturina/v22/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWUNj0Z7AXkODN94.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Texturina" + }, + { + "src": "http://fonts.gstatic.com/s/texturina/v22/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWR1j0Z7AXkODN94.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Texturina" + }, + { + "src": "http://fonts.gstatic.com/s/texturina/v22/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWS9j0Z7AXkODN94.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Texturina" + }, + { + "src": "http://fonts.gstatic.com/s/texturina/v22/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWcNk0Z7AXkODN94.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Texturina" + }, + { + "src": "http://fonts.gstatic.com/s/texturina/v22/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWfpk0Z7AXkODN94.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Texturina" + }, + { + "src": "http://fonts.gstatic.com/s/texturina/v22/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWZ1k0Z7AXkODN94.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Texturina" + }, + { + "src": "http://fonts.gstatic.com/s/texturina/v22/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWbRk0Z7AXkODN94.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Texturina" + } + ] + }, + { + "name": "Thasadith", + "fontFamily": "Thasadith, sans-serif", + "slug": "thasadith", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/thasadith/v9/mtG44_1TIqPYrd_f5R1YsEkU0CWuFw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Thasadith" + }, + { + "src": "http://fonts.gstatic.com/s/thasadith/v9/mtG-4_1TIqPYrd_f5R1oskMQ8iC-F1ZE.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Thasadith" + }, + { + "src": "http://fonts.gstatic.com/s/thasadith/v9/mtG94_1TIqPYrd_f5R1gDGYw2A6yHk9d8w.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Thasadith" + }, + { + "src": "http://fonts.gstatic.com/s/thasadith/v9/mtGj4_1TIqPYrd_f5R1osnus3QS2PEpN8zxA.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Thasadith" + } + ] + }, + { + "name": "The Girl Next Door", + "fontFamily": "The Girl Next Door, cursive", + "slug": "the-girl-next-door", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/thegirlnextdoor/v18/pe0zMJCIMIsBjFxqYBIcZ6_OI5oFHCYIV7t7w6bE2A.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "The Girl Next Door" + } + ] + }, + { + "name": "The Nautigal", + "fontFamily": "The Nautigal, cursive", + "slug": "the-nautigal", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/thenautigal/v3/VdGZAZ8ZH51Lvng9fQV2bfKr5wVk09Se5Q.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "The Nautigal" + }, + { + "src": "http://fonts.gstatic.com/s/thenautigal/v3/VdGGAZ8ZH51Lvng9fQV2bfKTWypA2_-C7LoS7g.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "The Nautigal" + } + ] + }, + { + "name": "Tienne", + "fontFamily": "Tienne, serif", + "slug": "tienne", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/tienne/v20/AYCKpX7pe9YCRP0LkEPHSFNyxw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Tienne" + }, + { + "src": "http://fonts.gstatic.com/s/tienne/v20/AYCJpX7pe9YCRP0zLGzjQHhuzvef5Q.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Tienne" + }, + { + "src": "http://fonts.gstatic.com/s/tienne/v20/AYCJpX7pe9YCRP0zFG7jQHhuzvef5Q.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Tienne" + } + ] + }, + { + "name": "Tillana", + "fontFamily": "Tillana, cursive", + "slug": "tillana", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/tillana/v11/VuJxdNvf35P4qJ1OeKbXOIFneRo.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Tillana" + }, + { + "src": "http://fonts.gstatic.com/s/tillana/v11/VuJ0dNvf35P4qJ1OQFL-HIlMZRNcp0o.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Tillana" + }, + { + "src": "http://fonts.gstatic.com/s/tillana/v11/VuJ0dNvf35P4qJ1OQH75HIlMZRNcp0o.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Tillana" + }, + { + "src": "http://fonts.gstatic.com/s/tillana/v11/VuJ0dNvf35P4qJ1OQBr4HIlMZRNcp0o.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Tillana" + }, + { + "src": "http://fonts.gstatic.com/s/tillana/v11/VuJ0dNvf35P4qJ1OQAb7HIlMZRNcp0o.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Tillana" + } + ] + }, + { + "name": "Tilt Neon", + "fontFamily": "Tilt Neon, system-ui", + "slug": "tilt-neon", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/tiltneon/v8/E21L_d7gguXdwD9LEFY2WCeElCNtd-eBqpHp1TzrkJSmwpj5ndxquXK9WualJ9DS.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Tilt Neon" + } + ] + }, + { + "name": "Tilt Prism", + "fontFamily": "Tilt Prism, system-ui", + "slug": "tilt-prism", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/tiltprism/v9/5h11iZgyPHoZ3YikNzWGfWey2dCAZXT-bH9V4VGn-FJ7tLI25oc_rIbwoTSrn86NKw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Tilt Prism" + } + ] + }, + { + "name": "Tilt Warp", + "fontFamily": "Tilt Warp, system-ui", + "slug": "tilt-warp", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/tiltwarp/v10/AlZc_zVDs5XpmO7yn3w7flUoytXJp3z29uEwmEMLEJljLXvT8UJSZTBxAVfMGOPb.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Tilt Warp" + } + ] + }, + { + "name": "Timmana", + "fontFamily": "Timmana, sans-serif", + "slug": "timmana", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/timmana/v12/6xKvdShfL9yK-rvpCmvbKHwJUOM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Timmana" + } + ] + }, + { + "name": "Tinos", + "fontFamily": "Tinos, serif", + "slug": "tinos", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/tinos/v24/buE4poGnedXvwgX8dGVh8TI-.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Tinos" + }, + { + "src": "http://fonts.gstatic.com/s/tinos/v24/buE2poGnedXvwjX-fmFD9CI-4NU.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Tinos" + }, + { + "src": "http://fonts.gstatic.com/s/tinos/v24/buE1poGnedXvwj1AW0Fp2i43-cxL.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Tinos" + }, + { + "src": "http://fonts.gstatic.com/s/tinos/v24/buEzpoGnedXvwjX-Rt1s0CoV_NxLeiw.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Tinos" + } + ] + }, + { + "name": "Tiro Bangla", + "fontFamily": "Tiro Bangla, serif", + "slug": "tiro-bangla", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/tirobangla/v6/IFSgHe1Tm95E3O8b5i2V8MG9-UPeuz4i.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Tiro Bangla" + }, + { + "src": "http://fonts.gstatic.com/s/tirobangla/v6/IFSiHe1Tm95E3O8b5i2V8PG_80f8vi4imBM.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Tiro Bangla" + } + ] + }, + { + "name": "Tiro Devanagari Hindi", + "fontFamily": "Tiro Devanagari Hindi, serif", + "slug": "tiro-devanagari-hindi", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/tirodevanagarihindi/v5/55xyezN7P8T4e0_CfIJrwdodg9HoYw0i-M9fSOkOfG0Y3A.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Tiro Devanagari Hindi" + }, + { + "src": "http://fonts.gstatic.com/s/tirodevanagarihindi/v5/55x8ezN7P8T4e0_CfIJrwdodg9HoYw0i-M9vSuMKXmgI3F_o.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Tiro Devanagari Hindi" + } + ] + }, + { + "name": "Tiro Devanagari Marathi", + "fontFamily": "Tiro Devanagari Marathi, serif", + "slug": "tiro-devanagari-marathi", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/tirodevanagarimarathi/v5/fC1xPZBSZHrRhS3rd4M0MAPNJUHl4znXCxAkotDrDJYM2lAZ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Tiro Devanagari Marathi" + }, + { + "src": "http://fonts.gstatic.com/s/tirodevanagarimarathi/v5/fC1zPZBSZHrRhS3rd4M0MAPNJUHl4znXCxAkouDpBpIu30AZbUY.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Tiro Devanagari Marathi" + } + ] + }, + { + "name": "Tiro Devanagari Sanskrit", + "fontFamily": "Tiro Devanagari Sanskrit, serif", + "slug": "tiro-devanagari-sanskrit", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/tirodevanagarisanskrit/v5/MCoAzBbr09vVUgVBM8FWu_yZdZkhkg-I0nUlb59pEoEqgtOh0w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Tiro Devanagari Sanskrit" + }, + { + "src": "http://fonts.gstatic.com/s/tirodevanagarisanskrit/v5/MCoGzBbr09vVUgVBM8FWu_yZdZkhkg-I0nUlb59ZEIsuoNax06MM.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Tiro Devanagari Sanskrit" + } + ] + }, + { + "name": "Tiro Gurmukhi", + "fontFamily": "Tiro Gurmukhi, serif", + "slug": "tiro-gurmukhi", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/tirogurmukhi/v6/x3dmckXSYq-Uqjc048JUF7Jvly7HAQsyA2Y.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Tiro Gurmukhi" + }, + { + "src": "http://fonts.gstatic.com/s/tirogurmukhi/v6/x3d4ckXSYq-Uqjc048JUF7JvpyzNBSk3E2YljQ.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Tiro Gurmukhi" + } + ] + }, + { + "name": "Tiro Kannada", + "fontFamily": "Tiro Kannada, serif", + "slug": "tiro-kannada", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/tirokannada/v6/CSR44ztKmvqaDxEDJFY7CIYKSPl6tOU9Eg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Tiro Kannada" + }, + { + "src": "http://fonts.gstatic.com/s/tirokannada/v6/CSRm4ztKmvqaDxEDJFY7CIY6SvN-luAtEnKp.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Tiro Kannada" + } + ] + }, + { + "name": "Tiro Tamil", + "fontFamily": "Tiro Tamil, serif", + "slug": "tiro-tamil", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/tirotamil/v10/m8JXjfVIf7OT22n3M-S_ULRvamODxdI.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Tiro Tamil" + }, + { + "src": "http://fonts.gstatic.com/s/tirotamil/v10/m8JVjfVIf7OT22n3M-S_YLZlbkGG1dKEDw.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Tiro Tamil" + } + ] + }, + { + "name": "Tiro Telugu", + "fontFamily": "Tiro Telugu, serif", + "slug": "tiro-telugu", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/tirotelugu/v7/aFTQ7PxlZWk2EPiSymjXdKSNQqn0X0BO.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Tiro Telugu" + }, + { + "src": "http://fonts.gstatic.com/s/tirotelugu/v7/aFTS7PxlZWk2EPiSymjXdJSPSK3WWlBOoas.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Tiro Telugu" + } + ] + }, + { + "name": "Titan One", + "fontFamily": "Titan One, system-ui", + "slug": "titan-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/titanone/v13/mFTzWbsGxbbS_J5cQcjykzIn2Etikg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Titan One" + } + ] + }, + { + "name": "Titillium Web", + "fontFamily": "Titillium Web, sans-serif", + "slug": "titillium-web", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/titilliumweb/v15/NaPDcZTIAOhVxoMyOr9n_E7ffAzHKIx5YrSYqWM.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Titillium Web" + }, + { + "src": "http://fonts.gstatic.com/s/titilliumweb/v15/NaPFcZTIAOhVxoMyOr9n_E7fdMbewI1zZpaduWMmxA.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Titillium Web" + }, + { + "src": "http://fonts.gstatic.com/s/titilliumweb/v15/NaPDcZTIAOhVxoMyOr9n_E7ffGjEKIx5YrSYqWM.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Titillium Web" + }, + { + "src": "http://fonts.gstatic.com/s/titilliumweb/v15/NaPFcZTIAOhVxoMyOr9n_E7fdMbepI5zZpaduWMmxA.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Titillium Web" + }, + { + "src": "http://fonts.gstatic.com/s/titilliumweb/v15/NaPecZTIAOhVxoMyOr9n_E7fRMTsDIRSfr0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Titillium Web" + }, + { + "src": "http://fonts.gstatic.com/s/titilliumweb/v15/NaPAcZTIAOhVxoMyOr9n_E7fdMbmCKZXbr2BsA.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Titillium Web" + }, + { + "src": "http://fonts.gstatic.com/s/titilliumweb/v15/NaPDcZTIAOhVxoMyOr9n_E7ffBzCKIx5YrSYqWM.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Titillium Web" + }, + { + "src": "http://fonts.gstatic.com/s/titilliumweb/v15/NaPFcZTIAOhVxoMyOr9n_E7fdMbe0IhzZpaduWMmxA.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Titillium Web" + }, + { + "src": "http://fonts.gstatic.com/s/titilliumweb/v15/NaPDcZTIAOhVxoMyOr9n_E7ffHjDKIx5YrSYqWM.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Titillium Web" + }, + { + "src": "http://fonts.gstatic.com/s/titilliumweb/v15/NaPFcZTIAOhVxoMyOr9n_E7fdMbetIlzZpaduWMmxA.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Titillium Web" + }, + { + "src": "http://fonts.gstatic.com/s/titilliumweb/v15/NaPDcZTIAOhVxoMyOr9n_E7ffEDBKIx5YrSYqWM.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Titillium Web" + } + ] + }, + { + "name": "Tomorrow", + "fontFamily": "Tomorrow, sans-serif", + "slug": "tomorrow", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLgrETNbFtZCeGqgR2xe2XiKMiokE4.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Tomorrow" + }, + { + "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLirETNbFtZCeGqgRXXQwHoLOqtgE5h0A.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Tomorrow" + }, + { + "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLhrETNbFtZCeGqgR0dWkXIBsShiVd4.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Tomorrow" + }, + { + "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLjrETNbFtZCeGqgRXXQ63JDMCDjEd4yVY.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Tomorrow" + }, + { + "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLhrETNbFtZCeGqgR15WUXIBsShiVd4.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Tomorrow" + }, + { + "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLjrETNbFtZCeGqgRXXQ8nKDMCDjEd4yVY.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Tomorrow" + }, + { + "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLmrETNbFtZCeGqgSXVcWHALdio.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Tomorrow" + }, + { + "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLgrETNbFtZCeGqgRXXe2XiKMiokE4.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Tomorrow" + }, + { + "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLhrETNbFtZCeGqgR0hWEXIBsShiVd4.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Tomorrow" + }, + { + "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLjrETNbFtZCeGqgRXXQ5HLDMCDjEd4yVY.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Tomorrow" + }, + { + "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLhrETNbFtZCeGqgR0NX0XIBsShiVd4.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Tomorrow" + }, + { + "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLjrETNbFtZCeGqgRXXQ73MDMCDjEd4yVY.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Tomorrow" + }, + { + "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLhrETNbFtZCeGqgR1pXkXIBsShiVd4.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Tomorrow" + }, + { + "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLjrETNbFtZCeGqgRXXQ9nNDMCDjEd4yVY.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Tomorrow" + }, + { + "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLhrETNbFtZCeGqgR11XUXIBsShiVd4.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Tomorrow" + }, + { + "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLjrETNbFtZCeGqgRXXQ8XODMCDjEd4yVY.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Tomorrow" + }, + { + "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLhrETNbFtZCeGqgR1RXEXIBsShiVd4.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Tomorrow" + }, + { + "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLjrETNbFtZCeGqgRXXQ-HPDMCDjEd4yVY.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Tomorrow" + } + ] + }, + { + "name": "Tourney", + "fontFamily": "Tourney, system-ui", + "slug": "tourney", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/tourney/v11/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7GOQByZTp1I1LcGA.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Tourney" + }, + { + "src": "http://fonts.gstatic.com/s/tourney/v11/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7GuQFyZTp1I1LcGA.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Tourney" + }, + { + "src": "http://fonts.gstatic.com/s/tourney/v11/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7GZwFyZTp1I1LcGA.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Tourney" + }, + { + "src": "http://fonts.gstatic.com/s/tourney/v11/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7GOQFyZTp1I1LcGA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Tourney" + }, + { + "src": "http://fonts.gstatic.com/s/tourney/v11/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7GCwFyZTp1I1LcGA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Tourney" + }, + { + "src": "http://fonts.gstatic.com/s/tourney/v11/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7G5wZyZTp1I1LcGA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Tourney" + }, + { + "src": "http://fonts.gstatic.com/s/tourney/v11/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7G3gZyZTp1I1LcGA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Tourney" + }, + { + "src": "http://fonts.gstatic.com/s/tourney/v11/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7GuQZyZTp1I1LcGA.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Tourney" + }, + { + "src": "http://fonts.gstatic.com/s/tourney/v11/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7GkAZyZTp1I1LcGA.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Tourney" + }, + { + "src": "http://fonts.gstatic.com/s/tourney/v11/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8UKaJzBxAVfMGOPb.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Tourney" + }, + { + "src": "http://fonts.gstatic.com/s/tourney/v11/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8UIaJjBxAVfMGOPb.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Tourney" + }, + { + "src": "http://fonts.gstatic.com/s/tourney/v11/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8ULEJjBxAVfMGOPb.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Tourney" + }, + { + "src": "http://fonts.gstatic.com/s/tourney/v11/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8UKaJjBxAVfMGOPb.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Tourney" + }, + { + "src": "http://fonts.gstatic.com/s/tourney/v11/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8UKoJjBxAVfMGOPb.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Tourney" + }, + { + "src": "http://fonts.gstatic.com/s/tourney/v11/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8UJEITBxAVfMGOPb.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Tourney" + }, + { + "src": "http://fonts.gstatic.com/s/tourney/v11/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8UJ9ITBxAVfMGOPb.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Tourney" + }, + { + "src": "http://fonts.gstatic.com/s/tourney/v11/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8UIaITBxAVfMGOPb.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Tourney" + }, + { + "src": "http://fonts.gstatic.com/s/tourney/v11/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8UIzITBxAVfMGOPb.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Tourney" + } + ] + }, + { + "name": "Trade Winds", + "fontFamily": "Trade Winds, system-ui", + "slug": "trade-winds", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/tradewinds/v17/AYCPpXPpYNIIT7h8-QenM3Jq7PKP5Z_G.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Trade Winds" + } + ] + }, + { + "name": "Train One", + "fontFamily": "Train One, system-ui", + "slug": "train-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/trainone/v13/gyB-hwkiNtc6KnxUVjWHOqbZRY7JVQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Train One" + } + ] + }, + { + "name": "Trirong", + "fontFamily": "Trirong, serif", + "slug": "trirong", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/trirong/v12/7r3EqXNgp8wxdOdOl-go3YRl6ujngw.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Trirong" + }, + { + "src": "http://fonts.gstatic.com/s/trirong/v12/7r3CqXNgp8wxdOdOn44QuY5hyO33g8IY.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Trirong" + }, + { + "src": "http://fonts.gstatic.com/s/trirong/v12/7r3DqXNgp8wxdOdOl0QJ_a5L5uH-mts.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Trirong" + }, + { + "src": "http://fonts.gstatic.com/s/trirong/v12/7r3BqXNgp8wxdOdOn44QFa9B4sP7itsB5g.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Trirong" + }, + { + "src": "http://fonts.gstatic.com/s/trirong/v12/7r3DqXNgp8wxdOdOlyAK_a5L5uH-mts.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Trirong" + }, + { + "src": "http://fonts.gstatic.com/s/trirong/v12/7r3BqXNgp8wxdOdOn44QcaxB4sP7itsB5g.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Trirong" + }, + { + "src": "http://fonts.gstatic.com/s/trirong/v12/7r3GqXNgp8wxdOdOr4wi2aZg-ug.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Trirong" + }, + { + "src": "http://fonts.gstatic.com/s/trirong/v12/7r3EqXNgp8wxdOdOn44o3YRl6ujngw.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Trirong" + }, + { + "src": "http://fonts.gstatic.com/s/trirong/v12/7r3DqXNgp8wxdOdOl3gL_a5L5uH-mts.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Trirong" + }, + { + "src": "http://fonts.gstatic.com/s/trirong/v12/7r3BqXNgp8wxdOdOn44QKa1B4sP7itsB5g.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Trirong" + }, + { + "src": "http://fonts.gstatic.com/s/trirong/v12/7r3DqXNgp8wxdOdOl1QM_a5L5uH-mts.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Trirong" + }, + { + "src": "http://fonts.gstatic.com/s/trirong/v12/7r3BqXNgp8wxdOdOn44QBapB4sP7itsB5g.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Trirong" + }, + { + "src": "http://fonts.gstatic.com/s/trirong/v12/7r3DqXNgp8wxdOdOlzAN_a5L5uH-mts.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Trirong" + }, + { + "src": "http://fonts.gstatic.com/s/trirong/v12/7r3BqXNgp8wxdOdOn44QYatB4sP7itsB5g.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Trirong" + }, + { + "src": "http://fonts.gstatic.com/s/trirong/v12/7r3DqXNgp8wxdOdOlywO_a5L5uH-mts.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Trirong" + }, + { + "src": "http://fonts.gstatic.com/s/trirong/v12/7r3BqXNgp8wxdOdOn44QfahB4sP7itsB5g.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Trirong" + }, + { + "src": "http://fonts.gstatic.com/s/trirong/v12/7r3DqXNgp8wxdOdOlwgP_a5L5uH-mts.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Trirong" + }, + { + "src": "http://fonts.gstatic.com/s/trirong/v12/7r3BqXNgp8wxdOdOn44QWalB4sP7itsB5g.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Trirong" + } + ] + }, + { + "name": "Trispace", + "fontFamily": "Trispace, sans-serif", + "slug": "trispace", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/trispace/v22/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbH9qoQl0zHugpt0.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Trispace" + }, + { + "src": "http://fonts.gstatic.com/s/trispace/v22/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbP9roQl0zHugpt0.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Trispace" + }, + { + "src": "http://fonts.gstatic.com/s/trispace/v22/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbCFroQl0zHugpt0.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Trispace" + }, + { + "src": "http://fonts.gstatic.com/s/trispace/v22/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbH9roQl0zHugpt0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Trispace" + }, + { + "src": "http://fonts.gstatic.com/s/trispace/v22/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbE1roQl0zHugpt0.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Trispace" + }, + { + "src": "http://fonts.gstatic.com/s/trispace/v22/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbKFsoQl0zHugpt0.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Trispace" + }, + { + "src": "http://fonts.gstatic.com/s/trispace/v22/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbJhsoQl0zHugpt0.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Trispace" + }, + { + "src": "http://fonts.gstatic.com/s/trispace/v22/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbP9soQl0zHugpt0.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Trispace" + } + ] + }, + { + "name": "Trocchi", + "fontFamily": "Trocchi, serif", + "slug": "trocchi", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/trocchi/v15/qWcqB6WkuIDxDZLcDrtUvMeTYD0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Trocchi" + } + ] + }, + { + "name": "Trochut", + "fontFamily": "Trochut, system-ui", + "slug": "trochut", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/trochut/v20/CHyjV-fDDlP9bDIw5nSIfVIPLns.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Trochut" + }, + { + "src": "http://fonts.gstatic.com/s/trochut/v20/CHyhV-fDDlP9bDIw1naCeXAKPns8jw.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Trochut" + }, + { + "src": "http://fonts.gstatic.com/s/trochut/v20/CHymV-fDDlP9bDIw3sinWVokMnIllmA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Trochut" + } + ] + }, + { + "name": "Truculenta", + "fontFamily": "Truculenta, sans-serif", + "slug": "truculenta", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/truculenta/v22/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMlAjswcFHnJMMhg.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Truculenta" + }, + { + "src": "http://fonts.gstatic.com/s/truculenta/v22/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMtAiswcFHnJMMhg.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Truculenta" + }, + { + "src": "http://fonts.gstatic.com/s/truculenta/v22/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMg4iswcFHnJMMhg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Truculenta" + }, + { + "src": "http://fonts.gstatic.com/s/truculenta/v22/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMlAiswcFHnJMMhg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Truculenta" + }, + { + "src": "http://fonts.gstatic.com/s/truculenta/v22/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMmIiswcFHnJMMhg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Truculenta" + }, + { + "src": "http://fonts.gstatic.com/s/truculenta/v22/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMo4lswcFHnJMMhg.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Truculenta" + }, + { + "src": "http://fonts.gstatic.com/s/truculenta/v22/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMrclswcFHnJMMhg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Truculenta" + }, + { + "src": "http://fonts.gstatic.com/s/truculenta/v22/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMtAlswcFHnJMMhg.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Truculenta" + }, + { + "src": "http://fonts.gstatic.com/s/truculenta/v22/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMvklswcFHnJMMhg.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Truculenta" + } + ] + }, + { + "name": "Trykker", + "fontFamily": "Trykker, serif", + "slug": "trykker", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/trykker/v21/KtktALyWZJXudUPzhNnoOd2j22U.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Trykker" + } + ] + }, + { + "name": "Tsukimi Rounded", + "fontFamily": "Tsukimi Rounded, sans-serif", + "slug": "tsukimi-rounded", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/tsukimirounded/v8/sJoZ3LJNksWZO0LvnZwkF3HtoB7VkVsqN7MT3T9X8g.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Tsukimi Rounded" + }, + { + "src": "http://fonts.gstatic.com/s/tsukimirounded/v8/sJoc3LJNksWZO0LvnZwkF3HtoB7tPXMOP5gP1A.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Tsukimi Rounded" + }, + { + "src": "http://fonts.gstatic.com/s/tsukimirounded/v8/sJoZ3LJNksWZO0LvnZwkF3HtoB7VyVoqN7MT3T9X8g.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Tsukimi Rounded" + }, + { + "src": "http://fonts.gstatic.com/s/tsukimirounded/v8/sJoZ3LJNksWZO0LvnZwkF3HtoB7V5V0qN7MT3T9X8g.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Tsukimi Rounded" + }, + { + "src": "http://fonts.gstatic.com/s/tsukimirounded/v8/sJoZ3LJNksWZO0LvnZwkF3HtoB7VgVwqN7MT3T9X8g.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Tsukimi Rounded" + } + ] + }, + { + "name": "Tulpen One", + "fontFamily": "Tulpen One, system-ui", + "slug": "tulpen-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/tulpenone/v21/dFa6ZfeC474skLgesc0CWj0w_HyIRlE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Tulpen One" + } + ] + }, + { + "name": "Turret Road", + "fontFamily": "Turret Road, system-ui", + "slug": "turret-road", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/turretroad/v7/pxidypMgpcBFjE84Zv-fE0ONEdeLYk1Mq3ap.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Turret Road" + }, + { + "src": "http://fonts.gstatic.com/s/turretroad/v7/pxidypMgpcBFjE84Zv-fE0PpEteLYk1Mq3ap.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Turret Road" + }, + { + "src": "http://fonts.gstatic.com/s/turretroad/v7/pxiAypMgpcBFjE84Zv-fE3tFOvODSVFF.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Turret Road" + }, + { + "src": "http://fonts.gstatic.com/s/turretroad/v7/pxidypMgpcBFjE84Zv-fE0OxE9eLYk1Mq3ap.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Turret Road" + }, + { + "src": "http://fonts.gstatic.com/s/turretroad/v7/pxidypMgpcBFjE84Zv-fE0P5FdeLYk1Mq3ap.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Turret Road" + }, + { + "src": "http://fonts.gstatic.com/s/turretroad/v7/pxidypMgpcBFjE84Zv-fE0PlFteLYk1Mq3ap.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Turret Road" + } + ] + }, + { + "name": "Twinkle Star", + "fontFamily": "Twinkle Star, cursive", + "slug": "twinkle-star", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/twinklestar/v3/pe0pMI6IL4dPoFl9LGEmY6WaA_Rue1UwVg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Twinkle Star" + } + ] + }, + { + "name": "Ubuntu", + "fontFamily": "Ubuntu, sans-serif", + "slug": "ubuntu", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ubuntu/v20/4iCv6KVjbNBYlgoC1CzTt2aMH4V_gg.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Ubuntu" + }, + { + "src": "http://fonts.gstatic.com/s/ubuntu/v20/4iCp6KVjbNBYlgoKejZftWyIPYBvgpUI.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Ubuntu" + }, + { + "src": "http://fonts.gstatic.com/s/ubuntu/v20/4iCs6KVjbNBYlgo6eAT3v02QFg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Ubuntu" + }, + { + "src": "http://fonts.gstatic.com/s/ubuntu/v20/4iCu6KVjbNBYlgoKeg7znUiAFpxm.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Ubuntu" + }, + { + "src": "http://fonts.gstatic.com/s/ubuntu/v20/4iCv6KVjbNBYlgoCjC3Tt2aMH4V_gg.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Ubuntu" + }, + { + "src": "http://fonts.gstatic.com/s/ubuntu/v20/4iCp6KVjbNBYlgoKejYHtGyIPYBvgpUI.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Ubuntu" + }, + { + "src": "http://fonts.gstatic.com/s/ubuntu/v20/4iCv6KVjbNBYlgoCxCvTt2aMH4V_gg.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Ubuntu" + }, + { + "src": "http://fonts.gstatic.com/s/ubuntu/v20/4iCp6KVjbNBYlgoKejZPsmyIPYBvgpUI.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Ubuntu" + } + ] + }, + { + "name": "Ubuntu Condensed", + "fontFamily": "Ubuntu Condensed, sans-serif", + "slug": "ubuntu-condensed", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ubuntucondensed/v16/u-4k0rCzjgs5J7oXnJcM_0kACGMtf-fVqvHoJXw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Ubuntu Condensed" + } + ] + }, + { + "name": "Ubuntu Mono", + "fontFamily": "Ubuntu Mono, monospace", + "slug": "ubuntu-mono", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ubuntumono/v15/KFOjCneDtsqEr0keqCMhbBc9AMX6lJBP.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Ubuntu Mono" + }, + { + "src": "http://fonts.gstatic.com/s/ubuntumono/v15/KFOhCneDtsqEr0keqCMhbCc_CsHYkYBPY3o.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Ubuntu Mono" + }, + { + "src": "http://fonts.gstatic.com/s/ubuntumono/v15/KFO-CneDtsqEr0keqCMhbC-BL-Hyv4xGemO1.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Ubuntu Mono" + }, + { + "src": "http://fonts.gstatic.com/s/ubuntumono/v15/KFO8CneDtsqEr0keqCMhbCc_Mn33tYhkf3O1GVg.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Ubuntu Mono" + } + ] + }, + { + "name": "Uchen", + "fontFamily": "Uchen, serif", + "slug": "uchen", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/uchen/v7/nKKZ-GokGZ1baIaSEQGodLxA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Uchen" + } + ] + }, + { + "name": "Ultra", + "fontFamily": "Ultra, serif", + "slug": "ultra", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ultra/v19/zOLy4prXmrtY-tT6yLOD6NxF.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Ultra" + } + ] + }, + { + "name": "Unbounded", + "fontFamily": "Unbounded, system-ui", + "slug": "unbounded", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/unbounded/v6/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG65jx043HgP6LR0Y.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Unbounded" + }, + { + "src": "http://fonts.gstatic.com/s/unbounded/v6/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG60bx043HgP6LR0Y.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Unbounded" + }, + { + "src": "http://fonts.gstatic.com/s/unbounded/v6/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG6xjx043HgP6LR0Y.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Unbounded" + }, + { + "src": "http://fonts.gstatic.com/s/unbounded/v6/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG6yrx043HgP6LR0Y.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Unbounded" + }, + { + "src": "http://fonts.gstatic.com/s/unbounded/v6/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG68b2043HgP6LR0Y.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Unbounded" + }, + { + "src": "http://fonts.gstatic.com/s/unbounded/v6/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG6__2043HgP6LR0Y.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Unbounded" + }, + { + "src": "http://fonts.gstatic.com/s/unbounded/v6/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG65j2043HgP6LR0Y.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Unbounded" + }, + { + "src": "http://fonts.gstatic.com/s/unbounded/v6/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG67H2043HgP6LR0Y.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Unbounded" + } + ] + }, + { + "name": "Uncial Antiqua", + "fontFamily": "Uncial Antiqua, system-ui", + "slug": "uncial-antiqua", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/uncialantiqua/v20/N0bM2S5WOex4OUbESzoESK-i-PfRS5VBBSSF.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Uncial Antiqua" + } + ] + }, + { + "name": "Underdog", + "fontFamily": "Underdog, system-ui", + "slug": "underdog", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/underdog/v23/CHygV-jCElj7diMroVSiU14GN2Il.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Underdog" + } + ] + }, + { + "name": "Unica One", + "fontFamily": "Unica One, system-ui", + "slug": "unica-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/unicaone/v15/DPEuYwWHyAYGVTSmalshdtffuEY7FA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Unica One" + } + ] + }, + { + "name": "UnifrakturCook", + "fontFamily": "UnifrakturCook, system-ui", + "slug": "unifrakturcook", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/unifrakturcook/v19/IurA6Yli8YOdcoky-0PTTdkm56n05Uw13ILXs-h6.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "UnifrakturCook" + } + ] + }, + { + "name": "UnifrakturMaguntia", + "fontFamily": "UnifrakturMaguntia, system-ui", + "slug": "unifrakturmaguntia", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/unifrakturmaguntia/v16/WWXPlieVYwiGNomYU-ciRLRvEmK7oaVun2xNNgNa1A.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "UnifrakturMaguntia" + } + ] + }, + { + "name": "Unkempt", + "fontFamily": "Unkempt, system-ui", + "slug": "unkempt", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/unkempt/v19/2EbnL-Z2DFZue0DSSYYf8z2Yt_c.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Unkempt" + }, + { + "src": "http://fonts.gstatic.com/s/unkempt/v19/2EbiL-Z2DFZue0DScTow1zWzq_5uT84.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Unkempt" + } + ] + }, + { + "name": "Unlock", + "fontFamily": "Unlock, system-ui", + "slug": "unlock", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/unlock/v24/7Au-p_8ykD-cDl7GKAjSwkUVOQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Unlock" + } + ] + }, + { + "name": "Unna", + "fontFamily": "Unna, serif", + "slug": "unna", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/unna/v21/AYCEpXzofN0NCpgBlGHCWFM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Unna" + }, + { + "src": "http://fonts.gstatic.com/s/unna/v21/AYCKpXzofN0NOpoLkEPHSFNyxw.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Unna" + }, + { + "src": "http://fonts.gstatic.com/s/unna/v21/AYCLpXzofN0NMiQusGnpRFpr3vc.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Unna" + }, + { + "src": "http://fonts.gstatic.com/s/unna/v21/AYCJpXzofN0NOpozLGzjQHhuzvef5Q.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Unna" + } + ] + }, + { + "name": "Updock", + "fontFamily": "Updock, cursive", + "slug": "updock", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/updock/v2/nuF4D_3dVZ70UI9SjLK3602XBw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Updock" + } + ] + }, + { + "name": "Urbanist", + "fontFamily": "Urbanist, sans-serif", + "slug": "urbanist", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDyx8fFpOrS8SlKw.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Urbanist" + }, + { + "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDSx4fFpOrS8SlKw.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Urbanist" + }, + { + "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDlR4fFpOrS8SlKw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Urbanist" + }, + { + "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDyx4fFpOrS8SlKw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Urbanist" + }, + { + "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xjDF02iFML4hGCyOCpRdycFsGxSrqD-R4fFpOrS8SlKw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Urbanist" + }, + { + "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDFRkfFpOrS8SlKw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Urbanist" + }, + { + "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDLBkfFpOrS8SlKw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Urbanist" + }, + { + "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDSxkfFpOrS8SlKw.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Urbanist" + }, + { + "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDYhkfFpOrS8SlKw.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Urbanist" + }, + { + "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA133VJmvacG1K4S1.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Urbanist" + }, + { + "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA113VZmvacG1K4S1.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Urbanist" + }, + { + "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA12pVZmvacG1K4S1.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Urbanist" + }, + { + "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA133VZmvacG1K4S1.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Urbanist" + }, + { + "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA13FVZmvacG1K4S1.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Urbanist" + }, + { + "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA10pUpmvacG1K4S1.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Urbanist" + }, + { + "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA10QUpmvacG1K4S1.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Urbanist" + }, + { + "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA113UpmvacG1K4S1.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Urbanist" + }, + { + "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA11eUpmvacG1K4S1.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Urbanist" + } + ] + }, + { + "name": "VT323", + "fontFamily": "VT323, monospace", + "slug": "vt323", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/vt323/v17/pxiKyp0ihIEF2hsYHpT2dkNE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "VT323" + } + ] + }, + { + "name": "Vampiro One", + "fontFamily": "Vampiro One, system-ui", + "slug": "vampiro-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/vampiroone/v18/gokqH6DoDl5yXvJytFsdLkqnsvhIor3K.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Vampiro One" + } + ] + }, + { + "name": "Varela", + "fontFamily": "Varela, sans-serif", + "slug": "varela", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/varela/v16/DPEtYwqExx0AWHXJBBQFfvzDsQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Varela" + } + ] + }, + { + "name": "Varela Round", + "fontFamily": "Varela Round, sans-serif", + "slug": "varela-round", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/varelaround/v20/w8gdH283Tvk__Lua32TysjIvoMGOD9gxZw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Varela Round" + } + ] + }, + { + "name": "Varta", + "fontFamily": "Varta, sans-serif", + "slug": "varta", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/varta/v21/Qw3AZQpJHj_6LzHUngWbrFkDH1x96j4EirE-9PGLfQ.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Varta" + }, + { + "src": "http://fonts.gstatic.com/s/varta/v21/Qw3AZQpJHj_6LzHUngWbrFkDH1x9tD4EirE-9PGLfQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Varta" + }, + { + "src": "http://fonts.gstatic.com/s/varta/v21/Qw3AZQpJHj_6LzHUngWbrFkDH1x9hj4EirE-9PGLfQ.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Varta" + }, + { + "src": "http://fonts.gstatic.com/s/varta/v21/Qw3AZQpJHj_6LzHUngWbrFkDH1x9ajkEirE-9PGLfQ.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Varta" + }, + { + "src": "http://fonts.gstatic.com/s/varta/v21/Qw3AZQpJHj_6LzHUngWbrFkDH1x9UzkEirE-9PGLfQ.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Varta" + } + ] + }, + { + "name": "Vast Shadow", + "fontFamily": "Vast Shadow, system-ui", + "slug": "vast-shadow", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/vastshadow/v15/pe0qMImKOZ1V62ZwbVY9dfe6Kdpickwp.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Vast Shadow" + } + ] + }, + { + "name": "Vazirmatn", + "fontFamily": "Vazirmatn, sans-serif", + "slug": "vazirmatn", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/vazirmatn/v13/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklWgyOReZ72DF_QY.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Vazirmatn" + }, + { + "src": "http://fonts.gstatic.com/s/vazirmatn/v13/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklegzOReZ72DF_QY.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Vazirmatn" + }, + { + "src": "http://fonts.gstatic.com/s/vazirmatn/v13/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklTYzOReZ72DF_QY.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Vazirmatn" + }, + { + "src": "http://fonts.gstatic.com/s/vazirmatn/v13/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklWgzOReZ72DF_QY.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Vazirmatn" + }, + { + "src": "http://fonts.gstatic.com/s/vazirmatn/v13/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklVozOReZ72DF_QY.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Vazirmatn" + }, + { + "src": "http://fonts.gstatic.com/s/vazirmatn/v13/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklbY0OReZ72DF_QY.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Vazirmatn" + }, + { + "src": "http://fonts.gstatic.com/s/vazirmatn/v13/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklY80OReZ72DF_QY.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Vazirmatn" + }, + { + "src": "http://fonts.gstatic.com/s/vazirmatn/v13/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRkleg0OReZ72DF_QY.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Vazirmatn" + }, + { + "src": "http://fonts.gstatic.com/s/vazirmatn/v13/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklcE0OReZ72DF_QY.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Vazirmatn" + } + ] + }, + { + "name": "Vesper Libre", + "fontFamily": "Vesper Libre, serif", + "slug": "vesper-libre", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/vesperlibre/v19/bx6CNxyWnf-uxPdXDHUD_Rd4D0-N2qIWVQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Vesper Libre" + }, + { + "src": "http://fonts.gstatic.com/s/vesperlibre/v19/bx6dNxyWnf-uxPdXDHUD_RdA-2ap0okKXKvPlw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Vesper Libre" + }, + { + "src": "http://fonts.gstatic.com/s/vesperlibre/v19/bx6dNxyWnf-uxPdXDHUD_RdAs2Cp0okKXKvPlw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Vesper Libre" + }, + { + "src": "http://fonts.gstatic.com/s/vesperlibre/v19/bx6dNxyWnf-uxPdXDHUD_RdAi2Kp0okKXKvPlw.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Vesper Libre" + } + ] + }, + { + "name": "Viaoda Libre", + "fontFamily": "Viaoda Libre, system-ui", + "slug": "viaoda-libre", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/viaodalibre/v15/vEFW2_lWCgoR6OKuRz9kcRVJb2IY2tOHXg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Viaoda Libre" + } + ] + }, + { + "name": "Vibes", + "fontFamily": "Vibes, system-ui", + "slug": "vibes", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/vibes/v14/QdVYSTsmIB6tmbd3HpbsuBlh.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Vibes" + } + ] + }, + { + "name": "Vibur", + "fontFamily": "Vibur, cursive", + "slug": "vibur", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/vibur/v23/DPEiYwmEzw0QRjTpLjoJd-Xa.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Vibur" + } + ] + }, + { + "name": "Vidaloka", + "fontFamily": "Vidaloka, serif", + "slug": "vidaloka", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/vidaloka/v18/7cHrv4c3ipenMKlEass8yn4hnCci.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Vidaloka" + } + ] + }, + { + "name": "Viga", + "fontFamily": "Viga, sans-serif", + "slug": "viga", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/viga/v14/xMQbuFFdSaiX_QIjD4e2OX8.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Viga" + } + ] + }, + { + "name": "Vina Sans", + "fontFamily": "Vina Sans, system-ui", + "slug": "vina-sans", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/vinasans/v2/m8JQjfZKf6-d2273MP7zcJ5BZmqa3A.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Vina Sans" + } + ] + }, + { + "name": "Voces", + "fontFamily": "Voces, system-ui", + "slug": "voces", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/voces/v20/-F6_fjJyLyU8d4PBBG7YpzlJ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Voces" + } + ] + }, + { + "name": "Volkhov", + "fontFamily": "Volkhov, serif", + "slug": "volkhov", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/volkhov/v17/SlGQmQieoJcKemNeQTIOhHxzcD0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Volkhov" + }, + { + "src": "http://fonts.gstatic.com/s/volkhov/v17/SlGSmQieoJcKemNecTAEgF52YD0NYw.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Volkhov" + }, + { + "src": "http://fonts.gstatic.com/s/volkhov/v17/SlGVmQieoJcKemNeeY4hoHRYbDQUego.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Volkhov" + }, + { + "src": "http://fonts.gstatic.com/s/volkhov/v17/SlGXmQieoJcKemNecTA8PHFSaBYRagrQrA.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Volkhov" + } + ] + }, + { + "name": "Vollkorn", + "fontFamily": "Vollkorn, serif", + "slug": "vollkorn", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/vollkorn/v22/0ybgGDoxxrvAnPhYGzMlQLzuMasz6Df2MHGuGWOdEbD63w.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Vollkorn" + }, + { + "src": "http://fonts.gstatic.com/s/vollkorn/v22/0ybgGDoxxrvAnPhYGzMlQLzuMasz6Df2AnGuGWOdEbD63w.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Vollkorn" + }, + { + "src": "http://fonts.gstatic.com/s/vollkorn/v22/0ybgGDoxxrvAnPhYGzMlQLzuMasz6Df27nauGWOdEbD63w.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Vollkorn" + }, + { + "src": "http://fonts.gstatic.com/s/vollkorn/v22/0ybgGDoxxrvAnPhYGzMlQLzuMasz6Df213auGWOdEbD63w.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Vollkorn" + }, + { + "src": "http://fonts.gstatic.com/s/vollkorn/v22/0ybgGDoxxrvAnPhYGzMlQLzuMasz6Df2sHauGWOdEbD63w.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Vollkorn" + }, + { + "src": "http://fonts.gstatic.com/s/vollkorn/v22/0ybgGDoxxrvAnPhYGzMlQLzuMasz6Df2mXauGWOdEbD63w.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Vollkorn" + }, + { + "src": "http://fonts.gstatic.com/s/vollkorn/v22/0ybuGDoxxrvAnPhYGxksckM2WMCpRjDj-DJGWmmZM7Xq34g9.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Vollkorn" + }, + { + "src": "http://fonts.gstatic.com/s/vollkorn/v22/0ybuGDoxxrvAnPhYGxksckM2WMCpRjDj-DJ0WmmZM7Xq34g9.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Vollkorn" + }, + { + "src": "http://fonts.gstatic.com/s/vollkorn/v22/0ybuGDoxxrvAnPhYGxksckM2WMCpRjDj-DKYXWmZM7Xq34g9.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Vollkorn" + }, + { + "src": "http://fonts.gstatic.com/s/vollkorn/v22/0ybuGDoxxrvAnPhYGxksckM2WMCpRjDj-DKhXWmZM7Xq34g9.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Vollkorn" + }, + { + "src": "http://fonts.gstatic.com/s/vollkorn/v22/0ybuGDoxxrvAnPhYGxksckM2WMCpRjDj-DLGXWmZM7Xq34g9.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Vollkorn" + }, + { + "src": "http://fonts.gstatic.com/s/vollkorn/v22/0ybuGDoxxrvAnPhYGxksckM2WMCpRjDj-DLvXWmZM7Xq34g9.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Vollkorn" + } + ] + }, + { + "name": "Vollkorn SC", + "fontFamily": "Vollkorn SC, serif", + "slug": "vollkorn-sc", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/vollkornsc/v11/j8_v6-zQ3rXpceZj9cqnVhF5NH-iSq_E.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Vollkorn SC" + }, + { + "src": "http://fonts.gstatic.com/s/vollkornsc/v11/j8_y6-zQ3rXpceZj9cqnVimhGluqYbPN5Yjn.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Vollkorn SC" + }, + { + "src": "http://fonts.gstatic.com/s/vollkornsc/v11/j8_y6-zQ3rXpceZj9cqnVinFG1uqYbPN5Yjn.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Vollkorn SC" + }, + { + "src": "http://fonts.gstatic.com/s/vollkornsc/v11/j8_y6-zQ3rXpceZj9cqnVin9GVuqYbPN5Yjn.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Vollkorn SC" + } + ] + }, + { + "name": "Voltaire", + "fontFamily": "Voltaire, sans-serif", + "slug": "voltaire", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/voltaire/v18/1Pttg8PcRfSblAvGvQooYKVnBOif.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Voltaire" + } + ] + }, + { + "name": "Vujahday Script", + "fontFamily": "Vujahday Script, cursive", + "slug": "vujahday-script", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/vujahdayscript/v4/RWmQoKGA8fEkrIPtSZ3_J7er2dUiDEtvAlaMKw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Vujahday Script" + } + ] + }, + { + "name": "Waiting for the Sunrise", + "fontFamily": "Waiting for the Sunrise, cursive", + "slug": "waiting-for-the-sunrise", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/waitingforthesunrise/v16/WBL1rFvOYl9CEv2i1mO6KUW8RKWJ2zoXoz5JsYZQ9h_ZYk5J.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Waiting for the Sunrise" + } + ] + }, + { + "name": "Wallpoet", + "fontFamily": "Wallpoet, system-ui", + "slug": "wallpoet", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/wallpoet/v16/f0X10em2_8RnXVVdUNbu7cXP8L8G.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Wallpoet" + } + ] + }, + { + "name": "Walter Turncoat", + "fontFamily": "Walter Turncoat, cursive", + "slug": "walter-turncoat", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/walterturncoat/v19/snfys0Gs98ln43n0d-14ULoToe67YB2dQ5ZPqQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Walter Turncoat" + } + ] + }, + { + "name": "Warnes", + "fontFamily": "Warnes, system-ui", + "slug": "warnes", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/warnes/v25/pONn1hc0GsW6sW5OpiC2o6Lkqg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Warnes" + } + ] + }, + { + "name": "Water Brush", + "fontFamily": "Water Brush, cursive", + "slug": "water-brush", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/waterbrush/v2/AYCPpXPqc8cJWLhp4hywKHJq7PKP5Z_G.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Water Brush" + } + ] + }, + { + "name": "Waterfall", + "fontFamily": "Waterfall, cursive", + "slug": "waterfall", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/waterfall/v3/MCoRzAfo293fACdFKcwY2rH8D_EZwA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Waterfall" + } + ] + }, + { + "name": "Wellfleet", + "fontFamily": "Wellfleet, system-ui", + "slug": "wellfleet", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/wellfleet/v20/nuF7D_LfQJb3VYgX6eyT42aLDhO2HA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Wellfleet" + } + ] + }, + { + "name": "Wendy One", + "fontFamily": "Wendy One, sans-serif", + "slug": "wendy-one", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/wendyone/v15/2sDcZGJOipXfgfXV5wgDb2-4C7wFZQ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Wendy One" + } + ] + }, + { + "name": "Whisper", + "fontFamily": "Whisper, cursive", + "slug": "whisper", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/whisper/v2/q5uHsoqtKftx74K9milCBxxdmYU.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Whisper" + } + ] + }, + { + "name": "WindSong", + "fontFamily": "WindSong, cursive", + "slug": "windsong", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/windsong/v8/KR1WBsyu-P-GFEW57r95HdG6vjH3.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "WindSong" + }, + { + "src": "http://fonts.gstatic.com/s/windsong/v8/KR1RBsyu-P-GFEW57oeNNPWylS3-jVXm.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "WindSong" + } + ] + }, + { + "name": "Wire One", + "fontFamily": "Wire One, sans-serif", + "slug": "wire-one", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/wireone/v24/qFdH35Wah5htUhV75WGiWdrCwwcJ.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Wire One" + } + ] + }, + { + "name": "Wix Madefor Display", + "fontFamily": "Wix Madefor Display, sans-serif", + "slug": "wix-madefor-display", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/wixmadefordisplay/v9/SZcS3EX9IbbyeJ8aOluD52KXgUA_7Ed1I13G853Cp9duUYFhYltkv_3HQKgh.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Wix Madefor Display" + }, + { + "src": "http://fonts.gstatic.com/s/wixmadefordisplay/v9/SZcS3EX9IbbyeJ8aOluD52KXgUA_7Ed1I13G853Cp9duUYFTYltkv_3HQKgh.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Wix Madefor Display" + }, + { + "src": "http://fonts.gstatic.com/s/wixmadefordisplay/v9/SZcS3EX9IbbyeJ8aOluD52KXgUA_7Ed1I13G853Cp9duUYG_ZVtkv_3HQKgh.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Wix Madefor Display" + }, + { + "src": "http://fonts.gstatic.com/s/wixmadefordisplay/v9/SZcS3EX9IbbyeJ8aOluD52KXgUA_7Ed1I13G853Cp9duUYGGZVtkv_3HQKgh.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Wix Madefor Display" + }, + { + "src": "http://fonts.gstatic.com/s/wixmadefordisplay/v9/SZcS3EX9IbbyeJ8aOluD52KXgUA_7Ed1I13G853Cp9duUYHhZVtkv_3HQKgh.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Wix Madefor Display" + } + ] + }, + { + "name": "Wix Madefor Text", + "fontFamily": "Wix Madefor Text, sans-serif", + "slug": "wix-madefor-text", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/wixmadefortext/v12/-W_oXI_oSymQ8Qj-Apx3HGN_Hu1RTCk5FtSDETgf0cK_NOeFgpRt9rN5.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Wix Madefor Text" + }, + { + "src": "http://fonts.gstatic.com/s/wixmadefortext/v12/-W_WXI_oSymQ8Qj-Apx3HGN_Hu1RZiAL6QzqeqKx1td3dw_GiJBP86N53IY.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Wix Madefor Text" + }, + { + "src": "http://fonts.gstatic.com/s/wixmadefortext/v12/-W_oXI_oSymQ8Qj-Apx3HGN_Hu1RTCk5FtSDETgf0cKNNOeFgpRt9rN5.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Wix Madefor Text" + }, + { + "src": "http://fonts.gstatic.com/s/wixmadefortext/v12/-W_WXI_oSymQ8Qj-Apx3HGN_Hu1RZiAL6QzqeqKx1td3dz3GiJBP86N53IY.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Wix Madefor Text" + }, + { + "src": "http://fonts.gstatic.com/s/wixmadefortext/v12/-W_oXI_oSymQ8Qj-Apx3HGN_Hu1RTCk5FtSDETgf0cJhM-eFgpRt9rN5.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Wix Madefor Text" + }, + { + "src": "http://fonts.gstatic.com/s/wixmadefortext/v12/-W_WXI_oSymQ8Qj-Apx3HGN_Hu1RZiAL6QzqeqKx1td3d9HBiJBP86N53IY.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Wix Madefor Text" + }, + { + "src": "http://fonts.gstatic.com/s/wixmadefortext/v12/-W_oXI_oSymQ8Qj-Apx3HGN_Hu1RTCk5FtSDETgf0cJYM-eFgpRt9rN5.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Wix Madefor Text" + }, + { + "src": "http://fonts.gstatic.com/s/wixmadefortext/v12/-W_WXI_oSymQ8Qj-Apx3HGN_Hu1RZiAL6QzqeqKx1td3d-jBiJBP86N53IY.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Wix Madefor Text" + }, + { + "src": "http://fonts.gstatic.com/s/wixmadefortext/v12/-W_oXI_oSymQ8Qj-Apx3HGN_Hu1RTCk5FtSDETgf0cI_M-eFgpRt9rN5.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Wix Madefor Text" + }, + { + "src": "http://fonts.gstatic.com/s/wixmadefortext/v12/-W_WXI_oSymQ8Qj-Apx3HGN_Hu1RZiAL6QzqeqKx1td3d4_BiJBP86N53IY.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Wix Madefor Text" + } + ] + }, + { + "name": "Work Sans", + "fontFamily": "Work Sans, sans-serif", + "slug": "work-sans", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/worksans/v18/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K0nWNigDp6_cOyA.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Work Sans" + }, + { + "src": "http://fonts.gstatic.com/s/worksans/v18/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K8nXNigDp6_cOyA.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Work Sans" + }, + { + "src": "http://fonts.gstatic.com/s/worksans/v18/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32KxfXNigDp6_cOyA.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Work Sans" + }, + { + "src": "http://fonts.gstatic.com/s/worksans/v18/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K0nXNigDp6_cOyA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Work Sans" + }, + { + "src": "http://fonts.gstatic.com/s/worksans/v18/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K3vXNigDp6_cOyA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Work Sans" + }, + { + "src": "http://fonts.gstatic.com/s/worksans/v18/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K5fQNigDp6_cOyA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Work Sans" + }, + { + "src": "http://fonts.gstatic.com/s/worksans/v18/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K67QNigDp6_cOyA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Work Sans" + }, + { + "src": "http://fonts.gstatic.com/s/worksans/v18/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K8nQNigDp6_cOyA.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Work Sans" + }, + { + "src": "http://fonts.gstatic.com/s/worksans/v18/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K-DQNigDp6_cOyA.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Work Sans" + }, + { + "src": "http://fonts.gstatic.com/s/worksans/v18/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGU3moJo43ZKyDSQQ.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Work Sans" + }, + { + "src": "http://fonts.gstatic.com/s/worksans/v18/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGUXmsJo43ZKyDSQQ.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Work Sans" + }, + { + "src": "http://fonts.gstatic.com/s/worksans/v18/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGUgGsJo43ZKyDSQQ.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Work Sans" + }, + { + "src": "http://fonts.gstatic.com/s/worksans/v18/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGU3msJo43ZKyDSQQ.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Work Sans" + }, + { + "src": "http://fonts.gstatic.com/s/worksans/v18/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGU7GsJo43ZKyDSQQ.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Work Sans" + }, + { + "src": "http://fonts.gstatic.com/s/worksans/v18/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGUAGwJo43ZKyDSQQ.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Work Sans" + }, + { + "src": "http://fonts.gstatic.com/s/worksans/v18/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGUOWwJo43ZKyDSQQ.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Work Sans" + }, + { + "src": "http://fonts.gstatic.com/s/worksans/v18/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGUXmwJo43ZKyDSQQ.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Work Sans" + }, + { + "src": "http://fonts.gstatic.com/s/worksans/v18/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGUd2wJo43ZKyDSQQ.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Work Sans" + } + ] + }, + { + "name": "Xanh Mono", + "fontFamily": "Xanh Mono, monospace", + "slug": "xanh-mono", + "category": "monospace", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/xanhmono/v17/R70YjykVmvKCep-vWhSYmACQXzLhTg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Xanh Mono" + }, + { + "src": "http://fonts.gstatic.com/s/xanhmono/v17/R70ejykVmvKCep-vWhSomgqUfTfxTo24.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Xanh Mono" + } + ] + }, + { + "name": "Yaldevi", + "fontFamily": "Yaldevi, sans-serif", + "slug": "yaldevi", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/yaldevi/v12/cY9afj6VW0NMrDWtDNzCOwlPMq9SLpfxJzvobxLCBJkS.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Yaldevi" + }, + { + "src": "http://fonts.gstatic.com/s/yaldevi/v12/cY9afj6VW0NMrDWtDNzCOwlPMq9SLpcvJzvobxLCBJkS.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Yaldevi" + }, + { + "src": "http://fonts.gstatic.com/s/yaldevi/v12/cY9afj6VW0NMrDWtDNzCOwlPMq9SLpdxJzvobxLCBJkS.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Yaldevi" + }, + { + "src": "http://fonts.gstatic.com/s/yaldevi/v12/cY9afj6VW0NMrDWtDNzCOwlPMq9SLpdDJzvobxLCBJkS.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Yaldevi" + }, + { + "src": "http://fonts.gstatic.com/s/yaldevi/v12/cY9afj6VW0NMrDWtDNzCOwlPMq9SLpevIDvobxLCBJkS.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Yaldevi" + }, + { + "src": "http://fonts.gstatic.com/s/yaldevi/v12/cY9afj6VW0NMrDWtDNzCOwlPMq9SLpeWIDvobxLCBJkS.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Yaldevi" + } + ] + }, + { + "name": "Yanone Kaffeesatz", + "fontFamily": "Yanone Kaffeesatz, sans-serif", + "slug": "yanone-kaffeesatz", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/yanonekaffeesatz/v24/3y9I6aknfjLm_3lMKjiMgmUUYBs04aUXNxt9gW2LIftodtWpcGuLCnXkVA.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Yanone Kaffeesatz" + }, + { + "src": "http://fonts.gstatic.com/s/yanonekaffeesatz/v24/3y9I6aknfjLm_3lMKjiMgmUUYBs04aUXNxt9gW2LIftoqNWpcGuLCnXkVA.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Yanone Kaffeesatz" + }, + { + "src": "http://fonts.gstatic.com/s/yanonekaffeesatz/v24/3y9I6aknfjLm_3lMKjiMgmUUYBs04aUXNxt9gW2LIfto9tWpcGuLCnXkVA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Yanone Kaffeesatz" + }, + { + "src": "http://fonts.gstatic.com/s/yanonekaffeesatz/v24/3y9I6aknfjLm_3lMKjiMgmUUYBs04aUXNxt9gW2LIftoxNWpcGuLCnXkVA.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Yanone Kaffeesatz" + }, + { + "src": "http://fonts.gstatic.com/s/yanonekaffeesatz/v24/3y9I6aknfjLm_3lMKjiMgmUUYBs04aUXNxt9gW2LIftoKNKpcGuLCnXkVA.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Yanone Kaffeesatz" + }, + { + "src": "http://fonts.gstatic.com/s/yanonekaffeesatz/v24/3y9I6aknfjLm_3lMKjiMgmUUYBs04aUXNxt9gW2LIftoEdKpcGuLCnXkVA.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Yanone Kaffeesatz" + } + ] + }, + { + "name": "Yantramanav", + "fontFamily": "Yantramanav, sans-serif", + "slug": "yantramanav", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/yantramanav/v11/flU-Rqu5zY00QEpyWJYWN5-QXeNzDB41rZg.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Yantramanav" + }, + { + "src": "http://fonts.gstatic.com/s/yantramanav/v11/flUhRqu5zY00QEpyWJYWN59Yf8NZIhI8tIHh.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Yantramanav" + }, + { + "src": "http://fonts.gstatic.com/s/yantramanav/v11/flU8Rqu5zY00QEpyWJYWN6f0V-dRCQ41.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Yantramanav" + }, + { + "src": "http://fonts.gstatic.com/s/yantramanav/v11/flUhRqu5zY00QEpyWJYWN58AfsNZIhI8tIHh.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Yantramanav" + }, + { + "src": "http://fonts.gstatic.com/s/yantramanav/v11/flUhRqu5zY00QEpyWJYWN59IeMNZIhI8tIHh.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Yantramanav" + }, + { + "src": "http://fonts.gstatic.com/s/yantramanav/v11/flUhRqu5zY00QEpyWJYWN59wesNZIhI8tIHh.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Yantramanav" + } + ] + }, + { + "name": "Yatra One", + "fontFamily": "Yatra One, system-ui", + "slug": "yatra-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/yatraone/v14/C8ch4copsHzj8p7NaF0xw1OBbRDvXw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Yatra One" + } + ] + }, + { + "name": "Yellowtail", + "fontFamily": "Yellowtail, cursive", + "slug": "yellowtail", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/yellowtail/v18/OZpGg_pnoDtINPfRIlLotlzNwED-b4g.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Yellowtail" + } + ] + }, + { + "name": "Yeon Sung", + "fontFamily": "Yeon Sung, system-ui", + "slug": "yeon-sung", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/yeonsung/v20/QldMNTpbohAGtsJvUn6xSVNazqx2xg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Yeon Sung" + } + ] + }, + { + "name": "Yeseva One", + "fontFamily": "Yeseva One, system-ui", + "slug": "yeseva-one", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/yesevaone/v20/OpNJno4ck8vc-xYpwWWxpipfWhXD00c.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Yeseva One" + } + ] + }, + { + "name": "Yesteryear", + "fontFamily": "Yesteryear, cursive", + "slug": "yesteryear", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/yesteryear/v14/dg4g_p78rroaKl8kRKo1r7wHTwonmyw.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Yesteryear" + } + ] + }, + { + "name": "Yomogi", + "fontFamily": "Yomogi, cursive", + "slug": "yomogi", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/yomogi/v8/VuJwdNrS2ZL7rpoPWIz5NIh-YA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Yomogi" + } + ] + }, + { + "name": "Yrsa", + "fontFamily": "Yrsa, serif", + "slug": "yrsa", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/yrsa/v20/wlprgwnQFlxs_wD3CFSMYmFaaCjASNNV9rRPfrKu.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Yrsa" + }, + { + "src": "http://fonts.gstatic.com/s/yrsa/v20/wlprgwnQFlxs_wD3CFSMYmFaaCieSNNV9rRPfrKu.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Yrsa" + }, + { + "src": "http://fonts.gstatic.com/s/yrsa/v20/wlprgwnQFlxs_wD3CFSMYmFaaCisSNNV9rRPfrKu.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Yrsa" + }, + { + "src": "http://fonts.gstatic.com/s/yrsa/v20/wlprgwnQFlxs_wD3CFSMYmFaaChAT9NV9rRPfrKu.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Yrsa" + }, + { + "src": "http://fonts.gstatic.com/s/yrsa/v20/wlprgwnQFlxs_wD3CFSMYmFaaCh5T9NV9rRPfrKu.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Yrsa" + }, + { + "src": "http://fonts.gstatic.com/s/yrsa/v20/wlptgwnQFlxs1QnF94zlCfv0bz1WC2UW_LBte6KuGEo.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Yrsa" + }, + { + "src": "http://fonts.gstatic.com/s/yrsa/v20/wlptgwnQFlxs1QnF94zlCfv0bz1WCzsW_LBte6KuGEo.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Yrsa" + }, + { + "src": "http://fonts.gstatic.com/s/yrsa/v20/wlptgwnQFlxs1QnF94zlCfv0bz1WCwkW_LBte6KuGEo.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Yrsa" + }, + { + "src": "http://fonts.gstatic.com/s/yrsa/v20/wlptgwnQFlxs1QnF94zlCfv0bz1WC-UR_LBte6KuGEo.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Yrsa" + }, + { + "src": "http://fonts.gstatic.com/s/yrsa/v20/wlptgwnQFlxs1QnF94zlCfv0bz1WC9wR_LBte6KuGEo.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Yrsa" + } + ] + }, + { + "name": "Ysabeau", + "fontFamily": "Ysabeau, sans-serif", + "slug": "ysabeau", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7OWCTYwI8Gcw6Oi.ttf", + "fontWeight": "100", + "fontStyle": "normal", + "fontFamily": "Ysabeau" + }, + { + "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7MWCDYwI8Gcw6Oi.ttf", + "fontWeight": "200", + "fontStyle": "normal", + "fontFamily": "Ysabeau" + }, + { + "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7PICDYwI8Gcw6Oi.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Ysabeau" + }, + { + "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7OWCDYwI8Gcw6Oi.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Ysabeau" + }, + { + "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7OkCDYwI8Gcw6Oi.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Ysabeau" + }, + { + "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7NIDzYwI8Gcw6Oi.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Ysabeau" + }, + { + "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7NxDzYwI8Gcw6Oi.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Ysabeau" + }, + { + "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7MWDzYwI8Gcw6Oi.ttf", + "fontWeight": "800", + "fontStyle": "normal", + "fontFamily": "Ysabeau" + }, + { + "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7M_DzYwI8Gcw6Oi.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Ysabeau" + }, + { + "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeS95yKcW-xrOiIUw.ttf", + "fontWeight": "100", + "fontStyle": "italic", + "fontFamily": "Ysabeau" + }, + { + "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeS15zKcW-xrOiIUw.ttf", + "fontWeight": "200", + "fontStyle": "italic", + "fontFamily": "Ysabeau" + }, + { + "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeS4BzKcW-xrOiIUw.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Ysabeau" + }, + { + "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeS95zKcW-xrOiIUw.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Ysabeau" + }, + { + "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeS-xzKcW-xrOiIUw.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Ysabeau" + }, + { + "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeSwB0KcW-xrOiIUw.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Ysabeau" + }, + { + "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeSzl0KcW-xrOiIUw.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Ysabeau" + }, + { + "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeS150KcW-xrOiIUw.ttf", + "fontWeight": "800", + "fontStyle": "italic", + "fontFamily": "Ysabeau" + }, + { + "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeS3d0KcW-xrOiIUw.ttf", + "fontWeight": "900", + "fontStyle": "italic", + "fontFamily": "Ysabeau" + } + ] + }, + { + "name": "Yuji Boku", + "fontFamily": "Yuji Boku, serif", + "slug": "yuji-boku", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/yujiboku/v5/P5sAzZybeNzXsA9xj1Fkjb2r2dgvJA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Yuji Boku" + } + ] + }, + { + "name": "Yuji Hentaigana Akari", + "fontFamily": "Yuji Hentaigana Akari, cursive", + "slug": "yuji-hentaigana-akari", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/yujihentaiganaakari/v11/cY9bfiyVT0VB6QuhWKOrpr6z58lnb_zYFnLIRTzODYALaA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Yuji Hentaigana Akari" + } + ] + }, + { + "name": "Yuji Hentaigana Akebono", + "fontFamily": "Yuji Hentaigana Akebono, cursive", + "slug": "yuji-hentaigana-akebono", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/yujihentaiganaakebono/v12/EJRGQhkhRNwM-RtitGUwh930GU_f5KAlkuL0wQy9NKXRzrrF.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Yuji Hentaigana Akebono" + } + ] + }, + { + "name": "Yuji Mai", + "fontFamily": "Yuji Mai, serif", + "slug": "yuji-mai", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/yujimai/v5/ZgNQjPxdJ7DEHrS0gC38hmHmNpCO.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Yuji Mai" + } + ] + }, + { + "name": "Yuji Syuku", + "fontFamily": "Yuji Syuku, serif", + "slug": "yuji-syuku", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/yujisyuku/v5/BngNUXdTV3vO6Lw5ApOPqPfgwqiA-Rk.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Yuji Syuku" + } + ] + }, + { + "name": "Yusei Magic", + "fontFamily": "Yusei Magic, sans-serif", + "slug": "yusei-magic", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/yuseimagic/v12/yYLt0hbAyuCmoo5wlhPkpjHR-tdfcIT_.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Yusei Magic" + } + ] + }, + { + "name": "ZCOOL KuaiLe", + "fontFamily": "ZCOOL KuaiLe, sans-serif", + "slug": "zcool-kuaile", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/zcoolkuaile/v19/tssqApdaRQokwFjFJjvM6h2WpozzoXhC2g.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "ZCOOL KuaiLe" + } + ] + }, + { + "name": "ZCOOL QingKe HuangYou", + "fontFamily": "ZCOOL QingKe HuangYou, sans-serif", + "slug": "zcool-qingke-huangyou", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/zcoolqingkehuangyou/v15/2Eb5L_R5IXJEWhD3AOhSvFC554MOOahI4mRIi_28c8bHWA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "ZCOOL QingKe HuangYou" + } + ] + }, + { + "name": "ZCOOL XiaoWei", + "fontFamily": "ZCOOL XiaoWei, sans-serif", + "slug": "zcool-xiaowei", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/zcoolxiaowei/v14/i7dMIFFrTRywPpUVX9_RJyM1YFKQHwyVd3U.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "ZCOOL XiaoWei" + } + ] + }, + { + "name": "Zen Antique", + "fontFamily": "Zen Antique, serif", + "slug": "zen-antique", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/zenantique/v12/AYCPpXPnd91Ma_Zf-Ri2JXJq7PKP5Z_G.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Zen Antique" + } + ] + }, + { + "name": "Zen Antique Soft", + "fontFamily": "Zen Antique Soft, serif", + "slug": "zen-antique-soft", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/zenantiquesoft/v12/DtV4JwqzSL1q_KwnEWMc_3xfgW6ihwBmkui5HNg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Zen Antique Soft" + } + ] + }, + { + "name": "Zen Dots", + "fontFamily": "Zen Dots, system-ui", + "slug": "zen-dots", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/zendots/v10/XRXX3ICfm00IGoesQeaETM_FcCIG.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Zen Dots" + } + ] + }, + { + "name": "Zen Kaku Gothic Antique", + "fontFamily": "Zen Kaku Gothic Antique, sans-serif", + "slug": "zen-kaku-gothic-antique", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/zenkakugothicantique/v13/6qLVKYkHvh-nlUpKPAdoVFBtfxDzIn1eCzpB22cM9TarWJtyZyGU.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Zen Kaku Gothic Antique" + }, + { + "src": "http://fonts.gstatic.com/s/zenkakugothicantique/v13/6qLQKYkHvh-nlUpKPAdoVFBtfxDzIn1eCzpB21-g3RKjc4d7.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Zen Kaku Gothic Antique" + }, + { + "src": "http://fonts.gstatic.com/s/zenkakugothicantique/v13/6qLVKYkHvh-nlUpKPAdoVFBtfxDzIn1eCzpB22dU9DarWJtyZyGU.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Zen Kaku Gothic Antique" + }, + { + "src": "http://fonts.gstatic.com/s/zenkakugothicantique/v13/6qLVKYkHvh-nlUpKPAdoVFBtfxDzIn1eCzpB22cc8jarWJtyZyGU.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Zen Kaku Gothic Antique" + }, + { + "src": "http://fonts.gstatic.com/s/zenkakugothicantique/v13/6qLVKYkHvh-nlUpKPAdoVFBtfxDzIn1eCzpB22ck8DarWJtyZyGU.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Zen Kaku Gothic Antique" + } + ] + }, + { + "name": "Zen Kaku Gothic New", + "fontFamily": "Zen Kaku Gothic New, sans-serif", + "slug": "zen-kaku-gothic-new", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/zenkakugothicnew/v13/gNMVW2drQpDw0GjzrVNFf_valaDBcznOqpdKaWTSTGlMyd8.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Zen Kaku Gothic New" + }, + { + "src": "http://fonts.gstatic.com/s/zenkakugothicnew/v13/gNMYW2drQpDw0GjzrVNFf_valaDBcznOkjtiTWz5UGA.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Zen Kaku Gothic New" + }, + { + "src": "http://fonts.gstatic.com/s/zenkakugothicnew/v13/gNMVW2drQpDw0GjzrVNFf_valaDBcznOqs9LaWTSTGlMyd8.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Zen Kaku Gothic New" + }, + { + "src": "http://fonts.gstatic.com/s/zenkakugothicnew/v13/gNMVW2drQpDw0GjzrVNFf_valaDBcznOqodNaWTSTGlMyd8.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Zen Kaku Gothic New" + }, + { + "src": "http://fonts.gstatic.com/s/zenkakugothicnew/v13/gNMVW2drQpDw0GjzrVNFf_valaDBcznOqr9PaWTSTGlMyd8.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Zen Kaku Gothic New" + } + ] + }, + { + "name": "Zen Kurenaido", + "fontFamily": "Zen Kurenaido, sans-serif", + "slug": "zen-kurenaido", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/zenkurenaido/v13/3XFsEr0515BK2u6UUptu_gWJZfz22PRLd0U.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Zen Kurenaido" + } + ] + }, + { + "name": "Zen Loop", + "fontFamily": "Zen Loop, system-ui", + "slug": "zen-loop", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/zenloop/v7/h0GrssK16UsnJwHsEK9zqwzX5vOG.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Zen Loop" + }, + { + "src": "http://fonts.gstatic.com/s/zenloop/v7/h0GtssK16UsnJwHsEJ9xoQj14-OGJ0w.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Zen Loop" + } + ] + }, + { + "name": "Zen Maru Gothic", + "fontFamily": "Zen Maru Gothic, sans-serif", + "slug": "zen-maru-gothic", + "category": "sans-serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/zenmarugothic/v13/o-0XIpIxzW5b-RxT-6A8jWAtCp-cQWpCPJqa_ajlvw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Zen Maru Gothic" + }, + { + "src": "http://fonts.gstatic.com/s/zenmarugothic/v13/o-0SIpIxzW5b-RxT-6A8jWAtCp-k7UJmNLGG9A.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Zen Maru Gothic" + }, + { + "src": "http://fonts.gstatic.com/s/zenmarugothic/v13/o-0XIpIxzW5b-RxT-6A8jWAtCp-cGWtCPJqa_ajlvw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Zen Maru Gothic" + }, + { + "src": "http://fonts.gstatic.com/s/zenmarugothic/v13/o-0XIpIxzW5b-RxT-6A8jWAtCp-cUW1CPJqa_ajlvw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Zen Maru Gothic" + }, + { + "src": "http://fonts.gstatic.com/s/zenmarugothic/v13/o-0XIpIxzW5b-RxT-6A8jWAtCp-caW9CPJqa_ajlvw.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Zen Maru Gothic" + } + ] + }, + { + "name": "Zen Old Mincho", + "fontFamily": "Zen Old Mincho, serif", + "slug": "zen-old-mincho", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/zenoldmincho/v11/tss0ApVaYytLwxTqcxfMyBveyYb3g31S2s8p.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Zen Old Mincho" + }, + { + "src": "http://fonts.gstatic.com/s/zenoldmincho/v11/tss3ApVaYytLwxTqcxfMyBveyb4Dqlla8dMgPgBu.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Zen Old Mincho" + }, + { + "src": "http://fonts.gstatic.com/s/zenoldmincho/v11/tss3ApVaYytLwxTqcxfMyBveyb4vrVla8dMgPgBu.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Zen Old Mincho" + }, + { + "src": "http://fonts.gstatic.com/s/zenoldmincho/v11/tss3ApVaYytLwxTqcxfMyBveyb5LrFla8dMgPgBu.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Zen Old Mincho" + }, + { + "src": "http://fonts.gstatic.com/s/zenoldmincho/v11/tss3ApVaYytLwxTqcxfMyBveyb5zrlla8dMgPgBu.ttf", + "fontWeight": "900", + "fontStyle": "normal", + "fontFamily": "Zen Old Mincho" + } + ] + }, + { + "name": "Zen Tokyo Zoo", + "fontFamily": "Zen Tokyo Zoo, system-ui", + "slug": "zen-tokyo-zoo", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/zentokyozoo/v7/NGSyv5ffC0J_BK6aFNtr6sRv8a1uRWe9amg.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Zen Tokyo Zoo" + } + ] + }, + { + "name": "Zeyada", + "fontFamily": "Zeyada, cursive", + "slug": "zeyada", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/zeyada/v15/11hAGpPTxVPUbgZDNGatWKaZ3g.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Zeyada" + } + ] + }, + { + "name": "Zhi Mang Xing", + "fontFamily": "Zhi Mang Xing, cursive", + "slug": "zhi-mang-xing", + "category": "handwriting", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/zhimangxing/v17/f0Xw0ey79sErYFtWQ9a2rq-g0actfektIJ0.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Zhi Mang Xing" + } + ] + }, + { + "name": "Zilla Slab", + "fontFamily": "Zilla Slab, serif", + "slug": "zilla-slab", + "category": "serif", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/zillaslab/v11/dFa5ZfeM_74wlPZtksIFYpEY2HSjWlhzbaw.ttf", + "fontWeight": "300", + "fontStyle": "normal", + "fontFamily": "Zilla Slab" + }, + { + "src": "http://fonts.gstatic.com/s/zillaslab/v11/dFanZfeM_74wlPZtksIFaj8CVHapXnp2fazkfg.ttf", + "fontWeight": "300", + "fontStyle": "italic", + "fontFamily": "Zilla Slab" + }, + { + "src": "http://fonts.gstatic.com/s/zillaslab/v11/dFa6ZfeM_74wlPZtksIFWj0w_HyIRlE.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Zilla Slab" + }, + { + "src": "http://fonts.gstatic.com/s/zillaslab/v11/dFa4ZfeM_74wlPZtksIFaj86-F6NVlFqdA.ttf", + "fontWeight": "400", + "fontStyle": "italic", + "fontFamily": "Zilla Slab" + }, + { + "src": "http://fonts.gstatic.com/s/zillaslab/v11/dFa5ZfeM_74wlPZtksIFYskZ2HSjWlhzbaw.ttf", + "fontWeight": "500", + "fontStyle": "normal", + "fontFamily": "Zilla Slab" + }, + { + "src": "http://fonts.gstatic.com/s/zillaslab/v11/dFanZfeM_74wlPZtksIFaj8CDHepXnp2fazkfg.ttf", + "fontWeight": "500", + "fontStyle": "italic", + "fontFamily": "Zilla Slab" + }, + { + "src": "http://fonts.gstatic.com/s/zillaslab/v11/dFa5ZfeM_74wlPZtksIFYuUe2HSjWlhzbaw.ttf", + "fontWeight": "600", + "fontStyle": "normal", + "fontFamily": "Zilla Slab" + }, + { + "src": "http://fonts.gstatic.com/s/zillaslab/v11/dFanZfeM_74wlPZtksIFaj8CIHCpXnp2fazkfg.ttf", + "fontWeight": "600", + "fontStyle": "italic", + "fontFamily": "Zilla Slab" + }, + { + "src": "http://fonts.gstatic.com/s/zillaslab/v11/dFa5ZfeM_74wlPZtksIFYoEf2HSjWlhzbaw.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Zilla Slab" + }, + { + "src": "http://fonts.gstatic.com/s/zillaslab/v11/dFanZfeM_74wlPZtksIFaj8CRHGpXnp2fazkfg.ttf", + "fontWeight": "700", + "fontStyle": "italic", + "fontFamily": "Zilla Slab" + } + ] + }, + { + "name": "Zilla Slab Highlight", + "fontFamily": "Zilla Slab Highlight, system-ui", + "slug": "zilla-slab-highlight", + "category": "display", + "fontFace": [ + { + "src": "http://fonts.gstatic.com/s/zillaslabhighlight/v17/gNMbW2BrTpK8-inLtBJgMMfbm6uNVDvRxhtIY2DwSXlM.ttf", + "fontWeight": "400", + "fontStyle": "normal", + "fontFamily": "Zilla Slab Highlight" + }, + { + "src": "http://fonts.gstatic.com/s/zillaslabhighlight/v17/gNMUW2BrTpK8-inLtBJgMMfbm6uNVDvRxiP0TET4YmVF0Mb6.ttf", + "fontWeight": "700", + "fontStyle": "normal", + "fontFamily": "Zilla Slab Highlight" + } + ] + } + ], + "categories": [ + "sans-serif", + "serif", + "display", + "handwriting", + "monospace" + ] +} \ No newline at end of file From 6f4edd015c56a1bdd536ba24d7385a1270e3844b Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Wed, 16 Aug 2023 18:24:28 -0300 Subject: [PATCH 007/108] update uninstall functionality to latest backend implementation --- .../components/global-styles/fonts-library-modal/context.js | 4 ++-- .../fonts-library-modal/library-font-details.js | 2 +- .../global-styles/fonts-library-modal/resolvers.js | 5 ++++- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/fonts-library-modal/context.js b/packages/edit-site/src/components/global-styles/fonts-library-modal/context.js index eca88f347a6de..d6ce60790ee9c 100644 --- a/packages/edit-site/src/components/global-styles/fonts-library-modal/context.js +++ b/packages/edit-site/src/components/global-styles/fonts-library-modal/context.js @@ -187,8 +187,8 @@ function FontLibraryProvider( { children } ) { const newLibraryFonts = await fetchInstallFonts( libraryFonts ); } - async function uninstallFont( font ) { - await fetchUninstallFonts( font ); + async function uninstallFont( fonts ) { + await fetchUninstallFonts( fonts ); refreshLibrary(); } diff --git a/packages/edit-site/src/components/global-styles/fonts-library-modal/library-font-details.js b/packages/edit-site/src/components/global-styles/fonts-library-modal/library-font-details.js index a8d259f16f225..2d70ca3ed0588 100644 --- a/packages/edit-site/src/components/global-styles/fonts-library-modal/library-font-details.js +++ b/packages/edit-site/src/components/global-styles/fonts-library-modal/library-font-details.js @@ -39,7 +39,7 @@ function LibraryFontDetails( { font, handleUnselectFont, canBeRemoved } ) { const handleConfirmUninstall = async () => { try { - await uninstallFont( font ); + await uninstallFont( [ font ] ); createSuccessNotice( __( `${ font?.name || font.fontFamily } was uninstalled.` ), { type: 'snackbar' } diff --git a/packages/edit-site/src/components/global-styles/fonts-library-modal/resolvers.js b/packages/edit-site/src/components/global-styles/fonts-library-modal/resolvers.js index 688421ccaf073..cd51764790db1 100644 --- a/packages/edit-site/src/components/global-styles/fonts-library-modal/resolvers.js +++ b/packages/edit-site/src/components/global-styles/fonts-library-modal/resolvers.js @@ -43,7 +43,10 @@ export async function fetchInstallFonts( data ) { return response; } -export async function fetchUninstallFonts( data ) { +export async function fetchUninstallFonts( fonts ) { + const data = { + fontFamilies: fonts + }; const config = { path: '/wp/v2/fonts', method: 'DELETE', From 0cc9566dce9c82f2424af9fc06c82fe8cfe2d7bd Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Thu, 17 Aug 2023 12:00:40 -0300 Subject: [PATCH 008/108] fix loadedUrls state --- .../components/global-styles/fonts-library-modal/context.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/fonts-library-modal/context.js b/packages/edit-site/src/components/global-styles/fonts-library-modal/context.js index d6ce60790ee9c..cb83213916c81 100644 --- a/packages/edit-site/src/components/global-styles/fonts-library-modal/context.js +++ b/packages/edit-site/src/components/global-styles/fonts-library-modal/context.js @@ -116,7 +116,7 @@ function FontLibraryProvider( { children } ) { useState( null ); // Demo - const loadedFontUrls = new Set(); + const [ loadedFontUrls ] = useState( new Set() ); const [ demoConfig, setDemoConfig ] = useState( DEFAULT_DEMO_CONFIG ); const updateDemoConfig = ( key, value ) => { setDemoConfig( { @@ -310,7 +310,6 @@ function FontLibraryProvider( { children } ) { // If the url is not valid we mark the font as loaded console.error( e ); } - loadedFontUrls.add( src ); }; From 969754597672d42c332b74ecd8d7d40dde48421b Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Thu, 17 Aug 2023 12:20:16 -0300 Subject: [PATCH 009/108] fixing library not refreshing after uninstall --- .../global-styles/fonts-library-modal/context.js | 1 + .../global-styles/fonts-library-modal/resolvers.js | 7 ++----- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/fonts-library-modal/context.js b/packages/edit-site/src/components/global-styles/fonts-library-modal/context.js index cb83213916c81..94a9fe3a63f8d 100644 --- a/packages/edit-site/src/components/global-styles/fonts-library-modal/context.js +++ b/packages/edit-site/src/components/global-styles/fonts-library-modal/context.js @@ -31,6 +31,7 @@ function FontLibraryProvider( { children } ) { const refreshLibrary = () => { setRefreshKey( ( prevKey ) => prevKey + 1 ); + console.log("refreshLibrary", refreshKey); }; const { records: posts = [] } = useEntityRecords( diff --git a/packages/edit-site/src/components/global-styles/fonts-library-modal/resolvers.js b/packages/edit-site/src/components/global-styles/fonts-library-modal/resolvers.js index cd51764790db1..60d6292b2a109 100644 --- a/packages/edit-site/src/components/global-styles/fonts-library-modal/resolvers.js +++ b/packages/edit-site/src/components/global-styles/fonts-library-modal/resolvers.js @@ -39,8 +39,7 @@ export async function fetchInstallFonts( data ) { body, }; - const response = await apiFetch( config ); - return response; + return apiFetch( config ); } export async function fetchUninstallFonts( fonts ) { @@ -52,7 +51,5 @@ export async function fetchUninstallFonts( fonts ) { method: 'DELETE', data, }; - const response = await apiFetch( config ); - const { fontFamilies } = await JSON.parse( response ); - return fontFamilies; + return apiFetch( config ); } From 3a6d6e2f83cd42a04e923d853da117d17640da4d Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Thu, 17 Aug 2023 14:33:04 -0300 Subject: [PATCH 010/108] move uninstall notification functionality to context --- .../fonts-library-modal/context.js | 27 +++++++++++++++---- .../library-font-details.js | 27 +++++-------------- 2 files changed, 28 insertions(+), 26 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/fonts-library-modal/context.js b/packages/edit-site/src/components/global-styles/fonts-library-modal/context.js index 94a9fe3a63f8d..5ab639e9d31bc 100644 --- a/packages/edit-site/src/components/global-styles/fonts-library-modal/context.js +++ b/packages/edit-site/src/components/global-styles/fonts-library-modal/context.js @@ -10,6 +10,9 @@ import { import { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor'; import { useSelect } from '@wordpress/data'; import { useEntityRecords } from '@wordpress/core-data'; +import { store as noticesStore } from '@wordpress/notices'; +import { useDispatch } from '@wordpress/data'; +import { __ } from '@wordpress/i18n'; /** * Internal dependencies @@ -27,11 +30,12 @@ import { setUIValuesNeeded, isUrlEncoded } from './utils'; export const FontLibraryContext = createContext( {} ); function FontLibraryProvider( { children } ) { + const { createErrorNotice, createSuccessNotice } = useDispatch( noticesStore ); + const [ refreshKey, setRefreshKey ] = useState( 0 ); const refreshLibrary = () => { setRefreshKey( ( prevKey ) => prevKey + 1 ); - console.log("refreshLibrary", refreshKey); }; const { records: posts = [] } = useEntityRecords( @@ -188,9 +192,22 @@ function FontLibraryProvider( { children } ) { const newLibraryFonts = await fetchInstallFonts( libraryFonts ); } - async function uninstallFont( fonts ) { - await fetchUninstallFonts( fonts ); - refreshLibrary(); + async function uninstallFonts( fonts ) { + try { + await fetchUninstallFonts( fonts ); + createSuccessNotice( + __( `Font families were uninstalled.` ), + { type: 'snackbar' } + ); + refreshLibrary(); + return true; + } catch ( e ) { + createErrorNotice( + __( 'Error uninstallind fonts.' ), + { type: 'snackbar' } + ); + return false; + } } const toggleActivateFont = ( font, face ) => { @@ -332,7 +349,7 @@ function FontLibraryProvider( { children } ) { googleFontsCategories, loadFontFaceAsset, installFonts, - uninstallFont, + uninstallFonts, toggleActivateFont, getAvailableFontsOutline, modalTabOepn, diff --git a/packages/edit-site/src/components/global-styles/fonts-library-modal/library-font-details.js b/packages/edit-site/src/components/global-styles/fonts-library-modal/library-font-details.js index 2d70ca3ed0588..2d54cd40a6923 100644 --- a/packages/edit-site/src/components/global-styles/fonts-library-modal/library-font-details.js +++ b/packages/edit-site/src/components/global-styles/fonts-library-modal/library-font-details.js @@ -10,8 +10,7 @@ import { __experimentalText as Text, __experimentalConfirmDialog as ConfirmDialog, } from '@wordpress/components'; -import { store as noticesStore } from '@wordpress/notices'; -import { useDispatch } from '@wordpress/data'; + /** * Internal dependencies @@ -21,10 +20,8 @@ import LibraryFontVariant from './library-font-variant'; import PreviewControls from './preview-controls'; function LibraryFontDetails( { font, handleUnselectFont, canBeRemoved } ) { - const { uninstallFont, isFontActivated } = useContext( FontLibraryContext ); + const { uninstallFonts, isFontActivated } = useContext( FontLibraryContext ); const [ isConfirmOpen, setIsConfirmOpen ] = useState( false ); - const { createErrorNotice, createSuccessNotice } = - useDispatch( noticesStore ); const fontFaces = font.fontFace && font.fontFace.length @@ -38,23 +35,11 @@ function LibraryFontDetails( { font, handleUnselectFont, canBeRemoved } ) { ]; const handleConfirmUninstall = async () => { - try { - await uninstallFont( [ font ] ); - createSuccessNotice( - __( `${ font?.name || font.fontFamily } was uninstalled.` ), - { type: 'snackbar' } - ); - } catch ( e ) { - createErrorNotice( - __( - `Error deleting font. ${ - font?.name || font.fontFamily - } could not be uninstalled.` - ), - { type: 'snackbar' } - ); + const result = await uninstallFonts( [ font ] ); + // If the font was succesfully uninstalled it is unselected + if ( result ) { + handleUnselectFont(); } - handleUnselectFont(); }; const handleUninstallClick = async () => { From 953f2c1e230c9eb8565e6342c2360a77ea00f97d Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Thu, 17 Aug 2023 14:44:26 -0300 Subject: [PATCH 011/108] Add notification on snackbar when installing fonts --- .../fonts-library-modal/context.js | 18 ++++++++++++++++-- .../fonts-library-modal/google-fonts.js | 1 + 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/fonts-library-modal/context.js b/packages/edit-site/src/components/global-styles/fonts-library-modal/context.js index 5ab639e9d31bc..7d5991fdc20c0 100644 --- a/packages/edit-site/src/components/global-styles/fonts-library-modal/context.js +++ b/packages/edit-site/src/components/global-styles/fonts-library-modal/context.js @@ -188,8 +188,22 @@ function FontLibraryProvider( { children } ) { return activatedFontsOutline[ slug ] || []; }; - async function installFonts( libraryFonts ) { - const newLibraryFonts = await fetchInstallFonts( libraryFonts ); + async function installFonts( fonts ) { + try { + await fetchInstallFonts( fonts ); + createSuccessNotice( + __( `Font families were installed succesfully.` ), + { type: 'snackbar' } + ); + refreshLibrary(); + return true; + } catch ( e ) { + createErrorNotice( + __( 'Error installing fonts.' ), + { type: 'snackbar' } + ); + return false; + } } async function uninstallFonts( fonts ) { diff --git a/packages/edit-site/src/components/global-styles/fonts-library-modal/google-fonts.js b/packages/edit-site/src/components/global-styles/fonts-library-modal/google-fonts.js index 32a38f272e412..17cea17683c0c 100644 --- a/packages/edit-site/src/components/global-styles/fonts-library-modal/google-fonts.js +++ b/packages/edit-site/src/components/global-styles/fonts-library-modal/google-fonts.js @@ -109,6 +109,7 @@ function GoogleFonts() { setIsSaving( true ); await installFonts( newFonts ); setIsSaving( false ); + setFontSelected( null ); setNewFonts( [] ); }; From 626b04c135ae3510ba6c4949ce8afbcdae4ce299 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Thu, 17 Aug 2023 14:53:52 -0300 Subject: [PATCH 012/108] lint js --- .../fonts-library-modal/context.js | 24 +++++++++---------- .../library-font-details.js | 4 ++-- .../fonts-library-modal/resolvers.js | 4 ++-- .../global-styles/typogrphy-elements.js | 2 +- 4 files changed, 16 insertions(+), 18 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/fonts-library-modal/context.js b/packages/edit-site/src/components/global-styles/fonts-library-modal/context.js index 7d5991fdc20c0..f3d06d07dbad2 100644 --- a/packages/edit-site/src/components/global-styles/fonts-library-modal/context.js +++ b/packages/edit-site/src/components/global-styles/fonts-library-modal/context.js @@ -30,7 +30,8 @@ import { setUIValuesNeeded, isUrlEncoded } from './utils'; export const FontLibraryContext = createContext( {} ); function FontLibraryProvider( { children } ) { - const { createErrorNotice, createSuccessNotice } = useDispatch( noticesStore ); + const { createErrorNotice, createSuccessNotice } = + useDispatch( noticesStore ); const [ refreshKey, setRefreshKey ] = useState( 0 ); @@ -198,10 +199,9 @@ function FontLibraryProvider( { children } ) { refreshLibrary(); return true; } catch ( e ) { - createErrorNotice( - __( 'Error installing fonts.' ), - { type: 'snackbar' } - ); + createErrorNotice( __( 'Error installing fonts.' ), { + type: 'snackbar', + } ); return false; } } @@ -209,17 +209,15 @@ function FontLibraryProvider( { children } ) { async function uninstallFonts( fonts ) { try { await fetchUninstallFonts( fonts ); - createSuccessNotice( - __( `Font families were uninstalled.` ), - { type: 'snackbar' } - ); + createSuccessNotice( __( `Font families were uninstalled.` ), { + type: 'snackbar', + } ); refreshLibrary(); return true; } catch ( e ) { - createErrorNotice( - __( 'Error uninstallind fonts.' ), - { type: 'snackbar' } - ); + createErrorNotice( __( 'Error uninstallind fonts.' ), { + type: 'snackbar', + } ); return false; } } diff --git a/packages/edit-site/src/components/global-styles/fonts-library-modal/library-font-details.js b/packages/edit-site/src/components/global-styles/fonts-library-modal/library-font-details.js index 2d54cd40a6923..df3403eb61197 100644 --- a/packages/edit-site/src/components/global-styles/fonts-library-modal/library-font-details.js +++ b/packages/edit-site/src/components/global-styles/fonts-library-modal/library-font-details.js @@ -11,7 +11,6 @@ import { __experimentalConfirmDialog as ConfirmDialog, } from '@wordpress/components'; - /** * Internal dependencies */ @@ -20,7 +19,8 @@ import LibraryFontVariant from './library-font-variant'; import PreviewControls from './preview-controls'; function LibraryFontDetails( { font, handleUnselectFont, canBeRemoved } ) { - const { uninstallFonts, isFontActivated } = useContext( FontLibraryContext ); + const { uninstallFonts, isFontActivated } = + useContext( FontLibraryContext ); const [ isConfirmOpen, setIsConfirmOpen ] = useState( false ); const fontFaces = diff --git a/packages/edit-site/src/components/global-styles/fonts-library-modal/resolvers.js b/packages/edit-site/src/components/global-styles/fonts-library-modal/resolvers.js index 60d6292b2a109..cdf316fff0bdd 100644 --- a/packages/edit-site/src/components/global-styles/fonts-library-modal/resolvers.js +++ b/packages/edit-site/src/components/global-styles/fonts-library-modal/resolvers.js @@ -43,8 +43,8 @@ export async function fetchInstallFonts( data ) { } export async function fetchUninstallFonts( fonts ) { - const data = { - fontFamilies: fonts + const data = { + fontFamilies: fonts, }; const config = { path: '/wp/v2/fonts', diff --git a/packages/edit-site/src/components/global-styles/typogrphy-elements.js b/packages/edit-site/src/components/global-styles/typogrphy-elements.js index b4637a8c82f81..70a61ce3f1fdb 100644 --- a/packages/edit-site/src/components/global-styles/typogrphy-elements.js +++ b/packages/edit-site/src/components/global-styles/typogrphy-elements.js @@ -16,7 +16,7 @@ import { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor'; import { NavigationButtonAsItem } from './navigation-button'; import Subtitle from './subtitle'; -import { unlock } from "../../lock-unlock"; +import { unlock } from '../../lock-unlock'; const { useGlobalStyle } = unlock( blockEditorPrivateApis ); function ElementItem( { parentMenu, element, label } ) { From de8c186e0387ec98883168d7e24663595af0b8c5 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Tue, 22 Aug 2023 17:28:17 -0300 Subject: [PATCH 013/108] renaming FontS Library to Font Library --- .../font-library/class-wp-rest-font-library-controller.php | 2 +- .../edit-site/src/components/global-styles/font-families.js | 6 +++--- .../src/components/global-styles/font-family-item.js | 2 +- .../constants.js | 0 .../{fonts-library-modal => font-library-modal}/context.js | 0 .../font-card.js | 0 .../font-demo.js | 0 .../font-variant.js | 0 .../fonts-grid.js | 0 .../google-font-details.js | 0 .../google-font-variant.js | 0 .../google-fonts.js | 0 .../{fonts-library-modal => font-library-modal}/index.js | 6 +++--- .../installed-fonts.js | 0 .../library-font-card.js | 0 .../library-font-details.js | 0 .../library-font-variant.js | 0 .../local-font-variant.js | 0 .../local-fonts.js | 0 .../preview-controls.js | 0 .../resolvers.js | 0 .../{fonts-library-modal => font-library-modal}/style.scss | 2 +- .../tab-layout.js | 0 .../{fonts-library-modal => font-library-modal}/utils.js | 0 packages/edit-site/src/style.scss | 2 +- 25 files changed, 10 insertions(+), 10 deletions(-) rename packages/edit-site/src/components/global-styles/{fonts-library-modal => font-library-modal}/constants.js (100%) rename packages/edit-site/src/components/global-styles/{fonts-library-modal => font-library-modal}/context.js (100%) rename packages/edit-site/src/components/global-styles/{fonts-library-modal => font-library-modal}/font-card.js (100%) rename packages/edit-site/src/components/global-styles/{fonts-library-modal => font-library-modal}/font-demo.js (100%) rename packages/edit-site/src/components/global-styles/{fonts-library-modal => font-library-modal}/font-variant.js (100%) rename packages/edit-site/src/components/global-styles/{fonts-library-modal => font-library-modal}/fonts-grid.js (100%) rename packages/edit-site/src/components/global-styles/{fonts-library-modal => font-library-modal}/google-font-details.js (100%) rename packages/edit-site/src/components/global-styles/{fonts-library-modal => font-library-modal}/google-font-variant.js (100%) rename packages/edit-site/src/components/global-styles/{fonts-library-modal => font-library-modal}/google-fonts.js (100%) rename packages/edit-site/src/components/global-styles/{fonts-library-modal => font-library-modal}/index.js (90%) rename packages/edit-site/src/components/global-styles/{fonts-library-modal => font-library-modal}/installed-fonts.js (100%) rename packages/edit-site/src/components/global-styles/{fonts-library-modal => font-library-modal}/library-font-card.js (100%) rename packages/edit-site/src/components/global-styles/{fonts-library-modal => font-library-modal}/library-font-details.js (100%) rename packages/edit-site/src/components/global-styles/{fonts-library-modal => font-library-modal}/library-font-variant.js (100%) rename packages/edit-site/src/components/global-styles/{fonts-library-modal => font-library-modal}/local-font-variant.js (100%) rename packages/edit-site/src/components/global-styles/{fonts-library-modal => font-library-modal}/local-fonts.js (100%) rename packages/edit-site/src/components/global-styles/{fonts-library-modal => font-library-modal}/preview-controls.js (100%) rename packages/edit-site/src/components/global-styles/{fonts-library-modal => font-library-modal}/resolvers.js (100%) rename packages/edit-site/src/components/global-styles/{fonts-library-modal => font-library-modal}/style.scss (98%) rename packages/edit-site/src/components/global-styles/{fonts-library-modal => font-library-modal}/tab-layout.js (100%) rename packages/edit-site/src/components/global-styles/{fonts-library-modal => font-library-modal}/utils.js (100%) diff --git a/lib/experimental/fonts/font-library/class-wp-rest-font-library-controller.php b/lib/experimental/fonts/font-library/class-wp-rest-font-library-controller.php index 3f2be042ba6c5..789c222624f2b 100644 --- a/lib/experimental/fonts/font-library/class-wp-rest-font-library-controller.php +++ b/lib/experimental/fonts/font-library/class-wp-rest-font-library-controller.php @@ -79,7 +79,7 @@ public function register_routes() { array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'google_fonts' ), - 'permission_callback' => array( $this, 'update_fonts_library_permissions_check' ), + 'permission_callback' => array( $this, 'update_font_library_permissions_check' ), ), ) ); diff --git a/packages/edit-site/src/components/global-styles/font-families.js b/packages/edit-site/src/components/global-styles/font-families.js index cc7724efa9c76..030fbae10fc71 100644 --- a/packages/edit-site/src/components/global-styles/font-families.js +++ b/packages/edit-site/src/components/global-styles/font-families.js @@ -17,8 +17,8 @@ import { useContext } from '@wordpress/element'; */ import FontLibraryProvider, { FontLibraryContext, -} from './fonts-library-modal/context'; -import FontsLibraryModal from './fonts-library-modal'; +} from './font-library-modal/context'; +import FontLibraryModal from './font-library-modal'; import FontFamilyItem from './font-family-item'; import Subtitle from './subtitle'; @@ -29,7 +29,7 @@ function FontFamilies() { return ( <> { !! modalTabOepn && ( - toggleModal() } initialTabName={ modalTabOepn } /> diff --git a/packages/edit-site/src/components/global-styles/font-family-item.js b/packages/edit-site/src/components/global-styles/font-family-item.js index 4efb0e0dec2b2..0ce6d65954656 100644 --- a/packages/edit-site/src/components/global-styles/font-family-item.js +++ b/packages/edit-site/src/components/global-styles/font-family-item.js @@ -12,7 +12,7 @@ import { useContext } from '@wordpress/element'; /** * Internal dependencies */ -import { FontLibraryContext } from './fonts-library-modal/context'; +import { FontLibraryContext } from './font-library-modal/context'; function FontFamilyItem( { font } ) { const { handleSetLibraryFontSelected, toggleModal } = diff --git a/packages/edit-site/src/components/global-styles/fonts-library-modal/constants.js b/packages/edit-site/src/components/global-styles/font-library-modal/constants.js similarity index 100% rename from packages/edit-site/src/components/global-styles/fonts-library-modal/constants.js rename to packages/edit-site/src/components/global-styles/font-library-modal/constants.js diff --git a/packages/edit-site/src/components/global-styles/fonts-library-modal/context.js b/packages/edit-site/src/components/global-styles/font-library-modal/context.js similarity index 100% rename from packages/edit-site/src/components/global-styles/fonts-library-modal/context.js rename to packages/edit-site/src/components/global-styles/font-library-modal/context.js diff --git a/packages/edit-site/src/components/global-styles/fonts-library-modal/font-card.js b/packages/edit-site/src/components/global-styles/font-library-modal/font-card.js similarity index 100% rename from packages/edit-site/src/components/global-styles/fonts-library-modal/font-card.js rename to packages/edit-site/src/components/global-styles/font-library-modal/font-card.js diff --git a/packages/edit-site/src/components/global-styles/fonts-library-modal/font-demo.js b/packages/edit-site/src/components/global-styles/font-library-modal/font-demo.js similarity index 100% rename from packages/edit-site/src/components/global-styles/fonts-library-modal/font-demo.js rename to packages/edit-site/src/components/global-styles/font-library-modal/font-demo.js diff --git a/packages/edit-site/src/components/global-styles/fonts-library-modal/font-variant.js b/packages/edit-site/src/components/global-styles/font-library-modal/font-variant.js similarity index 100% rename from packages/edit-site/src/components/global-styles/fonts-library-modal/font-variant.js rename to packages/edit-site/src/components/global-styles/font-library-modal/font-variant.js diff --git a/packages/edit-site/src/components/global-styles/fonts-library-modal/fonts-grid.js b/packages/edit-site/src/components/global-styles/font-library-modal/fonts-grid.js similarity index 100% rename from packages/edit-site/src/components/global-styles/fonts-library-modal/fonts-grid.js rename to packages/edit-site/src/components/global-styles/font-library-modal/fonts-grid.js diff --git a/packages/edit-site/src/components/global-styles/fonts-library-modal/google-font-details.js b/packages/edit-site/src/components/global-styles/font-library-modal/google-font-details.js similarity index 100% rename from packages/edit-site/src/components/global-styles/fonts-library-modal/google-font-details.js rename to packages/edit-site/src/components/global-styles/font-library-modal/google-font-details.js diff --git a/packages/edit-site/src/components/global-styles/fonts-library-modal/google-font-variant.js b/packages/edit-site/src/components/global-styles/font-library-modal/google-font-variant.js similarity index 100% rename from packages/edit-site/src/components/global-styles/fonts-library-modal/google-font-variant.js rename to packages/edit-site/src/components/global-styles/font-library-modal/google-font-variant.js diff --git a/packages/edit-site/src/components/global-styles/fonts-library-modal/google-fonts.js b/packages/edit-site/src/components/global-styles/font-library-modal/google-fonts.js similarity index 100% rename from packages/edit-site/src/components/global-styles/fonts-library-modal/google-fonts.js rename to packages/edit-site/src/components/global-styles/font-library-modal/google-fonts.js diff --git a/packages/edit-site/src/components/global-styles/fonts-library-modal/index.js b/packages/edit-site/src/components/global-styles/font-library-modal/index.js similarity index 90% rename from packages/edit-site/src/components/global-styles/fonts-library-modal/index.js rename to packages/edit-site/src/components/global-styles/font-library-modal/index.js index 27c5378fba9e6..67629c38d4ac9 100644 --- a/packages/edit-site/src/components/global-styles/fonts-library-modal/index.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/index.js @@ -12,7 +12,7 @@ import GoogleFonts from './google-fonts'; import LocalFonts from './local-fonts'; import { MODAL_TABS } from './constants'; -function FontsLibraryModal( { +function FontLibraryModal( { onRequestClose, initialTabName = 'installed-fonts', } ) { @@ -21,7 +21,7 @@ function FontsLibraryModal( { title={ __( 'Fonts' ) } onRequestClose={ onRequestClose } isFullScreen={ true } - className="fonts-library-modal" + className="font-library-modal" > Date: Tue, 22 Aug 2023 17:36:51 -0300 Subject: [PATCH 014/108] Removing google_fonts api endpoint --- .../class-wp-rest-font-library-controller.php | 29 - .../fonts/font-library/google-fonts.json | 46719 ---------------- 2 files changed, 46748 deletions(-) delete mode 100644 lib/experimental/fonts/font-library/google-fonts.json diff --git a/lib/experimental/fonts/font-library/class-wp-rest-font-library-controller.php b/lib/experimental/fonts/font-library/class-wp-rest-font-library-controller.php index 789c222624f2b..c740844ac9521 100644 --- a/lib/experimental/fonts/font-library/class-wp-rest-font-library-controller.php +++ b/lib/experimental/fonts/font-library/class-wp-rest-font-library-controller.php @@ -68,35 +68,6 @@ public function register_routes() { ) ); - /* - * DO NOT MERGE: This is a temporary endpoint to allow testing googe fonts installation. - * See: https://github.com/WordPress/gutenberg/issues/52795 - */ - register_rest_route( - $this->namespace, - '/' . $this->rest_base . '/google_fonts', - array( - array( - 'methods' => WP_REST_Server::READABLE, - 'callback' => array( $this, 'google_fonts' ), - 'permission_callback' => array( $this, 'update_font_library_permissions_check' ), - ), - ) - ); - - - } - - /* - * DO NOT MERGE: This is a temporary endpoint to allow testing googe fonts installation. - * See: https://github.com/WordPress/gutenberg/issues/52795 - */ - public function google_fonts() { - $file = file_get_contents( - path_join( dirname( __FILE__ ), 'google-fonts.json' ) - ); - $json_data = json_decode($file, true); - return new WP_REST_Response($json_data, 200); } /** diff --git a/lib/experimental/fonts/font-library/google-fonts.json b/lib/experimental/fonts/font-library/google-fonts.json deleted file mode 100644 index 1a2bc0ea45201..0000000000000 --- a/lib/experimental/fonts/font-library/google-fonts.json +++ /dev/null @@ -1,46719 +0,0 @@ -{ - "fontFamilies": [ - { - "name": "ABeeZee", - "fontFamily": "ABeeZee, sans-serif", - "slug": "abeezee", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/abeezee/v22/esDR31xSG-6AGleN6tKukbcHCpE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "ABeeZee" - }, - { - "src": "http://fonts.gstatic.com/s/abeezee/v22/esDT31xSG-6AGleN2tCklZUCGpG-GQ.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "ABeeZee" - } - ] - }, - { - "name": "Abel", - "fontFamily": "Abel, sans-serif", - "slug": "abel", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/abel/v18/MwQ5bhbm2POE6VhLPJp6qGI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Abel" - } - ] - }, - { - "name": "Abhaya Libre", - "fontFamily": "Abhaya Libre, serif", - "slug": "abhaya-libre", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/abhayalibre/v14/e3tmeuGtX-Co5MNzeAOqinEge0PWovdU4w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Abhaya Libre" - }, - { - "src": "http://fonts.gstatic.com/s/abhayalibre/v14/e3t5euGtX-Co5MNzeAOqinEYj2ryqtxI6oYtBA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Abhaya Libre" - }, - { - "src": "http://fonts.gstatic.com/s/abhayalibre/v14/e3t5euGtX-Co5MNzeAOqinEYo23yqtxI6oYtBA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Abhaya Libre" - }, - { - "src": "http://fonts.gstatic.com/s/abhayalibre/v14/e3t5euGtX-Co5MNzeAOqinEYx2zyqtxI6oYtBA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Abhaya Libre" - }, - { - "src": "http://fonts.gstatic.com/s/abhayalibre/v14/e3t5euGtX-Co5MNzeAOqinEY22_yqtxI6oYtBA.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Abhaya Libre" - } - ] - }, - { - "name": "Aboreto", - "fontFamily": "Aboreto, system-ui", - "slug": "aboreto", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/aboreto/v2/5DCXAKLhwDDQ4N8blKTeA2yuxSY.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Aboreto" - } - ] - }, - { - "name": "Abril Fatface", - "fontFamily": "Abril Fatface, system-ui", - "slug": "abril-fatface", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/abrilfatface/v19/zOL64pLDlL1D99S8g8PtiKchm-BsjOLhZBY.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Abril Fatface" - } - ] - }, - { - "name": "Abyssinica SIL", - "fontFamily": "Abyssinica SIL, serif", - "slug": "abyssinica-sil", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/abyssinicasil/v5/oY1H8ezOqK7iI3rK_45WKoc8J6UZBFOVAXuI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Abyssinica SIL" - } - ] - }, - { - "name": "Aclonica", - "fontFamily": "Aclonica, sans-serif", - "slug": "aclonica", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/aclonica/v18/K2FyfZJVlfNNSEBXGb7TCI6oBjLz.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Aclonica" - } - ] - }, - { - "name": "Acme", - "fontFamily": "Acme, sans-serif", - "slug": "acme", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/acme/v21/RrQfboBx-C5_bx3Lb23lzLk.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Acme" - } - ] - }, - { - "name": "Actor", - "fontFamily": "Actor, sans-serif", - "slug": "actor", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/actor/v17/wEOzEBbCkc5cO3ekXygtUMIO.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Actor" - } - ] - }, - { - "name": "Adamina", - "fontFamily": "Adamina, serif", - "slug": "adamina", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/adamina/v21/j8_r6-DH1bjoc-dwu-reETl4Bno.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Adamina" - } - ] - }, - { - "name": "Advent Pro", - "fontFamily": "Advent Pro, sans-serif", - "slug": "advent-pro", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLQyJPTJoonw1aBA.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Advent Pro" - }, - { - "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLwyNPTJoonw1aBA.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Advent Pro" - }, - { - "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLHSNPTJoonw1aBA.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Advent Pro" - }, - { - "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLQyNPTJoonw1aBA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Advent Pro" - }, - { - "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLcSNPTJoonw1aBA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Advent Pro" - }, - { - "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLnSRPTJoonw1aBA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Advent Pro" - }, - { - "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLpCRPTJoonw1aBA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Advent Pro" - }, - { - "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLwyRPTJoonw1aBA.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Advent Pro" - }, - { - "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpL6iRPTJoonw1aBA.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Advent Pro" - }, - { - "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2CnDpAsvQhKBH4C.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Advent Pro" - }, - { - "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2AnD5AsvQhKBH4C.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Advent Pro" - }, - { - "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2D5D5AsvQhKBH4C.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Advent Pro" - }, - { - "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2CnD5AsvQhKBH4C.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Advent Pro" - }, - { - "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2CVD5AsvQhKBH4C.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Advent Pro" - }, - { - "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2B5CJAsvQhKBH4C.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Advent Pro" - }, - { - "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2BACJAsvQhKBH4C.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Advent Pro" - }, - { - "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2AnCJAsvQhKBH4C.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Advent Pro" - }, - { - "src": "http://fonts.gstatic.com/s/adventpro/v20/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2AOCJAsvQhKBH4C.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Advent Pro" - } - ] - }, - { - "name": "Aguafina Script", - "fontFamily": "Aguafina Script, cursive", - "slug": "aguafina-script", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/aguafinascript/v17/If2QXTv_ZzSxGIO30LemWEOmt1bHqs4pgicOrg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Aguafina Script" - } - ] - }, - { - "name": "Akaya Kanadaka", - "fontFamily": "Akaya Kanadaka, system-ui", - "slug": "akaya-kanadaka", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/akayakanadaka/v16/N0bM2S5CPO5oOQqvazoRRb-8-PfRS5VBBSSF.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Akaya Kanadaka" - } - ] - }, - { - "name": "Akaya Telivigala", - "fontFamily": "Akaya Telivigala, system-ui", - "slug": "akaya-telivigala", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/akayatelivigala/v22/lJwc-oo_iG9wXqU3rCTD395tp0uifdLdsIH0YH8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Akaya Telivigala" - } - ] - }, - { - "name": "Akronim", - "fontFamily": "Akronim, system-ui", - "slug": "akronim", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/akronim/v23/fdN-9sqWtWZZlHRp-gBxkFYN-a8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Akronim" - } - ] - }, - { - "name": "Akshar", - "fontFamily": "Akshar, sans-serif", - "slug": "akshar", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/akshar/v9/Yq6I-LyHWTfz9rGoqDaUbHvhkAUsSSgFy9CY94XsnPc.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Akshar" - }, - { - "src": "http://fonts.gstatic.com/s/akshar/v9/Yq6I-LyHWTfz9rGoqDaUbHvhkAUsSXYFy9CY94XsnPc.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Akshar" - }, - { - "src": "http://fonts.gstatic.com/s/akshar/v9/Yq6I-LyHWTfz9rGoqDaUbHvhkAUsSUQFy9CY94XsnPc.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Akshar" - }, - { - "src": "http://fonts.gstatic.com/s/akshar/v9/Yq6I-LyHWTfz9rGoqDaUbHvhkAUsSagCy9CY94XsnPc.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Akshar" - }, - { - "src": "http://fonts.gstatic.com/s/akshar/v9/Yq6I-LyHWTfz9rGoqDaUbHvhkAUsSZECy9CY94XsnPc.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Akshar" - } - ] - }, - { - "name": "Aladin", - "fontFamily": "Aladin, cursive", - "slug": "aladin", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/aladin/v19/ZgNSjPJFPrvJV5f16Sf4pGT2Ng.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Aladin" - } - ] - }, - { - "name": "Alata", - "fontFamily": "Alata, sans-serif", - "slug": "alata", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/alata/v9/PbytFmztEwbIofe6xKcRQEOX.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Alata" - } - ] - }, - { - "name": "Alatsi", - "fontFamily": "Alatsi, sans-serif", - "slug": "alatsi", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/alatsi/v11/TK3iWkUJAxQ2nLNGHjUHte5fKg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Alatsi" - } - ] - }, - { - "name": "Albert Sans", - "fontFamily": "Albert Sans, sans-serif", - "slug": "albert-sans", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHq5L_rI32TxAj1g.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Albert Sans" - }, - { - "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHK5P_rI32TxAj1g.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Albert Sans" - }, - { - "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSH9ZP_rI32TxAj1g.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Albert Sans" - }, - { - "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHq5P_rI32TxAj1g.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Albert Sans" - }, - { - "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHmZP_rI32TxAj1g.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Albert Sans" - }, - { - "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHdZT_rI32TxAj1g.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Albert Sans" - }, - { - "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHTJT_rI32TxAj1g.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Albert Sans" - }, - { - "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHK5T_rI32TxAj1g.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Albert Sans" - }, - { - "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHApT_rI32TxAj1g.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Albert Sans" - }, - { - "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9AX7ofybRUz1r5t.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Albert Sans" - }, - { - "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9CX74fybRUz1r5t.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Albert Sans" - }, - { - "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9BJ74fybRUz1r5t.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Albert Sans" - }, - { - "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9AX74fybRUz1r5t.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Albert Sans" - }, - { - "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9Al74fybRUz1r5t.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Albert Sans" - }, - { - "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9DJ6IfybRUz1r5t.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Albert Sans" - }, - { - "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9Dw6IfybRUz1r5t.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Albert Sans" - }, - { - "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9CX6IfybRUz1r5t.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Albert Sans" - }, - { - "src": "http://fonts.gstatic.com/s/albertsans/v1/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9C-6IfybRUz1r5t.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Albert Sans" - } - ] - }, - { - "name": "Aldrich", - "fontFamily": "Aldrich, sans-serif", - "slug": "aldrich", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/aldrich/v17/MCoTzAn-1s3IGyJMZaAS3pP5H_E.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Aldrich" - } - ] - }, - { - "name": "Alef", - "fontFamily": "Alef, sans-serif", - "slug": "alef", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/alef/v21/FeVfS0NQpLYgrjJbC5FxxbU.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Alef" - }, - { - "src": "http://fonts.gstatic.com/s/alef/v21/FeVQS0NQpLYglo50L5la2bxii28.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Alef" - } - ] - }, - { - "name": "Alegreya", - "fontFamily": "Alegreya, serif", - "slug": "alegreya", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/alegreya/v35/4UacrEBBsBhlBjvfkQjt71kZfyBzPgNG9hUI_KCisSGVrw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Alegreya" - }, - { - "src": "http://fonts.gstatic.com/s/alegreya/v35/4UacrEBBsBhlBjvfkQjt71kZfyBzPgNGxBUI_KCisSGVrw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Alegreya" - }, - { - "src": "http://fonts.gstatic.com/s/alegreya/v35/4UacrEBBsBhlBjvfkQjt71kZfyBzPgNGKBII_KCisSGVrw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Alegreya" - }, - { - "src": "http://fonts.gstatic.com/s/alegreya/v35/4UacrEBBsBhlBjvfkQjt71kZfyBzPgNGERII_KCisSGVrw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Alegreya" - }, - { - "src": "http://fonts.gstatic.com/s/alegreya/v35/4UacrEBBsBhlBjvfkQjt71kZfyBzPgNGdhII_KCisSGVrw.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Alegreya" - }, - { - "src": "http://fonts.gstatic.com/s/alegreya/v35/4UacrEBBsBhlBjvfkQjt71kZfyBzPgNGXxII_KCisSGVrw.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Alegreya" - }, - { - "src": "http://fonts.gstatic.com/s/alegreya/v35/4UaSrEBBsBhlBjvfkSLk3abBFkvpkARTPlbgv6qmkySFr9V9.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Alegreya" - }, - { - "src": "http://fonts.gstatic.com/s/alegreya/v35/4UaSrEBBsBhlBjvfkSLk3abBFkvpkARTPlbSv6qmkySFr9V9.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Alegreya" - }, - { - "src": "http://fonts.gstatic.com/s/alegreya/v35/4UaSrEBBsBhlBjvfkSLk3abBFkvpkARTPlY-uKqmkySFr9V9.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Alegreya" - }, - { - "src": "http://fonts.gstatic.com/s/alegreya/v35/4UaSrEBBsBhlBjvfkSLk3abBFkvpkARTPlYHuKqmkySFr9V9.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Alegreya" - }, - { - "src": "http://fonts.gstatic.com/s/alegreya/v35/4UaSrEBBsBhlBjvfkSLk3abBFkvpkARTPlZguKqmkySFr9V9.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Alegreya" - }, - { - "src": "http://fonts.gstatic.com/s/alegreya/v35/4UaSrEBBsBhlBjvfkSLk3abBFkvpkARTPlZJuKqmkySFr9V9.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Alegreya" - } - ] - }, - { - "name": "Alegreya SC", - "fontFamily": "Alegreya SC, serif", - "slug": "alegreya-sc", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/alegreyasc/v25/taiOGmRtCJ62-O0HhNEa-a6o05E5abe_.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Alegreya SC" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasc/v25/taiMGmRtCJ62-O0HhNEa-Z6q2ZUbbKe_DGs.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Alegreya SC" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasc/v25/taiTGmRtCJ62-O0HhNEa-ZZc-rUxQqu2FXKD.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Alegreya SC" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasc/v25/taiRGmRtCJ62-O0HhNEa-Z6q4WEySK-UEGKDBz4.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Alegreya SC" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasc/v25/taiTGmRtCJ62-O0HhNEa-ZYU_LUxQqu2FXKD.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Alegreya SC" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasc/v25/taiRGmRtCJ62-O0HhNEa-Z6q4Sk0SK-UEGKDBz4.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Alegreya SC" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasc/v25/taiTGmRtCJ62-O0HhNEa-ZYI_7UxQqu2FXKD.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Alegreya SC" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasc/v25/taiRGmRtCJ62-O0HhNEa-Z6q4TU3SK-UEGKDBz4.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Alegreya SC" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasc/v25/taiTGmRtCJ62-O0HhNEa-ZYs_rUxQqu2FXKD.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Alegreya SC" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasc/v25/taiRGmRtCJ62-O0HhNEa-Z6q4RE2SK-UEGKDBz4.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Alegreya SC" - } - ] - }, - { - "name": "Alegreya Sans", - "fontFamily": "Alegreya Sans, sans-serif", - "slug": "alegreya-sans", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/alegreyasans/v24/5aUt9_-1phKLFgshYDvh6Vwt5TltuGdShm5bsg.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Alegreya Sans" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasans/v24/5aUv9_-1phKLFgshYDvh6Vwt7V9V3G1WpGtLsgu7.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Alegreya Sans" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasans/v24/5aUu9_-1phKLFgshYDvh6Vwt5fFPmE18imdCqxI.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Alegreya Sans" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasans/v24/5aUo9_-1phKLFgshYDvh6Vwt7V9VFE92jkVHuxKiBA.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Alegreya Sans" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasans/v24/5aUz9_-1phKLFgshYDvh6Vwt3V1nvEVXlm4.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Alegreya Sans" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasans/v24/5aUt9_-1phKLFgshYDvh6Vwt7V9tuGdShm5bsg.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Alegreya Sans" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasans/v24/5aUu9_-1phKLFgshYDvh6Vwt5alOmE18imdCqxI.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Alegreya Sans" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasans/v24/5aUo9_-1phKLFgshYDvh6Vwt7V9VTE52jkVHuxKiBA.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Alegreya Sans" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasans/v24/5aUu9_-1phKLFgshYDvh6Vwt5eFImE18imdCqxI.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Alegreya Sans" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasans/v24/5aUo9_-1phKLFgshYDvh6Vwt7V9VBEh2jkVHuxKiBA.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Alegreya Sans" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasans/v24/5aUu9_-1phKLFgshYDvh6Vwt5f1LmE18imdCqxI.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Alegreya Sans" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasans/v24/5aUo9_-1phKLFgshYDvh6Vwt7V9VGEt2jkVHuxKiBA.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Alegreya Sans" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasans/v24/5aUu9_-1phKLFgshYDvh6Vwt5dlKmE18imdCqxI.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Alegreya Sans" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasans/v24/5aUo9_-1phKLFgshYDvh6Vwt7V9VPEp2jkVHuxKiBA.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Alegreya Sans" - } - ] - }, - { - "name": "Alegreya Sans SC", - "fontFamily": "Alegreya Sans SC, sans-serif", - "slug": "alegreya-sans-sc", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/alegreyasanssc/v23/mtGn4-RGJqfMvt7P8FUr0Q1j-Hf1Dipl8g5FPYtmMg.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Alegreya Sans SC" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasanssc/v23/mtGl4-RGJqfMvt7P8FUr0Q1j-Hf1BkxdlgRBH452Mvds.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Alegreya Sans SC" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasanssc/v23/mtGm4-RGJqfMvt7P8FUr0Q1j-Hf1DuJH0iRrMYJ_K-4.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Alegreya Sans SC" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasanssc/v23/mtGk4-RGJqfMvt7P8FUr0Q1j-Hf1BkxdXiZhNaB6O-51OA.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Alegreya Sans SC" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasanssc/v23/mtGh4-RGJqfMvt7P8FUr0Q1j-Hf1Nk5v9ixALYs.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Alegreya Sans SC" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasanssc/v23/mtGn4-RGJqfMvt7P8FUr0Q1j-Hf1Bkxl8g5FPYtmMg.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Alegreya Sans SC" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasanssc/v23/mtGm4-RGJqfMvt7P8FUr0Q1j-Hf1DrpG0iRrMYJ_K-4.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Alegreya Sans SC" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasanssc/v23/mtGk4-RGJqfMvt7P8FUr0Q1j-Hf1BkxdBidhNaB6O-51OA.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Alegreya Sans SC" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasanssc/v23/mtGm4-RGJqfMvt7P8FUr0Q1j-Hf1DvJA0iRrMYJ_K-4.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Alegreya Sans SC" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasanssc/v23/mtGk4-RGJqfMvt7P8FUr0Q1j-Hf1BkxdTiFhNaB6O-51OA.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Alegreya Sans SC" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasanssc/v23/mtGm4-RGJqfMvt7P8FUr0Q1j-Hf1Du5D0iRrMYJ_K-4.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Alegreya Sans SC" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasanssc/v23/mtGk4-RGJqfMvt7P8FUr0Q1j-Hf1BkxdUiJhNaB6O-51OA.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Alegreya Sans SC" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasanssc/v23/mtGm4-RGJqfMvt7P8FUr0Q1j-Hf1DspC0iRrMYJ_K-4.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Alegreya Sans SC" - }, - { - "src": "http://fonts.gstatic.com/s/alegreyasanssc/v23/mtGk4-RGJqfMvt7P8FUr0Q1j-Hf1BkxddiNhNaB6O-51OA.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Alegreya Sans SC" - } - ] - }, - { - "name": "Aleo", - "fontFamily": "Aleo, serif", - "slug": "aleo", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/aleo/v11/c4mg1nF8G8_syKbr9DVDno985KM.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Aleo" - }, - { - "src": "http://fonts.gstatic.com/s/aleo/v11/c4mi1nF8G8_swAjxeDdJmq159KOnWA.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Aleo" - }, - { - "src": "http://fonts.gstatic.com/s/aleo/v11/c4mv1nF8G8_s8ArD0D1ogoY.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Aleo" - }, - { - "src": "http://fonts.gstatic.com/s/aleo/v11/c4mh1nF8G8_swAjJ1B9tkoZl_Q.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Aleo" - }, - { - "src": "http://fonts.gstatic.com/s/aleo/v11/c4mg1nF8G8_syLbs9DVDno985KM.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Aleo" - }, - { - "src": "http://fonts.gstatic.com/s/aleo/v11/c4mi1nF8G8_swAjxaDBJmq159KOnWA.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Aleo" - } - ] - }, - { - "name": "Alex Brush", - "fontFamily": "Alex Brush, cursive", - "slug": "alex-brush", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/alexbrush/v22/SZc83FzrJKuqFbwMKk6EtUL57DtOmCc.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Alex Brush" - } - ] - }, - { - "name": "Alexandria", - "fontFamily": "Alexandria, sans-serif", - "slug": "alexandria", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/alexandria/v3/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9r7T6bHHJ8BRq0b.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Alexandria" - }, - { - "src": "http://fonts.gstatic.com/s/alexandria/v3/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9p7TqbHHJ8BRq0b.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Alexandria" - }, - { - "src": "http://fonts.gstatic.com/s/alexandria/v3/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9qlTqbHHJ8BRq0b.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Alexandria" - }, - { - "src": "http://fonts.gstatic.com/s/alexandria/v3/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9r7TqbHHJ8BRq0b.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Alexandria" - }, - { - "src": "http://fonts.gstatic.com/s/alexandria/v3/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9rJTqbHHJ8BRq0b.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Alexandria" - }, - { - "src": "http://fonts.gstatic.com/s/alexandria/v3/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9olSabHHJ8BRq0b.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Alexandria" - }, - { - "src": "http://fonts.gstatic.com/s/alexandria/v3/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9ocSabHHJ8BRq0b.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Alexandria" - }, - { - "src": "http://fonts.gstatic.com/s/alexandria/v3/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9p7SabHHJ8BRq0b.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Alexandria" - }, - { - "src": "http://fonts.gstatic.com/s/alexandria/v3/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9pSSabHHJ8BRq0b.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Alexandria" - } - ] - }, - { - "name": "Alfa Slab One", - "fontFamily": "Alfa Slab One, system-ui", - "slug": "alfa-slab-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/alfaslabone/v17/6NUQ8FmMKwSEKjnm5-4v-4Jh6dVretWvYmE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Alfa Slab One" - } - ] - }, - { - "name": "Alice", - "fontFamily": "Alice, serif", - "slug": "alice", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/alice/v20/OpNCnoEEmtHa6FcJpA_chzJ0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Alice" - } - ] - }, - { - "name": "Alike", - "fontFamily": "Alike, serif", - "slug": "alike", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/alike/v20/HI_EiYEYI6BIoEjBSZXAQ4-d.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Alike" - } - ] - }, - { - "name": "Alike Angular", - "fontFamily": "Alike Angular, serif", - "slug": "alike-angular", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/alikeangular/v20/3qTrojWunjGQtEBlIcwMbSoI3kM6bB7FKjE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Alike Angular" - } - ] - }, - { - "name": "Alkalami", - "fontFamily": "Alkalami, serif", - "slug": "alkalami", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/alkalami/v7/zOL_4pfDmqRL95WXi5eLw8BMuvhH.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Alkalami" - } - ] - }, - { - "name": "Alkatra", - "fontFamily": "Alkatra, system-ui", - "slug": "alkatra", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/alkatra/v3/r05EGLZA5qhCYsyJbuChFuK48Medzngmu7cPrNDVemxE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Alkatra" - }, - { - "src": "http://fonts.gstatic.com/s/alkatra/v3/r05EGLZA5qhCYsyJbuChFuK48MedzngUu7cPrNDVemxE.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Alkatra" - }, - { - "src": "http://fonts.gstatic.com/s/alkatra/v3/r05EGLZA5qhCYsyJbuChFuK48Medznj4vLcPrNDVemxE.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Alkatra" - }, - { - "src": "http://fonts.gstatic.com/s/alkatra/v3/r05EGLZA5qhCYsyJbuChFuK48MedznjBvLcPrNDVemxE.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Alkatra" - } - ] - }, - { - "name": "Allan", - "fontFamily": "Allan, system-ui", - "slug": "allan", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/allan/v21/ea8XadU7WuTxEtb2P9SF8nZE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Allan" - }, - { - "src": "http://fonts.gstatic.com/s/allan/v21/ea8aadU7WuTxEu5KEPCN2WpNgEKU.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Allan" - } - ] - }, - { - "name": "Allerta", - "fontFamily": "Allerta, sans-serif", - "slug": "allerta", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/allerta/v18/TwMO-IAHRlkbx940UnEdSQqO5uY.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Allerta" - } - ] - }, - { - "name": "Allerta Stencil", - "fontFamily": "Allerta Stencil, sans-serif", - "slug": "allerta-stencil", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/allertastencil/v18/HTx0L209KT-LmIE9N7OR6eiycOeF-zz313DuvQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Allerta Stencil" - } - ] - }, - { - "name": "Allison", - "fontFamily": "Allison, cursive", - "slug": "allison", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/allison/v9/X7nl4b88AP2nkbvZOCaQ4MTgAgk.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Allison" - } - ] - }, - { - "name": "Allura", - "fontFamily": "Allura, cursive", - "slug": "allura", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/allura/v19/9oRPNYsQpS4zjuAPjAIXPtrrGA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Allura" - } - ] - }, - { - "name": "Almarai", - "fontFamily": "Almarai, sans-serif", - "slug": "almarai", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/almarai/v12/tssoApxBaigK_hnnS_anhnicoq72sXg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Almarai" - }, - { - "src": "http://fonts.gstatic.com/s/almarai/v12/tsstApxBaigK_hnnc1qPonC3vqc.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Almarai" - }, - { - "src": "http://fonts.gstatic.com/s/almarai/v12/tssoApxBaigK_hnnS-aghnicoq72sXg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Almarai" - }, - { - "src": "http://fonts.gstatic.com/s/almarai/v12/tssoApxBaigK_hnnS_qjhnicoq72sXg.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Almarai" - } - ] - }, - { - "name": "Almendra", - "fontFamily": "Almendra, serif", - "slug": "almendra", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/almendra/v23/H4ckBXKAlMnTn0CskyY6wr-wg763.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Almendra" - }, - { - "src": "http://fonts.gstatic.com/s/almendra/v23/H4ciBXKAlMnTn0CskxY4yLuShq63czE.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Almendra" - }, - { - "src": "http://fonts.gstatic.com/s/almendra/v23/H4cjBXKAlMnTn0Cskx6G7Zu4qKK-aihq.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Almendra" - }, - { - "src": "http://fonts.gstatic.com/s/almendra/v23/H4chBXKAlMnTn0CskxY48Ae9oqacbzhqDtg.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Almendra" - } - ] - }, - { - "name": "Almendra Display", - "fontFamily": "Almendra Display, system-ui", - "slug": "almendra-display", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/almendradisplay/v26/0FlPVOGWl1Sb4O3tETtADHRRlZhzXS_eTyer338.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Almendra Display" - } - ] - }, - { - "name": "Almendra SC", - "fontFamily": "Almendra SC, serif", - "slug": "almendra-sc", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/almendrasc/v25/Iure6Yx284eebowr7hbyTZZJprVA4XQ0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Almendra SC" - } - ] - }, - { - "name": "Alumni Sans", - "fontFamily": "Alumni Sans, sans-serif", - "slug": "alumni-sans", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd9OO5QqFsJ3C8qng.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Alumni Sans" - }, - { - "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd9uO9QqFsJ3C8qng.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Alumni Sans" - }, - { - "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd9Zu9QqFsJ3C8qng.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Alumni Sans" - }, - { - "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd9OO9QqFsJ3C8qng.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Alumni Sans" - }, - { - "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd9Cu9QqFsJ3C8qng.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Alumni Sans" - }, - { - "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd95uhQqFsJ3C8qng.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Alumni Sans" - }, - { - "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd93-hQqFsJ3C8qng.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Alumni Sans" - }, - { - "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd9uOhQqFsJ3C8qng.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Alumni Sans" - }, - { - "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd9kehQqFsJ3C8qng.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Alumni Sans" - }, - { - "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8Ky46lEN_io6npfB.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Alumni Sans" - }, - { - "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8Kw461EN_io6npfB.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Alumni Sans" - }, - { - "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8Kzm61EN_io6npfB.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Alumni Sans" - }, - { - "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8Ky461EN_io6npfB.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Alumni Sans" - }, - { - "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8KyK61EN_io6npfB.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Alumni Sans" - }, - { - "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8Kxm7FEN_io6npfB.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Alumni Sans" - }, - { - "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8Kxf7FEN_io6npfB.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Alumni Sans" - }, - { - "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8Kw47FEN_io6npfB.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Alumni Sans" - }, - { - "src": "http://fonts.gstatic.com/s/alumnisans/v16/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8KwR7FEN_io6npfB.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Alumni Sans" - } - ] - }, - { - "name": "Alumni Sans Collegiate One", - "fontFamily": "Alumni Sans Collegiate One, sans-serif", - "slug": "alumni-sans-collegiate-one", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/alumnisanscollegiateone/v2/MQpB-XChK8G5CtmK_AuGxQrdNvPSXkn0RM-XqjWWhjdayDiPw2ta.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Alumni Sans Collegiate One" - }, - { - "src": "http://fonts.gstatic.com/s/alumnisanscollegiateone/v2/MQpD-XChK8G5CtmK_AuGxQrdNvPSXkn0RM-XqjWWhgdYwjytxntaDFU.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Alumni Sans Collegiate One" - } - ] - }, - { - "name": "Alumni Sans Inline One", - "fontFamily": "Alumni Sans Inline One, system-ui", - "slug": "alumni-sans-inline-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/alumnisansinlineone/v2/RrQBbpJx9zZ3IXTBOASKp5gJAetBdaihcjbpD3AZcr7xbYw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Alumni Sans Inline One" - }, - { - "src": "http://fonts.gstatic.com/s/alumnisansinlineone/v2/RrQDbpJx9zZ3IXTBOASKp5gJAetBdaihcjbpP3ITdpz0fYxcrQ.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Alumni Sans Inline One" - } - ] - }, - { - "name": "Alumni Sans Pinstripe", - "fontFamily": "Alumni Sans Pinstripe, sans-serif", - "slug": "alumni-sans-pinstripe", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/alumnisanspinstripe/v2/ZgNNjOFFPq_AUJD1umyS30W-Xub8zD1ObhezYrVIpcDA5w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Alumni Sans Pinstripe" - }, - { - "src": "http://fonts.gstatic.com/s/alumnisanspinstripe/v2/ZgNDjOFFPq_AUJD1umyS30W-Xub8zD1ObheDYL9Mh8XQ5_cY.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Alumni Sans Pinstripe" - } - ] - }, - { - "name": "Amarante", - "fontFamily": "Amarante, system-ui", - "slug": "amarante", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/amarante/v23/xMQXuF1KTa6EvGx9bq-3C3rAmD-b.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Amarante" - } - ] - }, - { - "name": "Amaranth", - "fontFamily": "Amaranth, sans-serif", - "slug": "amaranth", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/amaranth/v18/KtkuALODe433f0j1zPnCF9GqwnzW.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Amaranth" - }, - { - "src": "http://fonts.gstatic.com/s/amaranth/v18/KtkoALODe433f0j1zMnAHdWIx2zWD4I.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Amaranth" - }, - { - "src": "http://fonts.gstatic.com/s/amaranth/v18/KtkpALODe433f0j1zMF-OPWi6WDfFpuc.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Amaranth" - }, - { - "src": "http://fonts.gstatic.com/s/amaranth/v18/KtkrALODe433f0j1zMnAJWmn42T9E4ucRY8.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Amaranth" - } - ] - }, - { - "name": "Amatic SC", - "fontFamily": "Amatic SC, cursive", - "slug": "amatic-sc", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/amaticsc/v24/TUZyzwprpvBS1izr_vO0De6ecZQf1A.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Amatic SC" - }, - { - "src": "http://fonts.gstatic.com/s/amaticsc/v24/TUZ3zwprpvBS1izr_vOMscG6eb8D3WTy-A.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Amatic SC" - } - ] - }, - { - "name": "Amethysta", - "fontFamily": "Amethysta, serif", - "slug": "amethysta", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/amethysta/v16/rP2Fp2K15kgb_F3ibfWIGDWCBl0O8Q.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Amethysta" - } - ] - }, - { - "name": "Amiko", - "fontFamily": "Amiko, sans-serif", - "slug": "amiko", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/amiko/v12/WwkQxPq1DFK04tqlc17MMZgJ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Amiko" - }, - { - "src": "http://fonts.gstatic.com/s/amiko/v12/WwkdxPq1DFK04uJ9XXrEGoQAUco5.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Amiko" - }, - { - "src": "http://fonts.gstatic.com/s/amiko/v12/WwkdxPq1DFK04uIZXHrEGoQAUco5.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Amiko" - } - ] - }, - { - "name": "Amiri", - "fontFamily": "Amiri, serif", - "slug": "amiri", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/amiri/v27/J7aRnpd8CGxBHqUpvrIw74NL.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Amiri" - }, - { - "src": "http://fonts.gstatic.com/s/amiri/v27/J7afnpd8CGxBHpUrtLYS6pNLAjk.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Amiri" - }, - { - "src": "http://fonts.gstatic.com/s/amiri/v27/J7acnpd8CGxBHp2VkZY4xJ9CGyAa.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Amiri" - }, - { - "src": "http://fonts.gstatic.com/s/amiri/v27/J7aanpd8CGxBHpUrjAo9zptgHjAavCA.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Amiri" - } - ] - }, - { - "name": "Amiri Quran", - "fontFamily": "Amiri Quran, serif", - "slug": "amiri-quran", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/amiriquran/v7/_Xmo-Hk0rD6DbUL4_vH8Zq5t7Cycsu-2.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Amiri Quran" - } - ] - }, - { - "name": "Amita", - "fontFamily": "Amita, cursive", - "slug": "amita", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/amita/v16/HhyaU5si9Om7PQlvAfSKEZZL.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Amita" - }, - { - "src": "http://fonts.gstatic.com/s/amita/v16/HhyXU5si9Om7PTHTLtCCOopCTKkI.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Amita" - } - ] - }, - { - "name": "Anaheim", - "fontFamily": "Anaheim, sans-serif", - "slug": "anaheim", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/anaheim/v14/8vII7w042Wp87g4G0UTUEE5eK_w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Anaheim" - } - ] - }, - { - "name": "Andada Pro", - "fontFamily": "Andada Pro, serif", - "slug": "andada-pro", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/andadapro/v20/HhyEU5Qi9-SuOEhPe4LtKoVCuWGURPcg3DPJBY8cFLzvIt2S.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Andada Pro" - }, - { - "src": "http://fonts.gstatic.com/s/andadapro/v20/HhyEU5Qi9-SuOEhPe4LtKoVCuWGURPcg3DP7BY8cFLzvIt2S.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Andada Pro" - }, - { - "src": "http://fonts.gstatic.com/s/andadapro/v20/HhyEU5Qi9-SuOEhPe4LtKoVCuWGURPcg3DMXAo8cFLzvIt2S.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Andada Pro" - }, - { - "src": "http://fonts.gstatic.com/s/andadapro/v20/HhyEU5Qi9-SuOEhPe4LtKoVCuWGURPcg3DMuAo8cFLzvIt2S.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Andada Pro" - }, - { - "src": "http://fonts.gstatic.com/s/andadapro/v20/HhyEU5Qi9-SuOEhPe4LtKoVCuWGURPcg3DNJAo8cFLzvIt2S.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Andada Pro" - }, - { - "src": "http://fonts.gstatic.com/s/andadapro/v20/HhyGU5Qi9-SuOEhPe4LtAIxwRrn9L22O2yYBRmdfHrjNJ82Stjw.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Andada Pro" - }, - { - "src": "http://fonts.gstatic.com/s/andadapro/v20/HhyGU5Qi9-SuOEhPe4LtAIxwRrn9L22O2yYBRlVfHrjNJ82Stjw.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Andada Pro" - }, - { - "src": "http://fonts.gstatic.com/s/andadapro/v20/HhyGU5Qi9-SuOEhPe4LtAIxwRrn9L22O2yYBRrlYHrjNJ82Stjw.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Andada Pro" - }, - { - "src": "http://fonts.gstatic.com/s/andadapro/v20/HhyGU5Qi9-SuOEhPe4LtAIxwRrn9L22O2yYBRoBYHrjNJ82Stjw.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Andada Pro" - }, - { - "src": "http://fonts.gstatic.com/s/andadapro/v20/HhyGU5Qi9-SuOEhPe4LtAIxwRrn9L22O2yYBRudYHrjNJ82Stjw.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Andada Pro" - } - ] - }, - { - "name": "Andika", - "fontFamily": "Andika, sans-serif", - "slug": "andika", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/andika/v25/mem_Ya6iyW-LwqgAbbwRWrwGVA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Andika" - }, - { - "src": "http://fonts.gstatic.com/s/andika/v25/mem9Ya6iyW-Lwqgwb7YVeLkWVNBt.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Andika" - }, - { - "src": "http://fonts.gstatic.com/s/andika/v25/mem8Ya6iyW-Lwqg40ZM1UpcaXcl0Aw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Andika" - }, - { - "src": "http://fonts.gstatic.com/s/andika/v25/mem6Ya6iyW-Lwqgwb46pV50ef8xkA76a.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Andika" - } - ] - }, - { - "name": "Anek Bangla", - "fontFamily": "Anek Bangla, sans-serif", - "slug": "anek-bangla", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/anekbangla/v4/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3Ofm9YIocg56yyvt0.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Anek Bangla" - }, - { - "src": "http://fonts.gstatic.com/s/anekbangla/v4/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3Ofu9ZIocg56yyvt0.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Anek Bangla" - }, - { - "src": "http://fonts.gstatic.com/s/anekbangla/v4/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3OfjFZIocg56yyvt0.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Anek Bangla" - }, - { - "src": "http://fonts.gstatic.com/s/anekbangla/v4/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3Ofm9ZIocg56yyvt0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Anek Bangla" - }, - { - "src": "http://fonts.gstatic.com/s/anekbangla/v4/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3Ofl1ZIocg56yyvt0.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Anek Bangla" - }, - { - "src": "http://fonts.gstatic.com/s/anekbangla/v4/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3OfrFeIocg56yyvt0.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Anek Bangla" - }, - { - "src": "http://fonts.gstatic.com/s/anekbangla/v4/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3OfoheIocg56yyvt0.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Anek Bangla" - }, - { - "src": "http://fonts.gstatic.com/s/anekbangla/v4/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3Ofu9eIocg56yyvt0.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Anek Bangla" - } - ] - }, - { - "name": "Anek Devanagari", - "fontFamily": "Anek Devanagari, sans-serif", - "slug": "anek-devanagari", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/anekdevanagari/v8/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLDtk-9nFk0LjZ7E.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Anek Devanagari" - }, - { - "src": "http://fonts.gstatic.com/s/anekdevanagari/v8/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLBtku9nFk0LjZ7E.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Anek Devanagari" - }, - { - "src": "http://fonts.gstatic.com/s/anekdevanagari/v8/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLCzku9nFk0LjZ7E.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Anek Devanagari" - }, - { - "src": "http://fonts.gstatic.com/s/anekdevanagari/v8/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLDtku9nFk0LjZ7E.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Anek Devanagari" - }, - { - "src": "http://fonts.gstatic.com/s/anekdevanagari/v8/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLDfku9nFk0LjZ7E.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Anek Devanagari" - }, - { - "src": "http://fonts.gstatic.com/s/anekdevanagari/v8/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLAzle9nFk0LjZ7E.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Anek Devanagari" - }, - { - "src": "http://fonts.gstatic.com/s/anekdevanagari/v8/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLAKle9nFk0LjZ7E.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Anek Devanagari" - }, - { - "src": "http://fonts.gstatic.com/s/anekdevanagari/v8/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLBtle9nFk0LjZ7E.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Anek Devanagari" - } - ] - }, - { - "name": "Anek Gujarati", - "fontFamily": "Anek Gujarati, sans-serif", - "slug": "anek-gujarati", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/anekgujarati/v9/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-0F5G7w0KgB7Lm7g.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Anek Gujarati" - }, - { - "src": "http://fonts.gstatic.com/s/anekgujarati/v9/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-0l5C7w0KgB7Lm7g.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Anek Gujarati" - }, - { - "src": "http://fonts.gstatic.com/s/anekgujarati/v9/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-0SZC7w0KgB7Lm7g.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Anek Gujarati" - }, - { - "src": "http://fonts.gstatic.com/s/anekgujarati/v9/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-0F5C7w0KgB7Lm7g.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Anek Gujarati" - }, - { - "src": "http://fonts.gstatic.com/s/anekgujarati/v9/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-0JZC7w0KgB7Lm7g.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Anek Gujarati" - }, - { - "src": "http://fonts.gstatic.com/s/anekgujarati/v9/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-0yZe7w0KgB7Lm7g.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Anek Gujarati" - }, - { - "src": "http://fonts.gstatic.com/s/anekgujarati/v9/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-08Je7w0KgB7Lm7g.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Anek Gujarati" - }, - { - "src": "http://fonts.gstatic.com/s/anekgujarati/v9/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-0l5e7w0KgB7Lm7g.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Anek Gujarati" - } - ] - }, - { - "name": "Anek Gurmukhi", - "fontFamily": "Anek Gurmukhi, sans-serif", - "slug": "anek-gurmukhi", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/anekgurmukhi/v8/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkbd5ppXK41H6DjbA.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Anek Gurmukhi" - }, - { - "src": "http://fonts.gstatic.com/s/anekgurmukhi/v8/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkb95tpXK41H6DjbA.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Anek Gurmukhi" - }, - { - "src": "http://fonts.gstatic.com/s/anekgurmukhi/v8/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkbKZtpXK41H6DjbA.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Anek Gurmukhi" - }, - { - "src": "http://fonts.gstatic.com/s/anekgurmukhi/v8/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkbd5tpXK41H6DjbA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Anek Gurmukhi" - }, - { - "src": "http://fonts.gstatic.com/s/anekgurmukhi/v8/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkbRZtpXK41H6DjbA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Anek Gurmukhi" - }, - { - "src": "http://fonts.gstatic.com/s/anekgurmukhi/v8/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkbqZxpXK41H6DjbA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Anek Gurmukhi" - }, - { - "src": "http://fonts.gstatic.com/s/anekgurmukhi/v8/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkbkJxpXK41H6DjbA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Anek Gurmukhi" - }, - { - "src": "http://fonts.gstatic.com/s/anekgurmukhi/v8/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkb95xpXK41H6DjbA.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Anek Gurmukhi" - } - ] - }, - { - "name": "Anek Kannada", - "fontFamily": "Anek Kannada, sans-serif", - "slug": "anek-kannada", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/anekkannada/v4/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dFDEAukVReA1oef.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Anek Kannada" - }, - { - "src": "http://fonts.gstatic.com/s/anekkannada/v4/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dHDEQukVReA1oef.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Anek Kannada" - }, - { - "src": "http://fonts.gstatic.com/s/anekkannada/v4/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dEdEQukVReA1oef.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Anek Kannada" - }, - { - "src": "http://fonts.gstatic.com/s/anekkannada/v4/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dFDEQukVReA1oef.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Anek Kannada" - }, - { - "src": "http://fonts.gstatic.com/s/anekkannada/v4/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dFxEQukVReA1oef.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Anek Kannada" - }, - { - "src": "http://fonts.gstatic.com/s/anekkannada/v4/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dGdFgukVReA1oef.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Anek Kannada" - }, - { - "src": "http://fonts.gstatic.com/s/anekkannada/v4/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dGkFgukVReA1oef.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Anek Kannada" - }, - { - "src": "http://fonts.gstatic.com/s/anekkannada/v4/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dHDFgukVReA1oef.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Anek Kannada" - } - ] - }, - { - "name": "Anek Latin", - "fontFamily": "Anek Latin, sans-serif", - "slug": "anek-latin", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/aneklatin/v4/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3PuR7EZKdClWL3kgw.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Anek Latin" - }, - { - "src": "http://fonts.gstatic.com/s/aneklatin/v4/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3Pux7AZKdClWL3kgw.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Anek Latin" - }, - { - "src": "http://fonts.gstatic.com/s/aneklatin/v4/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3PuGbAZKdClWL3kgw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Anek Latin" - }, - { - "src": "http://fonts.gstatic.com/s/aneklatin/v4/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3PuR7AZKdClWL3kgw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Anek Latin" - }, - { - "src": "http://fonts.gstatic.com/s/aneklatin/v4/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3PudbAZKdClWL3kgw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Anek Latin" - }, - { - "src": "http://fonts.gstatic.com/s/aneklatin/v4/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3PumbcZKdClWL3kgw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Anek Latin" - }, - { - "src": "http://fonts.gstatic.com/s/aneklatin/v4/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3PuoLcZKdClWL3kgw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Anek Latin" - }, - { - "src": "http://fonts.gstatic.com/s/aneklatin/v4/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3Pux7cZKdClWL3kgw.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Anek Latin" - } - ] - }, - { - "name": "Anek Malayalam", - "fontFamily": "Anek Malayalam, sans-serif", - "slug": "anek-malayalam", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/anekmalayalam/v5/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTUZu_HMr5PDO71Qs.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Anek Malayalam" - }, - { - "src": "http://fonts.gstatic.com/s/anekmalayalam/v5/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTURu-HMr5PDO71Qs.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Anek Malayalam" - }, - { - "src": "http://fonts.gstatic.com/s/anekmalayalam/v5/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTUcW-HMr5PDO71Qs.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Anek Malayalam" - }, - { - "src": "http://fonts.gstatic.com/s/anekmalayalam/v5/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTUZu-HMr5PDO71Qs.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Anek Malayalam" - }, - { - "src": "http://fonts.gstatic.com/s/anekmalayalam/v5/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTUam-HMr5PDO71Qs.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Anek Malayalam" - }, - { - "src": "http://fonts.gstatic.com/s/anekmalayalam/v5/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTUUW5HMr5PDO71Qs.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Anek Malayalam" - }, - { - "src": "http://fonts.gstatic.com/s/anekmalayalam/v5/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTUXy5HMr5PDO71Qs.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Anek Malayalam" - }, - { - "src": "http://fonts.gstatic.com/s/anekmalayalam/v5/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTURu5HMr5PDO71Qs.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Anek Malayalam" - } - ] - }, - { - "name": "Anek Odia", - "fontFamily": "Anek Odia, sans-serif", - "slug": "anek-odia", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/anekodia/v5/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnmZf63mXZAtm_es.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Anek Odia" - }, - { - "src": "http://fonts.gstatic.com/s/anekodia/v5/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnkZfq3mXZAtm_es.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Anek Odia" - }, - { - "src": "http://fonts.gstatic.com/s/anekodia/v5/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnnHfq3mXZAtm_es.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Anek Odia" - }, - { - "src": "http://fonts.gstatic.com/s/anekodia/v5/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnmZfq3mXZAtm_es.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Anek Odia" - }, - { - "src": "http://fonts.gstatic.com/s/anekodia/v5/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnmrfq3mXZAtm_es.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Anek Odia" - }, - { - "src": "http://fonts.gstatic.com/s/anekodia/v5/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnlHea3mXZAtm_es.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Anek Odia" - }, - { - "src": "http://fonts.gstatic.com/s/anekodia/v5/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnl-ea3mXZAtm_es.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Anek Odia" - }, - { - "src": "http://fonts.gstatic.com/s/anekodia/v5/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnkZea3mXZAtm_es.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Anek Odia" - } - ] - }, - { - "name": "Anek Tamil", - "fontFamily": "Anek Tamil, sans-serif", - "slug": "anek-tamil", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/anektamil/v9/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNQiZ6q4v4oegjOQ.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Anek Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/anektamil/v9/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNwid6q4v4oegjOQ.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Anek Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/anektamil/v9/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNHCd6q4v4oegjOQ.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Anek Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/anektamil/v9/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNQid6q4v4oegjOQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Anek Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/anektamil/v9/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNcCd6q4v4oegjOQ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Anek Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/anektamil/v9/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNnCB6q4v4oegjOQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Anek Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/anektamil/v9/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNpSB6q4v4oegjOQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Anek Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/anektamil/v9/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNwiB6q4v4oegjOQ.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Anek Tamil" - } - ] - }, - { - "name": "Anek Telugu", - "fontFamily": "Anek Telugu, sans-serif", - "slug": "anek-telugu", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/anektelugu/v8/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i13y-_oE2G2ep10_8.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Anek Telugu" - }, - { - "src": "http://fonts.gstatic.com/s/anektelugu/v8/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i136--oE2G2ep10_8.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Anek Telugu" - }, - { - "src": "http://fonts.gstatic.com/s/anektelugu/v8/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i133G-oE2G2ep10_8.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Anek Telugu" - }, - { - "src": "http://fonts.gstatic.com/s/anektelugu/v8/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i13y--oE2G2ep10_8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Anek Telugu" - }, - { - "src": "http://fonts.gstatic.com/s/anektelugu/v8/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i13x2-oE2G2ep10_8.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Anek Telugu" - }, - { - "src": "http://fonts.gstatic.com/s/anektelugu/v8/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i13_G5oE2G2ep10_8.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Anek Telugu" - }, - { - "src": "http://fonts.gstatic.com/s/anektelugu/v8/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i138i5oE2G2ep10_8.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Anek Telugu" - }, - { - "src": "http://fonts.gstatic.com/s/anektelugu/v8/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i136-5oE2G2ep10_8.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Anek Telugu" - } - ] - }, - { - "name": "Angkor", - "fontFamily": "Angkor, system-ui", - "slug": "angkor", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/angkor/v28/H4cmBXyAlsPdnlb-8iw-4Lqggw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Angkor" - } - ] - }, - { - "name": "Annie Use Your Telescope", - "fontFamily": "Annie Use Your Telescope, cursive", - "slug": "annie-use-your-telescope", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/annieuseyourtelescope/v18/daaLSS4tI2qYYl3Jq9s_Hu74xwktnlKxH6osGVGjlDfB3UUVZA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Annie Use Your Telescope" - } - ] - }, - { - "name": "Anonymous Pro", - "fontFamily": "Anonymous Pro, monospace", - "slug": "anonymous-pro", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/anonymouspro/v21/rP2Bp2a15UIB7Un-bOeISG3pLlw89CH98Ko.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Anonymous Pro" - }, - { - "src": "http://fonts.gstatic.com/s/anonymouspro/v21/rP2fp2a15UIB7Un-bOeISG3pHl428AP44Kqr2Q.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Anonymous Pro" - }, - { - "src": "http://fonts.gstatic.com/s/anonymouspro/v21/rP2cp2a15UIB7Un-bOeISG3pFuAT0CnW7KOywKo.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Anonymous Pro" - }, - { - "src": "http://fonts.gstatic.com/s/anonymouspro/v21/rP2ap2a15UIB7Un-bOeISG3pHl4OTCzc6IG30KqB9Q.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Anonymous Pro" - } - ] - }, - { - "name": "Antic", - "fontFamily": "Antic, sans-serif", - "slug": "antic", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/antic/v19/TuGfUVB8XY5DRaZLodgzydtk.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Antic" - } - ] - }, - { - "name": "Antic Didone", - "fontFamily": "Antic Didone, serif", - "slug": "antic-didone", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/anticdidone/v16/RWmPoKKX6u8sp8fIWdnDKqDiqYsGBGBzCw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Antic Didone" - } - ] - }, - { - "name": "Antic Slab", - "fontFamily": "Antic Slab, serif", - "slug": "antic-slab", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/anticslab/v16/bWt97fPFfRzkCa9Jlp6IWcJWXW5p5Qo.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Antic Slab" - } - ] - }, - { - "name": "Anton", - "fontFamily": "Anton, sans-serif", - "slug": "anton", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/anton/v23/1Ptgg87LROyAm0K08i4gS7lu.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Anton" - } - ] - }, - { - "name": "Antonio", - "fontFamily": "Antonio, sans-serif", - "slug": "antonio", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/antonio/v17/gNMbW3NwSYq_9WD34ngK5F8vR8T0PVxx8BtIY2DwSXlM.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Antonio" - }, - { - "src": "http://fonts.gstatic.com/s/antonio/v17/gNMbW3NwSYq_9WD34ngK5F8vR8T0PVzx8RtIY2DwSXlM.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Antonio" - }, - { - "src": "http://fonts.gstatic.com/s/antonio/v17/gNMbW3NwSYq_9WD34ngK5F8vR8T0PVwv8RtIY2DwSXlM.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Antonio" - }, - { - "src": "http://fonts.gstatic.com/s/antonio/v17/gNMbW3NwSYq_9WD34ngK5F8vR8T0PVxx8RtIY2DwSXlM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Antonio" - }, - { - "src": "http://fonts.gstatic.com/s/antonio/v17/gNMbW3NwSYq_9WD34ngK5F8vR8T0PVxD8RtIY2DwSXlM.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Antonio" - }, - { - "src": "http://fonts.gstatic.com/s/antonio/v17/gNMbW3NwSYq_9WD34ngK5F8vR8T0PVyv9htIY2DwSXlM.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Antonio" - }, - { - "src": "http://fonts.gstatic.com/s/antonio/v17/gNMbW3NwSYq_9WD34ngK5F8vR8T0PVyW9htIY2DwSXlM.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Antonio" - } - ] - }, - { - "name": "Anuphan", - "fontFamily": "Anuphan, sans-serif", - "slug": "anuphan", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/anuphan/v3/2sDBZGxYgY7LkLT0s2Yrm5UhuLoIZCkY9A4kGmW927Gu.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Anuphan" - }, - { - "src": "http://fonts.gstatic.com/s/anuphan/v3/2sDBZGxYgY7LkLT0s2Yrm5UhuLoIZCmY9Q4kGmW927Gu.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Anuphan" - }, - { - "src": "http://fonts.gstatic.com/s/anuphan/v3/2sDBZGxYgY7LkLT0s2Yrm5UhuLoIZClG9Q4kGmW927Gu.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Anuphan" - }, - { - "src": "http://fonts.gstatic.com/s/anuphan/v3/2sDBZGxYgY7LkLT0s2Yrm5UhuLoIZCkY9Q4kGmW927Gu.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Anuphan" - }, - { - "src": "http://fonts.gstatic.com/s/anuphan/v3/2sDBZGxYgY7LkLT0s2Yrm5UhuLoIZCkq9Q4kGmW927Gu.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Anuphan" - }, - { - "src": "http://fonts.gstatic.com/s/anuphan/v3/2sDBZGxYgY7LkLT0s2Yrm5UhuLoIZCnG8g4kGmW927Gu.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Anuphan" - }, - { - "src": "http://fonts.gstatic.com/s/anuphan/v3/2sDBZGxYgY7LkLT0s2Yrm5UhuLoIZCn_8g4kGmW927Gu.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Anuphan" - } - ] - }, - { - "name": "Anybody", - "fontFamily": "Anybody, system-ui", - "slug": "anybody", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/anybody/v9/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4J12HPrsXD_nBPpQ.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Anybody" - }, - { - "src": "http://fonts.gstatic.com/s/anybody/v9/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4JV2DPrsXD_nBPpQ.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Anybody" - }, - { - "src": "http://fonts.gstatic.com/s/anybody/v9/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4JiWDPrsXD_nBPpQ.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Anybody" - }, - { - "src": "http://fonts.gstatic.com/s/anybody/v9/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4J12DPrsXD_nBPpQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Anybody" - }, - { - "src": "http://fonts.gstatic.com/s/anybody/v9/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4J5WDPrsXD_nBPpQ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Anybody" - }, - { - "src": "http://fonts.gstatic.com/s/anybody/v9/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4JCWfPrsXD_nBPpQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Anybody" - }, - { - "src": "http://fonts.gstatic.com/s/anybody/v9/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4JMGfPrsXD_nBPpQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Anybody" - }, - { - "src": "http://fonts.gstatic.com/s/anybody/v9/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4JV2fPrsXD_nBPpQ.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Anybody" - }, - { - "src": "http://fonts.gstatic.com/s/anybody/v9/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4JfmfPrsXD_nBPpQ.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Anybody" - }, - { - "src": "http://fonts.gstatic.com/s/anybody/v9/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyMn7M_H3HVfpcHY.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Anybody" - }, - { - "src": "http://fonts.gstatic.com/s/anybody/v9/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyOn7c_H3HVfpcHY.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Anybody" - }, - { - "src": "http://fonts.gstatic.com/s/anybody/v9/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyN57c_H3HVfpcHY.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Anybody" - }, - { - "src": "http://fonts.gstatic.com/s/anybody/v9/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyMn7c_H3HVfpcHY.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Anybody" - }, - { - "src": "http://fonts.gstatic.com/s/anybody/v9/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyMV7c_H3HVfpcHY.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Anybody" - }, - { - "src": "http://fonts.gstatic.com/s/anybody/v9/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyP56s_H3HVfpcHY.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Anybody" - }, - { - "src": "http://fonts.gstatic.com/s/anybody/v9/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyPA6s_H3HVfpcHY.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Anybody" - }, - { - "src": "http://fonts.gstatic.com/s/anybody/v9/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyOn6s_H3HVfpcHY.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Anybody" - }, - { - "src": "http://fonts.gstatic.com/s/anybody/v9/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyOO6s_H3HVfpcHY.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Anybody" - } - ] - }, - { - "name": "Aoboshi One", - "fontFamily": "Aoboshi One, serif", - "slug": "aoboshi-one", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/aoboshione/v10/Gg8xN5kXaAXtHQrFxwl10ysLBmZX_UEg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Aoboshi One" - } - ] - }, - { - "name": "Arapey", - "fontFamily": "Arapey, serif", - "slug": "arapey", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/arapey/v16/-W__XJn-UDDA2RC6Z9AcZkIzeg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Arapey" - }, - { - "src": "http://fonts.gstatic.com/s/arapey/v16/-W_9XJn-UDDA2RCKZdoYREcjeo0k.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Arapey" - } - ] - }, - { - "name": "Arbutus", - "fontFamily": "Arbutus, system-ui", - "slug": "arbutus", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/arbutus/v24/NaPYcZ7dG_5J3poob9JtryO8fMU.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Arbutus" - } - ] - }, - { - "name": "Arbutus Slab", - "fontFamily": "Arbutus Slab, serif", - "slug": "arbutus-slab", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/arbutusslab/v16/oY1Z8e7OuLXkJGbXtr5ba7ZVa68dJlaFAQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Arbutus Slab" - } - ] - }, - { - "name": "Architects Daughter", - "fontFamily": "Architects Daughter, cursive", - "slug": "architects-daughter", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/architectsdaughter/v18/KtkxAKiDZI_td1Lkx62xHZHDtgO_Y-bvfY5q4szgE-Q.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Architects Daughter" - } - ] - }, - { - "name": "Archivo", - "fontFamily": "Archivo, sans-serif", - "slug": "archivo", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/archivo/v18/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTTNDJp8B1oJ0vyVQ.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Archivo" - }, - { - "src": "http://fonts.gstatic.com/s/archivo/v18/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTTtDNp8B1oJ0vyVQ.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Archivo" - }, - { - "src": "http://fonts.gstatic.com/s/archivo/v18/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTTajNp8B1oJ0vyVQ.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Archivo" - }, - { - "src": "http://fonts.gstatic.com/s/archivo/v18/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTTNDNp8B1oJ0vyVQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Archivo" - }, - { - "src": "http://fonts.gstatic.com/s/archivo/v18/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTTBjNp8B1oJ0vyVQ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Archivo" - }, - { - "src": "http://fonts.gstatic.com/s/archivo/v18/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTT6jRp8B1oJ0vyVQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Archivo" - }, - { - "src": "http://fonts.gstatic.com/s/archivo/v18/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTT0zRp8B1oJ0vyVQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Archivo" - }, - { - "src": "http://fonts.gstatic.com/s/archivo/v18/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTTtDRp8B1oJ0vyVQ.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Archivo" - }, - { - "src": "http://fonts.gstatic.com/s/archivo/v18/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTTnTRp8B1oJ0vyVQ.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Archivo" - }, - { - "src": "http://fonts.gstatic.com/s/archivo/v18/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HCBshdsBU7iVdxQ.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Archivo" - }, - { - "src": "http://fonts.gstatic.com/s/archivo/v18/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HABsxdsBU7iVdxQ.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Archivo" - }, - { - "src": "http://fonts.gstatic.com/s/archivo/v18/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HDfsxdsBU7iVdxQ.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Archivo" - }, - { - "src": "http://fonts.gstatic.com/s/archivo/v18/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HCBsxdsBU7iVdxQ.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Archivo" - }, - { - "src": "http://fonts.gstatic.com/s/archivo/v18/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HCzsxdsBU7iVdxQ.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Archivo" - }, - { - "src": "http://fonts.gstatic.com/s/archivo/v18/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HBftBdsBU7iVdxQ.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Archivo" - }, - { - "src": "http://fonts.gstatic.com/s/archivo/v18/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HBmtBdsBU7iVdxQ.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Archivo" - }, - { - "src": "http://fonts.gstatic.com/s/archivo/v18/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HABtBdsBU7iVdxQ.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Archivo" - }, - { - "src": "http://fonts.gstatic.com/s/archivo/v18/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HAotBdsBU7iVdxQ.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Archivo" - } - ] - }, - { - "name": "Archivo Black", - "fontFamily": "Archivo Black, sans-serif", - "slug": "archivo-black", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/archivoblack/v17/HTxqL289NzCGg4MzN6KJ7eW6OYuP_x7yx3A.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Archivo Black" - } - ] - }, - { - "name": "Archivo Narrow", - "fontFamily": "Archivo Narrow, sans-serif", - "slug": "archivo-narrow", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/archivonarrow/v29/tss5ApVBdCYD5Q7hcxTE1ArZ0Zz8oY2KRmwvKhhvLFGKpHOtFCQ76Q.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Archivo Narrow" - }, - { - "src": "http://fonts.gstatic.com/s/archivonarrow/v29/tss5ApVBdCYD5Q7hcxTE1ArZ0Zz8oY2KRmwvKhhvHlGKpHOtFCQ76Q.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Archivo Narrow" - }, - { - "src": "http://fonts.gstatic.com/s/archivonarrow/v29/tss5ApVBdCYD5Q7hcxTE1ArZ0Zz8oY2KRmwvKhhv8laKpHOtFCQ76Q.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Archivo Narrow" - }, - { - "src": "http://fonts.gstatic.com/s/archivonarrow/v29/tss5ApVBdCYD5Q7hcxTE1ArZ0Zz8oY2KRmwvKhhvy1aKpHOtFCQ76Q.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Archivo Narrow" - }, - { - "src": "http://fonts.gstatic.com/s/archivonarrow/v29/tss7ApVBdCYD5Q7hcxTE1ArZ0bb1k3JSLwe1hB965BJi53mpNiEr6T6Y.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Archivo Narrow" - }, - { - "src": "http://fonts.gstatic.com/s/archivonarrow/v29/tss7ApVBdCYD5Q7hcxTE1ArZ0bb1k3JSLwe1hB965BJQ53mpNiEr6T6Y.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Archivo Narrow" - }, - { - "src": "http://fonts.gstatic.com/s/archivonarrow/v29/tss7ApVBdCYD5Q7hcxTE1ArZ0bb1k3JSLwe1hB965BK84HmpNiEr6T6Y.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Archivo Narrow" - }, - { - "src": "http://fonts.gstatic.com/s/archivonarrow/v29/tss7ApVBdCYD5Q7hcxTE1ArZ0bb1k3JSLwe1hB965BKF4HmpNiEr6T6Y.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Archivo Narrow" - } - ] - }, - { - "name": "Are You Serious", - "fontFamily": "Are You Serious, cursive", - "slug": "are-you-serious", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/areyouserious/v10/ll8kK2GVSSr-PtjQ5nONVcNn4306hT9nCGRayg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Are You Serious" - } - ] - }, - { - "name": "Aref Ruqaa", - "fontFamily": "Aref Ruqaa, serif", - "slug": "aref-ruqaa", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/arefruqaa/v25/WwkbxPW1E165rajQKDulEIAiVNo5xNY.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Aref Ruqaa" - }, - { - "src": "http://fonts.gstatic.com/s/arefruqaa/v25/WwkYxPW1E165rajQKDulKDwNcNIS2N_7Bdk.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Aref Ruqaa" - } - ] - }, - { - "name": "Aref Ruqaa Ink", - "fontFamily": "Aref Ruqaa Ink, serif", - "slug": "aref-ruqaa-ink", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/arefruqaaink/v8/1q2fY5WOGUFlt84GTOkP6Kdx72ThVIGpgnxL.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Aref Ruqaa Ink" - }, - { - "src": "http://fonts.gstatic.com/s/arefruqaaink/v8/1q2cY5WOGUFlt84GTOkP6Kdx71xde6WhqWBCyxWn.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Aref Ruqaa Ink" - } - ] - }, - { - "name": "Arima", - "fontFamily": "Arima, system-ui", - "slug": "arima", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/arima/v5/neIWzCqmt4Aup_qE1nFWqxI1RZX1YTE-pQGOyYw2fw.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Arima" - }, - { - "src": "http://fonts.gstatic.com/s/arima/v5/neIWzCqmt4Aup_qE1nFWqxI1RZX14TA-pQGOyYw2fw.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Arima" - }, - { - "src": "http://fonts.gstatic.com/s/arima/v5/neIWzCqmt4Aup_qE1nFWqxI1RZX1PzA-pQGOyYw2fw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Arima" - }, - { - "src": "http://fonts.gstatic.com/s/arima/v5/neIWzCqmt4Aup_qE1nFWqxI1RZX1YTA-pQGOyYw2fw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Arima" - }, - { - "src": "http://fonts.gstatic.com/s/arima/v5/neIWzCqmt4Aup_qE1nFWqxI1RZX1UzA-pQGOyYw2fw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Arima" - }, - { - "src": "http://fonts.gstatic.com/s/arima/v5/neIWzCqmt4Aup_qE1nFWqxI1RZX1vzc-pQGOyYw2fw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Arima" - }, - { - "src": "http://fonts.gstatic.com/s/arima/v5/neIWzCqmt4Aup_qE1nFWqxI1RZX1hjc-pQGOyYw2fw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Arima" - } - ] - }, - { - "name": "Arimo", - "fontFamily": "Arimo, sans-serif", - "slug": "arimo", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/arimo/v28/P5sfzZCDf9_T_3cV7NCUECyoxNk37cxsBxDAVQI4aA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Arimo" - }, - { - "src": "http://fonts.gstatic.com/s/arimo/v28/P5sfzZCDf9_T_3cV7NCUECyoxNk338xsBxDAVQI4aA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Arimo" - }, - { - "src": "http://fonts.gstatic.com/s/arimo/v28/P5sfzZCDf9_T_3cV7NCUECyoxNk3M8tsBxDAVQI4aA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Arimo" - }, - { - "src": "http://fonts.gstatic.com/s/arimo/v28/P5sfzZCDf9_T_3cV7NCUECyoxNk3CstsBxDAVQI4aA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Arimo" - }, - { - "src": "http://fonts.gstatic.com/s/arimo/v28/P5sdzZCDf9_T_10c3i9MeUcyat4iJY-ERBrEdwcoaKww.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Arimo" - }, - { - "src": "http://fonts.gstatic.com/s/arimo/v28/P5sdzZCDf9_T_10c3i9MeUcyat4iJY-2RBrEdwcoaKww.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Arimo" - }, - { - "src": "http://fonts.gstatic.com/s/arimo/v28/P5sdzZCDf9_T_10c3i9MeUcyat4iJY9aQxrEdwcoaKww.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Arimo" - }, - { - "src": "http://fonts.gstatic.com/s/arimo/v28/P5sdzZCDf9_T_10c3i9MeUcyat4iJY9jQxrEdwcoaKww.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Arimo" - } - ] - }, - { - "name": "Arizonia", - "fontFamily": "Arizonia, cursive", - "slug": "arizonia", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/arizonia/v19/neIIzCemt4A5qa7mv6WGHK06UY30.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Arizonia" - } - ] - }, - { - "name": "Armata", - "fontFamily": "Armata, sans-serif", - "slug": "armata", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/armata/v20/gokvH63_HV5jQ-E9lD53Q2u_mQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Armata" - } - ] - }, - { - "name": "Arsenal", - "fontFamily": "Arsenal, sans-serif", - "slug": "arsenal", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/arsenal/v12/wXKrE3kQtZQ4pF3D11_WAewrhXY.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Arsenal" - }, - { - "src": "http://fonts.gstatic.com/s/arsenal/v12/wXKpE3kQtZQ4pF3D513cBc4ulXYrtA.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Arsenal" - }, - { - "src": "http://fonts.gstatic.com/s/arsenal/v12/wXKuE3kQtZQ4pF3D7-P5JeQAmX8yrdk.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Arsenal" - }, - { - "src": "http://fonts.gstatic.com/s/arsenal/v12/wXKsE3kQtZQ4pF3D513kueEKnV03vdnKjw.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Arsenal" - } - ] - }, - { - "name": "Artifika", - "fontFamily": "Artifika, serif", - "slug": "artifika", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/artifika/v21/VEMyRoxzronptCuxu6Wt5jDtreOL.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Artifika" - } - ] - }, - { - "name": "Arvo", - "fontFamily": "Arvo, serif", - "slug": "arvo", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/arvo/v20/tDbD2oWUg0MKmSAa7Lzr7vs.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Arvo" - }, - { - "src": "http://fonts.gstatic.com/s/arvo/v20/tDbN2oWUg0MKqSIQ6J7u_vvijQ.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Arvo" - }, - { - "src": "http://fonts.gstatic.com/s/arvo/v20/tDbM2oWUg0MKoZw1yLTA8vL7lAE.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Arvo" - }, - { - "src": "http://fonts.gstatic.com/s/arvo/v20/tDbO2oWUg0MKqSIoVLHK9tD-hAHkGg.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Arvo" - } - ] - }, - { - "name": "Arya", - "fontFamily": "Arya, sans-serif", - "slug": "arya", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/arya/v19/ga6CawNG-HJd9Ub1-beqdFE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Arya" - }, - { - "src": "http://fonts.gstatic.com/s/arya/v19/ga6NawNG-HJdzfra3b-BaFg3dRE.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Arya" - } - ] - }, - { - "name": "Asap", - "fontFamily": "Asap, sans-serif", - "slug": "asap", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/asap/v26/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYkqQsLmOXoA7Glw.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Asap" - }, - { - "src": "http://fonts.gstatic.com/s/asap/v26/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYEqUsLmOXoA7Glw.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Asap" - }, - { - "src": "http://fonts.gstatic.com/s/asap/v26/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYzKUsLmOXoA7Glw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Asap" - }, - { - "src": "http://fonts.gstatic.com/s/asap/v26/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYkqUsLmOXoA7Glw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Asap" - }, - { - "src": "http://fonts.gstatic.com/s/asap/v26/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYoKUsLmOXoA7Glw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Asap" - }, - { - "src": "http://fonts.gstatic.com/s/asap/v26/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYTKIsLmOXoA7Glw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Asap" - }, - { - "src": "http://fonts.gstatic.com/s/asap/v26/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYdaIsLmOXoA7Glw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Asap" - }, - { - "src": "http://fonts.gstatic.com/s/asap/v26/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYEqIsLmOXoA7Glw.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Asap" - }, - { - "src": "http://fonts.gstatic.com/s/asap/v26/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYO6IsLmOXoA7Glw.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Asap" - }, - { - "src": "http://fonts.gstatic.com/s/asap/v26/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWubEbGmTggvWl0Qn.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Asap" - }, - { - "src": "http://fonts.gstatic.com/s/asap/v26/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWuZEbWmTggvWl0Qn.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Asap" - }, - { - "src": "http://fonts.gstatic.com/s/asap/v26/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWuaabWmTggvWl0Qn.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Asap" - }, - { - "src": "http://fonts.gstatic.com/s/asap/v26/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWubEbWmTggvWl0Qn.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Asap" - }, - { - "src": "http://fonts.gstatic.com/s/asap/v26/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWub2bWmTggvWl0Qn.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Asap" - }, - { - "src": "http://fonts.gstatic.com/s/asap/v26/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWuYaammTggvWl0Qn.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Asap" - }, - { - "src": "http://fonts.gstatic.com/s/asap/v26/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWuYjammTggvWl0Qn.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Asap" - }, - { - "src": "http://fonts.gstatic.com/s/asap/v26/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWuZEammTggvWl0Qn.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Asap" - }, - { - "src": "http://fonts.gstatic.com/s/asap/v26/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWuZtammTggvWl0Qn.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Asap" - } - ] - }, - { - "name": "Asap Condensed", - "fontFamily": "Asap Condensed, sans-serif", - "slug": "asap-condensed", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/asapcondensed/v17/pxieypY1o9NHyXh3WvSbGSggdO9DSWlEgGqgp-pO.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Asap Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/asapcondensed/v17/pxiYypY1o9NHyXh3WvSbGSggdOeJUIFFim6CovpOkXA.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Asap Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/asapcondensed/v17/pxieypY1o9NHyXh3WvSbGSggdO8nSmlEgGqgp-pO.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Asap Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/asapcondensed/v17/pxiYypY1o9NHyXh3WvSbGSggdOeJUOVGim6CovpOkXA.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Asap Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/asapcondensed/v17/pxidypY1o9NHyXh3WvSbGSggdNeLYk1Mq3ap.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Asap Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/asapcondensed/v17/pxifypY1o9NHyXh3WvSbGSggdOeJaElurmapvvM.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Asap Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/asapcondensed/v17/pxieypY1o9NHyXh3WvSbGSggdO9_S2lEgGqgp-pO.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Asap Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/asapcondensed/v17/pxiYypY1o9NHyXh3WvSbGSggdOeJUL1Him6CovpOkXA.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Asap Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/asapcondensed/v17/pxieypY1o9NHyXh3WvSbGSggdO9TTGlEgGqgp-pO.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Asap Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/asapcondensed/v17/pxiYypY1o9NHyXh3WvSbGSggdOeJUJFAim6CovpOkXA.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Asap Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/asapcondensed/v17/pxieypY1o9NHyXh3WvSbGSggdO83TWlEgGqgp-pO.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Asap Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/asapcondensed/v17/pxiYypY1o9NHyXh3WvSbGSggdOeJUPVBim6CovpOkXA.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Asap Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/asapcondensed/v17/pxieypY1o9NHyXh3WvSbGSggdO8rTmlEgGqgp-pO.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Asap Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/asapcondensed/v17/pxiYypY1o9NHyXh3WvSbGSggdOeJUOlCim6CovpOkXA.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Asap Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/asapcondensed/v17/pxieypY1o9NHyXh3WvSbGSggdO8PT2lEgGqgp-pO.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Asap Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/asapcondensed/v17/pxiYypY1o9NHyXh3WvSbGSggdOeJUM1Dim6CovpOkXA.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Asap Condensed" - } - ] - }, - { - "name": "Asar", - "fontFamily": "Asar, serif", - "slug": "asar", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/asar/v22/sZlLdRyI6TBIXkYQDLlTW6E.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Asar" - } - ] - }, - { - "name": "Asset", - "fontFamily": "Asset, system-ui", - "slug": "asset", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/asset/v24/SLXGc1na-mM4cWImRJqExst1.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Asset" - } - ] - }, - { - "name": "Assistant", - "fontFamily": "Assistant, sans-serif", - "slug": "assistant", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/assistant/v18/2sDPZGJYnIjSi6H75xkZZE1I0yCmYzzQtmZnEGGf3qGuvM4.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Assistant" - }, - { - "src": "http://fonts.gstatic.com/s/assistant/v18/2sDPZGJYnIjSi6H75xkZZE1I0yCmYzzQtrhnEGGf3qGuvM4.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Assistant" - }, - { - "src": "http://fonts.gstatic.com/s/assistant/v18/2sDPZGJYnIjSi6H75xkZZE1I0yCmYzzQtuZnEGGf3qGuvM4.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Assistant" - }, - { - "src": "http://fonts.gstatic.com/s/assistant/v18/2sDPZGJYnIjSi6H75xkZZE1I0yCmYzzQttRnEGGf3qGuvM4.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Assistant" - }, - { - "src": "http://fonts.gstatic.com/s/assistant/v18/2sDPZGJYnIjSi6H75xkZZE1I0yCmYzzQtjhgEGGf3qGuvM4.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Assistant" - }, - { - "src": "http://fonts.gstatic.com/s/assistant/v18/2sDPZGJYnIjSi6H75xkZZE1I0yCmYzzQtgFgEGGf3qGuvM4.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Assistant" - }, - { - "src": "http://fonts.gstatic.com/s/assistant/v18/2sDPZGJYnIjSi6H75xkZZE1I0yCmYzzQtmZgEGGf3qGuvM4.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Assistant" - } - ] - }, - { - "name": "Astloch", - "fontFamily": "Astloch, system-ui", - "slug": "astloch", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/astloch/v26/TuGRUVJ8QI5GSeUjq9wRzMtkH1Q.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Astloch" - }, - { - "src": "http://fonts.gstatic.com/s/astloch/v26/TuGUUVJ8QI5GSeUjk2A-6MNPA10xLMQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Astloch" - } - ] - }, - { - "name": "Asul", - "fontFamily": "Asul, sans-serif", - "slug": "asul", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/asul/v19/VuJ-dNjKxYr46fMFXK78JIg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Asul" - }, - { - "src": "http://fonts.gstatic.com/s/asul/v19/VuJxdNjKxYr40U8qeKbXOIFneRo.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Asul" - } - ] - }, - { - "name": "Athiti", - "fontFamily": "Athiti, sans-serif", - "slug": "athiti", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/athiti/v12/pe0sMISdLIZIv1wAxDNyAv2-C99ycg.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Athiti" - }, - { - "src": "http://fonts.gstatic.com/s/athiti/v12/pe0sMISdLIZIv1wAoDByAv2-C99ycg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Athiti" - }, - { - "src": "http://fonts.gstatic.com/s/athiti/v12/pe0vMISdLIZIv1w4DBhWCtaiAg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Athiti" - }, - { - "src": "http://fonts.gstatic.com/s/athiti/v12/pe0sMISdLIZIv1wA-DFyAv2-C99ycg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Athiti" - }, - { - "src": "http://fonts.gstatic.com/s/athiti/v12/pe0sMISdLIZIv1wA1DZyAv2-C99ycg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Athiti" - }, - { - "src": "http://fonts.gstatic.com/s/athiti/v12/pe0sMISdLIZIv1wAsDdyAv2-C99ycg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Athiti" - } - ] - }, - { - "name": "Atkinson Hyperlegible", - "fontFamily": "Atkinson Hyperlegible, sans-serif", - "slug": "atkinson-hyperlegible", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/atkinsonhyperlegible/v11/9Bt23C1KxNDXMspQ1lPyU89-1h6ONRlW45GE5ZgpewSSbQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Atkinson Hyperlegible" - }, - { - "src": "http://fonts.gstatic.com/s/atkinsonhyperlegible/v11/9Bt43C1KxNDXMspQ1lPyU89-1h6ONRlW45G055ItWQGCbUWn.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Atkinson Hyperlegible" - }, - { - "src": "http://fonts.gstatic.com/s/atkinsonhyperlegible/v11/9Bt73C1KxNDXMspQ1lPyU89-1h6ONRlW45G8WbcNcy-OZFy-FA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Atkinson Hyperlegible" - }, - { - "src": "http://fonts.gstatic.com/s/atkinsonhyperlegible/v11/9Bt93C1KxNDXMspQ1lPyU89-1h6ONRlW45G056qRdiWKRlmuFH24.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Atkinson Hyperlegible" - } - ] - }, - { - "name": "Atma", - "fontFamily": "Atma, system-ui", - "slug": "atma", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/atma/v16/uK_z4rqWc-Eoo8JzKjc9PvedRkM.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Atma" - }, - { - "src": "http://fonts.gstatic.com/s/atma/v16/uK_84rqWc-Eom25bDj8WIv4.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Atma" - }, - { - "src": "http://fonts.gstatic.com/s/atma/v16/uK_z4rqWc-Eoo5pyKjc9PvedRkM.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Atma" - }, - { - "src": "http://fonts.gstatic.com/s/atma/v16/uK_z4rqWc-Eoo7Z1Kjc9PvedRkM.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Atma" - }, - { - "src": "http://fonts.gstatic.com/s/atma/v16/uK_z4rqWc-Eoo9J0Kjc9PvedRkM.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Atma" - } - ] - }, - { - "name": "Atomic Age", - "fontFamily": "Atomic Age, system-ui", - "slug": "atomic-age", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/atomicage/v27/f0Xz0eug6sdmRFkYZZGL58Ht9a8GYeA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Atomic Age" - } - ] - }, - { - "name": "Aubrey", - "fontFamily": "Aubrey, system-ui", - "slug": "aubrey", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/aubrey/v28/q5uGsou7NPBw-p7vugNsCxVEgA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Aubrey" - } - ] - }, - { - "name": "Audiowide", - "fontFamily": "Audiowide, system-ui", - "slug": "audiowide", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/audiowide/v16/l7gdbjpo0cum0ckerWCtkQXPExpQBw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Audiowide" - } - ] - }, - { - "name": "Autour One", - "fontFamily": "Autour One, system-ui", - "slug": "autour-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/autourone/v24/UqyVK80cP25l3fJgbdfbk5lWVscxdKE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Autour One" - } - ] - }, - { - "name": "Average", - "fontFamily": "Average, serif", - "slug": "average", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/average/v18/fC1hPYBHe23MxA7rIeJwVWytTyk.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Average" - } - ] - }, - { - "name": "Average Sans", - "fontFamily": "Average Sans, sans-serif", - "slug": "average-sans", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/averagesans/v16/1Ptpg8fLXP2dlAXR-HlJJNJPBdqazVoK4A.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Average Sans" - } - ] - }, - { - "name": "Averia Gruesa Libre", - "fontFamily": "Averia Gruesa Libre, system-ui", - "slug": "averia-gruesa-libre", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/averiagruesalibre/v22/NGSov4nEGEktOaDRKsY-1dhh8eEtIx3ZUmmJw0SLRA8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Averia Gruesa Libre" - } - ] - }, - { - "name": "Averia Libre", - "fontFamily": "Averia Libre, system-ui", - "slug": "averia-libre", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/averialibre/v16/2V0FKIcMGZEnV6xygz7eNjEarovtb07t-pQgTw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Averia Libre" - }, - { - "src": "http://fonts.gstatic.com/s/averialibre/v16/2V0HKIcMGZEnV6xygz7eNjESAJFhbUTp2JEwT4Sk.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Averia Libre" - }, - { - "src": "http://fonts.gstatic.com/s/averialibre/v16/2V0aKIcMGZEnV6xygz7eNjEiAqPJZ2Xx8w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Averia Libre" - }, - { - "src": "http://fonts.gstatic.com/s/averialibre/v16/2V0EKIcMGZEnV6xygz7eNjESAKnNRWDh8405.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Averia Libre" - }, - { - "src": "http://fonts.gstatic.com/s/averialibre/v16/2V0FKIcMGZEnV6xygz7eNjEavoztb07t-pQgTw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Averia Libre" - }, - { - "src": "http://fonts.gstatic.com/s/averialibre/v16/2V0HKIcMGZEnV6xygz7eNjESAJFxakTp2JEwT4Sk.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Averia Libre" - } - ] - }, - { - "name": "Averia Sans Libre", - "fontFamily": "Averia Sans Libre, system-ui", - "slug": "averia-sans-libre", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/averiasanslibre/v17/ga6SaxZG_G5OvCf_rt7FH3B6BHLMEd3lMKcQJZP1LmD9.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Averia Sans Libre" - }, - { - "src": "http://fonts.gstatic.com/s/averiasanslibre/v17/ga6caxZG_G5OvCf_rt7FH3B6BHLMEdVLKisSL5fXK3D9qtg.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Averia Sans Libre" - }, - { - "src": "http://fonts.gstatic.com/s/averiasanslibre/v17/ga6XaxZG_G5OvCf_rt7FH3B6BHLMEeVJGIMYDo_8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Averia Sans Libre" - }, - { - "src": "http://fonts.gstatic.com/s/averiasanslibre/v17/ga6RaxZG_G5OvCf_rt7FH3B6BHLMEdVLEoc6C5_8N3k.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Averia Sans Libre" - }, - { - "src": "http://fonts.gstatic.com/s/averiasanslibre/v17/ga6SaxZG_G5OvCf_rt7FH3B6BHLMEd31N6cQJZP1LmD9.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Averia Sans Libre" - }, - { - "src": "http://fonts.gstatic.com/s/averiasanslibre/v17/ga6caxZG_G5OvCf_rt7FH3B6BHLMEdVLKjsVL5fXK3D9qtg.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Averia Sans Libre" - } - ] - }, - { - "name": "Averia Serif Libre", - "fontFamily": "Averia Serif Libre, system-ui", - "slug": "averia-serif-libre", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/averiaseriflibre/v16/neIVzD2ms4wxr6GvjeD0X88SHPyX2xYGCSmqwacqdrKvbQ.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Averia Serif Libre" - }, - { - "src": "http://fonts.gstatic.com/s/averiaseriflibre/v16/neIbzD2ms4wxr6GvjeD0X88SHPyX2xYOpzMmw60uVLe_bXHq.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Averia Serif Libre" - }, - { - "src": "http://fonts.gstatic.com/s/averiaseriflibre/v16/neIWzD2ms4wxr6GvjeD0X88SHPyX2xY-pQGOyYw2fw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Averia Serif Libre" - }, - { - "src": "http://fonts.gstatic.com/s/averiaseriflibre/v16/neIUzD2ms4wxr6GvjeD0X88SHPyX2xYOpwuK64kmf6u2.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Averia Serif Libre" - }, - { - "src": "http://fonts.gstatic.com/s/averiaseriflibre/v16/neIVzD2ms4wxr6GvjeD0X88SHPyX2xYGGS6qwacqdrKvbQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Averia Serif Libre" - }, - { - "src": "http://fonts.gstatic.com/s/averiaseriflibre/v16/neIbzD2ms4wxr6GvjeD0X88SHPyX2xYOpzM2xK0uVLe_bXHq.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Averia Serif Libre" - } - ] - }, - { - "name": "Azeret Mono", - "fontFamily": "Azeret Mono, monospace", - "slug": "azeret-mono", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfnPRh0raa-5s3AA.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Azeret Mono" - }, - { - "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfHPVh0raa-5s3AA.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Azeret Mono" - }, - { - "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfwvVh0raa-5s3AA.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Azeret Mono" - }, - { - "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfnPVh0raa-5s3AA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Azeret Mono" - }, - { - "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfrvVh0raa-5s3AA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Azeret Mono" - }, - { - "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfQvJh0raa-5s3AA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Azeret Mono" - }, - { - "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfe_Jh0raa-5s3AA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Azeret Mono" - }, - { - "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfHPJh0raa-5s3AA.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Azeret Mono" - }, - { - "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfNfJh0raa-5s3AA.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Azeret Mono" - }, - { - "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLaJkLye2Z4nAN7J.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Azeret Mono" - }, - { - "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLYJkbye2Z4nAN7J.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Azeret Mono" - }, - { - "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLbXkbye2Z4nAN7J.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Azeret Mono" - }, - { - "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLaJkbye2Z4nAN7J.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Azeret Mono" - }, - { - "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLa7kbye2Z4nAN7J.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Azeret Mono" - }, - { - "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLZXlrye2Z4nAN7J.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Azeret Mono" - }, - { - "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLZulrye2Z4nAN7J.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Azeret Mono" - }, - { - "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLYJlrye2Z4nAN7J.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Azeret Mono" - }, - { - "src": "http://fonts.gstatic.com/s/azeretmono/v17/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLYglrye2Z4nAN7J.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Azeret Mono" - } - ] - }, - { - "name": "B612", - "fontFamily": "B612, sans-serif", - "slug": "b612", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/b612/v12/3JnySDDxiSz32jm4GDigUXw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "B612" - }, - { - "src": "http://fonts.gstatic.com/s/b612/v12/3Jn8SDDxiSz36juyHBqlQXwdVw.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "B612" - }, - { - "src": "http://fonts.gstatic.com/s/b612/v12/3Jn9SDDxiSz34oWXPDCLTXUETuE.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "B612" - }, - { - "src": "http://fonts.gstatic.com/s/b612/v12/3Jn_SDDxiSz36juKoDWBSVcBXuFb0Q.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "B612" - } - ] - }, - { - "name": "B612 Mono", - "fontFamily": "B612 Mono, monospace", - "slug": "b612-mono", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/b612mono/v12/kmK_Zq85QVWbN1eW6lJl1wTcquRTtg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "B612 Mono" - }, - { - "src": "http://fonts.gstatic.com/s/b612mono/v12/kmK5Zq85QVWbN1eW6lJV1Q7YiOFDtqtf.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "B612 Mono" - }, - { - "src": "http://fonts.gstatic.com/s/b612mono/v12/kmK6Zq85QVWbN1eW6lJdayv4os9Pv7JGSg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "B612 Mono" - }, - { - "src": "http://fonts.gstatic.com/s/b612mono/v12/kmKkZq85QVWbN1eW6lJV1TZkp8VLnbdWSg4x.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "B612 Mono" - } - ] - }, - { - "name": "BIZ UDGothic", - "fontFamily": "BIZ UDGothic, sans-serif", - "slug": "biz-udgothic", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bizudgothic/v9/daafSTouBF7RUjnbt8p3LuKttQN98z_MbQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "BIZ UDGothic" - }, - { - "src": "http://fonts.gstatic.com/s/bizudgothic/v9/daaASTouBF7RUjnbt8p3LuKVCSxZ-xTQZMhbaA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "BIZ UDGothic" - } - ] - }, - { - "name": "BIZ UDMincho", - "fontFamily": "BIZ UDMincho, serif", - "slug": "biz-udmincho", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bizudmincho/v9/EJRRQgI6eOxFjBdKs38yhtW1dwT7rcpY8Q.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "BIZ UDMincho" - }, - { - "src": "http://fonts.gstatic.com/s/bizudmincho/v9/EJROQgI6eOxFjBdKs38yhtWNyyvfpeFE-IyCrw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "BIZ UDMincho" - } - ] - }, - { - "name": "BIZ UDPGothic", - "fontFamily": "BIZ UDPGothic, sans-serif", - "slug": "biz-udpgothic", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bizudpgothic/v9/hES36X5pHAIBjmS84VL0Bue83nUMQWkMUAk.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "BIZ UDPGothic" - }, - { - "src": "http://fonts.gstatic.com/s/bizudpgothic/v9/hESq6X5pHAIBjmS84VL0Bue85skjZWEnTABCSQo.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "BIZ UDPGothic" - } - ] - }, - { - "name": "BIZ UDPMincho", - "fontFamily": "BIZ UDPMincho, serif", - "slug": "biz-udpmincho", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bizudpmincho/v9/ypvfbXOBrmYppy7oWWTg1_58nhhYtUb0gZk.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "BIZ UDPMincho" - }, - { - "src": "http://fonts.gstatic.com/s/bizudpmincho/v9/ypvCbXOBrmYppy7oWWTg1_58pqR3kU7fnZAy57k.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "BIZ UDPMincho" - } - ] - }, - { - "name": "Babylonica", - "fontFamily": "Babylonica, cursive", - "slug": "babylonica", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/babylonica/v2/5aUw9_i2qxWVCAE2aHjTqDJ0-VVMoEw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Babylonica" - } - ] - }, - { - "name": "Bad Script", - "fontFamily": "Bad Script, cursive", - "slug": "bad-script", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/badscript/v16/6NUT8F6PJgbFWQn47_x7lOwuzd1AZtw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bad Script" - } - ] - }, - { - "name": "Bahiana", - "fontFamily": "Bahiana, system-ui", - "slug": "bahiana", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bahiana/v19/uU9PCBUV4YenPWJU7xPb3vyHmlI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bahiana" - } - ] - }, - { - "name": "Bahianita", - "fontFamily": "Bahianita, system-ui", - "slug": "bahianita", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bahianita/v18/yYLr0hTb3vuqqsBUgxWtxTvV2NJPcA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bahianita" - } - ] - }, - { - "name": "Bai Jamjuree", - "fontFamily": "Bai Jamjuree, sans-serif", - "slug": "bai-jamjuree", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/baijamjuree/v11/LDIqapSCOBt_aeQQ7ftydoa0kePuk5A1-yiSgA.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Bai Jamjuree" - }, - { - "src": "http://fonts.gstatic.com/s/baijamjuree/v11/LDIoapSCOBt_aeQQ7ftydoa8W_oGkpox2S2CgOva.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Bai Jamjuree" - }, - { - "src": "http://fonts.gstatic.com/s/baijamjuree/v11/LDIqapSCOBt_aeQQ7ftydoa09eDuk5A1-yiSgA.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Bai Jamjuree" - }, - { - "src": "http://fonts.gstatic.com/s/baijamjuree/v11/LDIoapSCOBt_aeQQ7ftydoa8W_pikZox2S2CgOva.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Bai Jamjuree" - }, - { - "src": "http://fonts.gstatic.com/s/baijamjuree/v11/LDI1apSCOBt_aeQQ7ftydoaMWcjKm7sp8g.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bai Jamjuree" - }, - { - "src": "http://fonts.gstatic.com/s/baijamjuree/v11/LDIrapSCOBt_aeQQ7ftydoa8W8LOub458jGL.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Bai Jamjuree" - }, - { - "src": "http://fonts.gstatic.com/s/baijamjuree/v11/LDIqapSCOBt_aeQQ7ftydoa0reHuk5A1-yiSgA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Bai Jamjuree" - }, - { - "src": "http://fonts.gstatic.com/s/baijamjuree/v11/LDIoapSCOBt_aeQQ7ftydoa8W_o6kJox2S2CgOva.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Bai Jamjuree" - }, - { - "src": "http://fonts.gstatic.com/s/baijamjuree/v11/LDIqapSCOBt_aeQQ7ftydoa0gebuk5A1-yiSgA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Bai Jamjuree" - }, - { - "src": "http://fonts.gstatic.com/s/baijamjuree/v11/LDIoapSCOBt_aeQQ7ftydoa8W_oWl5ox2S2CgOva.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Bai Jamjuree" - }, - { - "src": "http://fonts.gstatic.com/s/baijamjuree/v11/LDIqapSCOBt_aeQQ7ftydoa05efuk5A1-yiSgA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Bai Jamjuree" - }, - { - "src": "http://fonts.gstatic.com/s/baijamjuree/v11/LDIoapSCOBt_aeQQ7ftydoa8W_pylpox2S2CgOva.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Bai Jamjuree" - } - ] - }, - { - "name": "Bakbak One", - "fontFamily": "Bakbak One, system-ui", - "slug": "bakbak-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bakbakone/v6/zOL54pXAl6RI-p_ardnuycRuv-hHkOs.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bakbak One" - } - ] - }, - { - "name": "Ballet", - "fontFamily": "Ballet, cursive", - "slug": "ballet", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ballet/v25/QGYyz_MYZA-HM4NjuGOVnUEXme1I4Xi3C4G-EiAou6Y.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Ballet" - } - ] - }, - { - "name": "Baloo 2", - "fontFamily": "Baloo 2, system-ui", - "slug": "baloo-2", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/baloo2/v16/wXK0E3kTposypRydzVT08TS3JnAmtdgazapv9Fat7WcN.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Baloo 2" - }, - { - "src": "http://fonts.gstatic.com/s/baloo2/v16/wXK0E3kTposypRydzVT08TS3JnAmtdgozapv9Fat7WcN.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Baloo 2" - }, - { - "src": "http://fonts.gstatic.com/s/baloo2/v16/wXK0E3kTposypRydzVT08TS3JnAmtdjEyqpv9Fat7WcN.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Baloo 2" - }, - { - "src": "http://fonts.gstatic.com/s/baloo2/v16/wXK0E3kTposypRydzVT08TS3JnAmtdj9yqpv9Fat7WcN.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Baloo 2" - }, - { - "src": "http://fonts.gstatic.com/s/baloo2/v16/wXK0E3kTposypRydzVT08TS3JnAmtdiayqpv9Fat7WcN.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Baloo 2" - } - ] - }, - { - "name": "Baloo Bhai 2", - "fontFamily": "Baloo Bhai 2, system-ui", - "slug": "baloo-bhai-2", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/baloobhai2/v22/sZlWdRSL-z1VEWZ4YNA7Y5ItevYWUOHDE8FvNighMXeCo-jsZzo.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Baloo Bhai 2" - }, - { - "src": "http://fonts.gstatic.com/s/baloobhai2/v22/sZlWdRSL-z1VEWZ4YNA7Y5ItevYWUOHDE8FvNhohMXeCo-jsZzo.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Baloo Bhai 2" - }, - { - "src": "http://fonts.gstatic.com/s/baloobhai2/v22/sZlWdRSL-z1VEWZ4YNA7Y5ItevYWUOHDE8FvNvYmMXeCo-jsZzo.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Baloo Bhai 2" - }, - { - "src": "http://fonts.gstatic.com/s/baloobhai2/v22/sZlWdRSL-z1VEWZ4YNA7Y5ItevYWUOHDE8FvNs8mMXeCo-jsZzo.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Baloo Bhai 2" - }, - { - "src": "http://fonts.gstatic.com/s/baloobhai2/v22/sZlWdRSL-z1VEWZ4YNA7Y5ItevYWUOHDE8FvNqgmMXeCo-jsZzo.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Baloo Bhai 2" - } - ] - }, - { - "name": "Baloo Bhaijaan 2", - "fontFamily": "Baloo Bhaijaan 2, system-ui", - "slug": "baloo-bhaijaan-2", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/baloobhaijaan2/v14/zYXwKUwuEqdVGqM8tPDdAA_Y-_bMKo1EhQd2tWxo8TyRSqP4L4ppfcyC.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Baloo Bhaijaan 2" - }, - { - "src": "http://fonts.gstatic.com/s/baloobhaijaan2/v14/zYXwKUwuEqdVGqM8tPDdAA_Y-_bMKo1EhQd2tWxo8TyjSqP4L4ppfcyC.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Baloo Bhaijaan 2" - }, - { - "src": "http://fonts.gstatic.com/s/baloobhaijaan2/v14/zYXwKUwuEqdVGqM8tPDdAA_Y-_bMKo1EhQd2tWxo8TxPTaP4L4ppfcyC.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Baloo Bhaijaan 2" - }, - { - "src": "http://fonts.gstatic.com/s/baloobhaijaan2/v14/zYXwKUwuEqdVGqM8tPDdAA_Y-_bMKo1EhQd2tWxo8Tx2TaP4L4ppfcyC.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Baloo Bhaijaan 2" - }, - { - "src": "http://fonts.gstatic.com/s/baloobhaijaan2/v14/zYXwKUwuEqdVGqM8tPDdAA_Y-_bMKo1EhQd2tWxo8TwRTaP4L4ppfcyC.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Baloo Bhaijaan 2" - } - ] - }, - { - "name": "Baloo Bhaina 2", - "fontFamily": "Baloo Bhaina 2, system-ui", - "slug": "baloo-bhaina-2", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/baloobhaina2/v22/qWc-B6yyq4P9Adr3RtoX1q6ySgbwusXwJjkOS-XEssPvRfRLYWmZSA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Baloo Bhaina 2" - }, - { - "src": "http://fonts.gstatic.com/s/baloobhaina2/v22/qWc-B6yyq4P9Adr3RtoX1q6ySgbwusXwJjkOS-XEgMPvRfRLYWmZSA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Baloo Bhaina 2" - }, - { - "src": "http://fonts.gstatic.com/s/baloobhaina2/v22/qWc-B6yyq4P9Adr3RtoX1q6ySgbwusXwJjkOS-XEbMTvRfRLYWmZSA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Baloo Bhaina 2" - }, - { - "src": "http://fonts.gstatic.com/s/baloobhaina2/v22/qWc-B6yyq4P9Adr3RtoX1q6ySgbwusXwJjkOS-XEVcTvRfRLYWmZSA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Baloo Bhaina 2" - }, - { - "src": "http://fonts.gstatic.com/s/baloobhaina2/v22/qWc-B6yyq4P9Adr3RtoX1q6ySgbwusXwJjkOS-XEMsTvRfRLYWmZSA.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Baloo Bhaina 2" - } - ] - }, - { - "name": "Baloo Chettan 2", - "fontFamily": "Baloo Chettan 2, system-ui", - "slug": "baloo-chettan-2", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/baloochettan2/v16/vm8hdRbmXEva26PK-NtuX4ynWEzF69-L4gqgkIL5CeKTO1oeH9xI2gc.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Baloo Chettan 2" - }, - { - "src": "http://fonts.gstatic.com/s/baloochettan2/v16/vm8hdRbmXEva26PK-NtuX4ynWEzF69-L4gqgkIL5CdCTO1oeH9xI2gc.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Baloo Chettan 2" - }, - { - "src": "http://fonts.gstatic.com/s/baloochettan2/v16/vm8hdRbmXEva26PK-NtuX4ynWEzF69-L4gqgkIL5CTyUO1oeH9xI2gc.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Baloo Chettan 2" - }, - { - "src": "http://fonts.gstatic.com/s/baloochettan2/v16/vm8hdRbmXEva26PK-NtuX4ynWEzF69-L4gqgkIL5CQWUO1oeH9xI2gc.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Baloo Chettan 2" - }, - { - "src": "http://fonts.gstatic.com/s/baloochettan2/v16/vm8hdRbmXEva26PK-NtuX4ynWEzF69-L4gqgkIL5CWKUO1oeH9xI2gc.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Baloo Chettan 2" - } - ] - }, - { - "name": "Baloo Da 2", - "fontFamily": "Baloo Da 2, system-ui", - "slug": "baloo-da-2", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/balooda2/v17/2-c39J9j0IaUMQZwAJyJaOX1UUnf3GLnYjALsTNe55aRa7UE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Baloo Da 2" - }, - { - "src": "http://fonts.gstatic.com/s/balooda2/v17/2-c39J9j0IaUMQZwAJyJaOX1UUnf3GLnYjA5sTNe55aRa7UE.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Baloo Da 2" - }, - { - "src": "http://fonts.gstatic.com/s/balooda2/v17/2-c39J9j0IaUMQZwAJyJaOX1UUnf3GLnYjDVtjNe55aRa7UE.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Baloo Da 2" - }, - { - "src": "http://fonts.gstatic.com/s/balooda2/v17/2-c39J9j0IaUMQZwAJyJaOX1UUnf3GLnYjDstjNe55aRa7UE.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Baloo Da 2" - }, - { - "src": "http://fonts.gstatic.com/s/balooda2/v17/2-c39J9j0IaUMQZwAJyJaOX1UUnf3GLnYjCLtjNe55aRa7UE.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Baloo Da 2" - } - ] - }, - { - "name": "Baloo Paaji 2", - "fontFamily": "Baloo Paaji 2, system-ui", - "slug": "baloo-paaji-2", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/baloopaaji2/v22/i7dfIFFzbz-QHZUdV9_UGWZuelmy79QJ1HOSY9AX74fybRUz1r5t.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Baloo Paaji 2" - }, - { - "src": "http://fonts.gstatic.com/s/baloopaaji2/v22/i7dfIFFzbz-QHZUdV9_UGWZuelmy79QJ1HOSY9Al74fybRUz1r5t.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Baloo Paaji 2" - }, - { - "src": "http://fonts.gstatic.com/s/baloopaaji2/v22/i7dfIFFzbz-QHZUdV9_UGWZuelmy79QJ1HOSY9DJ6IfybRUz1r5t.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Baloo Paaji 2" - }, - { - "src": "http://fonts.gstatic.com/s/baloopaaji2/v22/i7dfIFFzbz-QHZUdV9_UGWZuelmy79QJ1HOSY9Dw6IfybRUz1r5t.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Baloo Paaji 2" - }, - { - "src": "http://fonts.gstatic.com/s/baloopaaji2/v22/i7dfIFFzbz-QHZUdV9_UGWZuelmy79QJ1HOSY9CX6IfybRUz1r5t.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Baloo Paaji 2" - } - ] - }, - { - "name": "Baloo Tamma 2", - "fontFamily": "Baloo Tamma 2, system-ui", - "slug": "baloo-tamma-2", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/balootamma2/v15/vEFE2_hCAgcR46PaajtrYlBbVUMUJgIC5LHTrMscPp-0IF71SGC5.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Baloo Tamma 2" - }, - { - "src": "http://fonts.gstatic.com/s/balootamma2/v15/vEFE2_hCAgcR46PaajtrYlBbVUMUJgIC5LHTrMsuPp-0IF71SGC5.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Baloo Tamma 2" - }, - { - "src": "http://fonts.gstatic.com/s/balootamma2/v15/vEFE2_hCAgcR46PaajtrYlBbVUMUJgIC5LHTrMvCOZ-0IF71SGC5.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Baloo Tamma 2" - }, - { - "src": "http://fonts.gstatic.com/s/balootamma2/v15/vEFE2_hCAgcR46PaajtrYlBbVUMUJgIC5LHTrMv7OZ-0IF71SGC5.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Baloo Tamma 2" - }, - { - "src": "http://fonts.gstatic.com/s/balootamma2/v15/vEFE2_hCAgcR46PaajtrYlBbVUMUJgIC5LHTrMucOZ-0IF71SGC5.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Baloo Tamma 2" - } - ] - }, - { - "name": "Baloo Tammudu 2", - "fontFamily": "Baloo Tammudu 2, system-ui", - "slug": "baloo-tammudu-2", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/balootammudu2/v22/1Pt5g8TIS_SAmkLguUdFP8UaJcKkzlPmMT00GaE_Jf8e4c6PZSlGmAA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Baloo Tammudu 2" - }, - { - "src": "http://fonts.gstatic.com/s/balootammudu2/v22/1Pt5g8TIS_SAmkLguUdFP8UaJcKkzlPmMT00GaE_Jc0e4c6PZSlGmAA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Baloo Tammudu 2" - }, - { - "src": "http://fonts.gstatic.com/s/balootammudu2/v22/1Pt5g8TIS_SAmkLguUdFP8UaJcKkzlPmMT00GaE_JSEZ4c6PZSlGmAA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Baloo Tammudu 2" - }, - { - "src": "http://fonts.gstatic.com/s/balootammudu2/v22/1Pt5g8TIS_SAmkLguUdFP8UaJcKkzlPmMT00GaE_JRgZ4c6PZSlGmAA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Baloo Tammudu 2" - }, - { - "src": "http://fonts.gstatic.com/s/balootammudu2/v22/1Pt5g8TIS_SAmkLguUdFP8UaJcKkzlPmMT00GaE_JX8Z4c6PZSlGmAA.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Baloo Tammudu 2" - } - ] - }, - { - "name": "Baloo Thambi 2", - "fontFamily": "Baloo Thambi 2, system-ui", - "slug": "baloo-thambi-2", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/baloothambi2/v16/cY9RfjeOW0NHpmOQXranrbDyu5JMJmNp-aDvUBbKzcIzaQRG_n4osQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Baloo Thambi 2" - }, - { - "src": "http://fonts.gstatic.com/s/baloothambi2/v16/cY9RfjeOW0NHpmOQXranrbDyu5JMJmNp-aDvUBbK_8IzaQRG_n4osQ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Baloo Thambi 2" - }, - { - "src": "http://fonts.gstatic.com/s/baloothambi2/v16/cY9RfjeOW0NHpmOQXranrbDyu5JMJmNp-aDvUBbKE8UzaQRG_n4osQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Baloo Thambi 2" - }, - { - "src": "http://fonts.gstatic.com/s/baloothambi2/v16/cY9RfjeOW0NHpmOQXranrbDyu5JMJmNp-aDvUBbKKsUzaQRG_n4osQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Baloo Thambi 2" - }, - { - "src": "http://fonts.gstatic.com/s/baloothambi2/v16/cY9RfjeOW0NHpmOQXranrbDyu5JMJmNp-aDvUBbKTcUzaQRG_n4osQ.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Baloo Thambi 2" - } - ] - }, - { - "name": "Balsamiq Sans", - "fontFamily": "Balsamiq Sans, system-ui", - "slug": "balsamiq-sans", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/balsamiqsans/v12/P5sEzZiAbNrN8SB3lQQX7Pnc8dkdIYdNHzs.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Balsamiq Sans" - }, - { - "src": "http://fonts.gstatic.com/s/balsamiqsans/v12/P5sazZiAbNrN8SB3lQQX7PncwdsXJaVIDzvcXA.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Balsamiq Sans" - }, - { - "src": "http://fonts.gstatic.com/s/balsamiqsans/v12/P5sZzZiAbNrN8SB3lQQX7PncyWUyBY9mAzLFRQI.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Balsamiq Sans" - }, - { - "src": "http://fonts.gstatic.com/s/balsamiqsans/v12/P5sfzZiAbNrN8SB3lQQX7PncwdsvmYpsBxDAVQI4aA.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Balsamiq Sans" - } - ] - }, - { - "name": "Balthazar", - "fontFamily": "Balthazar, serif", - "slug": "balthazar", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/balthazar/v17/d6lKkaajS8Gm4CVQjFEvyRTo39l8hw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Balthazar" - } - ] - }, - { - "name": "Bangers", - "fontFamily": "Bangers, system-ui", - "slug": "bangers", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bangers/v21/FeVQS0BTqb0h60ACL5la2bxii28.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bangers" - } - ] - }, - { - "name": "Barlow", - "fontFamily": "Barlow, sans-serif", - "slug": "barlow", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/barlow/v12/7cHrv4kjgoGqM7E3b8s8yn4hnCci.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Barlow" - }, - { - "src": "http://fonts.gstatic.com/s/barlow/v12/7cHtv4kjgoGqM7E_CfNYwHoDmTcibrA.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Barlow" - }, - { - "src": "http://fonts.gstatic.com/s/barlow/v12/7cHqv4kjgoGqM7E3w-oc4FAtlT47dw.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Barlow" - }, - { - "src": "http://fonts.gstatic.com/s/barlow/v12/7cHsv4kjgoGqM7E_CfP04Voptzsrd6m9.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Barlow" - }, - { - "src": "http://fonts.gstatic.com/s/barlow/v12/7cHqv4kjgoGqM7E3p-kc4FAtlT47dw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Barlow" - }, - { - "src": "http://fonts.gstatic.com/s/barlow/v12/7cHsv4kjgoGqM7E_CfOQ4loptzsrd6m9.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Barlow" - }, - { - "src": "http://fonts.gstatic.com/s/barlow/v12/7cHpv4kjgoGqM7EPC8E46HsxnA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Barlow" - }, - { - "src": "http://fonts.gstatic.com/s/barlow/v12/7cHrv4kjgoGqM7E_Ccs8yn4hnCci.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Barlow" - }, - { - "src": "http://fonts.gstatic.com/s/barlow/v12/7cHqv4kjgoGqM7E3_-gc4FAtlT47dw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Barlow" - }, - { - "src": "http://fonts.gstatic.com/s/barlow/v12/7cHsv4kjgoGqM7E_CfPI41optzsrd6m9.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Barlow" - }, - { - "src": "http://fonts.gstatic.com/s/barlow/v12/7cHqv4kjgoGqM7E30-8c4FAtlT47dw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Barlow" - }, - { - "src": "http://fonts.gstatic.com/s/barlow/v12/7cHsv4kjgoGqM7E_CfPk5Foptzsrd6m9.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Barlow" - }, - { - "src": "http://fonts.gstatic.com/s/barlow/v12/7cHqv4kjgoGqM7E3t-4c4FAtlT47dw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Barlow" - }, - { - "src": "http://fonts.gstatic.com/s/barlow/v12/7cHsv4kjgoGqM7E_CfOA5Voptzsrd6m9.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Barlow" - }, - { - "src": "http://fonts.gstatic.com/s/barlow/v12/7cHqv4kjgoGqM7E3q-0c4FAtlT47dw.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Barlow" - }, - { - "src": "http://fonts.gstatic.com/s/barlow/v12/7cHsv4kjgoGqM7E_CfOc5loptzsrd6m9.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Barlow" - }, - { - "src": "http://fonts.gstatic.com/s/barlow/v12/7cHqv4kjgoGqM7E3j-wc4FAtlT47dw.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Barlow" - }, - { - "src": "http://fonts.gstatic.com/s/barlow/v12/7cHsv4kjgoGqM7E_CfO451optzsrd6m9.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Barlow" - } - ] - }, - { - "name": "Barlow Condensed", - "fontFamily": "Barlow Condensed, sans-serif", - "slug": "barlow-condensed", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxxL3I-JCGChYJ8VI-L6OO_au7B43LT31vytKgbaw.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Barlow Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxzL3I-JCGChYJ8VI-L6OO_au7B6xTru1H2lq0La6JN.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Barlow Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxwL3I-JCGChYJ8VI-L6OO_au7B497y_3HcuKECcrs.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Barlow Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxyL3I-JCGChYJ8VI-L6OO_au7B6xTrF3DWvIMHYrtUxg.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Barlow Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxwL3I-JCGChYJ8VI-L6OO_au7B47rx_3HcuKECcrs.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Barlow Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxyL3I-JCGChYJ8VI-L6OO_au7B6xTrc3PWvIMHYrtUxg.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Barlow Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTx3L3I-JCGChYJ8VI-L6OO_au7B2xbZ23n3pKg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Barlow Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxxL3I-JCGChYJ8VI-L6OO_au7B6xTT31vytKgbaw.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Barlow Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxwL3I-JCGChYJ8VI-L6OO_au7B4-Lw_3HcuKECcrs.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Barlow Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxyL3I-JCGChYJ8VI-L6OO_au7B6xTrK3LWvIMHYrtUxg.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Barlow Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxwL3I-JCGChYJ8VI-L6OO_au7B4873_3HcuKECcrs.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Barlow Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxyL3I-JCGChYJ8VI-L6OO_au7B6xTrB3XWvIMHYrtUxg.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Barlow Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxwL3I-JCGChYJ8VI-L6OO_au7B46r2_3HcuKECcrs.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Barlow Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxyL3I-JCGChYJ8VI-L6OO_au7B6xTrY3TWvIMHYrtUxg.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Barlow Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxwL3I-JCGChYJ8VI-L6OO_au7B47b1_3HcuKECcrs.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Barlow Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxyL3I-JCGChYJ8VI-L6OO_au7B6xTrf3fWvIMHYrtUxg.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Barlow Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxwL3I-JCGChYJ8VI-L6OO_au7B45L0_3HcuKECcrs.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Barlow Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowcondensed/v12/HTxyL3I-JCGChYJ8VI-L6OO_au7B6xTrW3bWvIMHYrtUxg.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Barlow Condensed" - } - ] - }, - { - "name": "Barlow Semi Condensed", - "fontFamily": "Barlow Semi Condensed, sans-serif", - "slug": "barlow-semi-condensed", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlphgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRfG4qvKk8ogoSP.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Barlow Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpjgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfbLLIEsKh5SPZWs.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Barlow Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpigxjLBV1hqnzfr-F8sEYMB0Yybp0mudRft6uPAGEki52WfA.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Barlow Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpkgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfbJnAWsgqZiGfHK5.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Barlow Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpigxjLBV1hqnzfr-F8sEYMB0Yybp0mudRf06iPAGEki52WfA.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Barlow Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpkgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfbIDAmsgqZiGfHK5.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Barlow Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpvgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRnf4CrCEo4gg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Barlow Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlphgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfYqvKk8ogoSP.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Barlow Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpigxjLBV1hqnzfr-F8sEYMB0Yybp0mudRfi6mPAGEki52WfA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Barlow Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpkgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfbJbA2sgqZiGfHK5.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Barlow Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpigxjLBV1hqnzfr-F8sEYMB0Yybp0mudRfp66PAGEki52WfA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Barlow Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpkgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfbJ3BGsgqZiGfHK5.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Barlow Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpigxjLBV1hqnzfr-F8sEYMB0Yybp0mudRfw6-PAGEki52WfA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Barlow Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpkgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfbITBWsgqZiGfHK5.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Barlow Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpigxjLBV1hqnzfr-F8sEYMB0Yybp0mudRf36yPAGEki52WfA.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Barlow Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpkgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfbIPBmsgqZiGfHK5.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Barlow Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpigxjLBV1hqnzfr-F8sEYMB0Yybp0mudRf-62PAGEki52WfA.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Barlow Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpkgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfbIrB2sgqZiGfHK5.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Barlow Semi Condensed" - } - ] - }, - { - "name": "Barriecito", - "fontFamily": "Barriecito, system-ui", - "slug": "barriecito", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/barriecito/v17/WWXXlj-CbBOSLY2QTuY_KdUiYwTO0MU.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Barriecito" - } - ] - }, - { - "name": "Barrio", - "fontFamily": "Barrio, system-ui", - "slug": "barrio", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/barrio/v19/wEO8EBXBk8hBIDiEdQYhWdsX1Q.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Barrio" - } - ] - }, - { - "name": "Basic", - "fontFamily": "Basic, sans-serif", - "slug": "basic", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/basic/v17/xfu_0WLxV2_XKQN34lDVyR7D.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Basic" - } - ] - }, - { - "name": "Baskervville", - "fontFamily": "Baskervville, serif", - "slug": "baskervville", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/baskervville/v14/YA9Ur0yU4l_XOrogbkun3kQgt5OohvbJ9A.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Baskervville" - }, - { - "src": "http://fonts.gstatic.com/s/baskervville/v14/YA9Kr0yU4l_XOrogbkun3kQQtZmspPPZ9Mlt.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Baskervville" - } - ] - }, - { - "name": "Battambang", - "fontFamily": "Battambang, system-ui", - "slug": "battambang", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/battambang/v24/uk-kEGe7raEw-HjkzZabNhGp5w50_o9T7Q.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Battambang" - }, - { - "src": "http://fonts.gstatic.com/s/battambang/v24/uk-lEGe7raEw-HjkzZabNtmLxyRa8oZK9I0.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Battambang" - }, - { - "src": "http://fonts.gstatic.com/s/battambang/v24/uk-mEGe7raEw-HjkzZabDnWj4yxx7o8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Battambang" - }, - { - "src": "http://fonts.gstatic.com/s/battambang/v24/uk-lEGe7raEw-HjkzZabNsmMxyRa8oZK9I0.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Battambang" - }, - { - "src": "http://fonts.gstatic.com/s/battambang/v24/uk-lEGe7raEw-HjkzZabNvGOxyRa8oZK9I0.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Battambang" - } - ] - }, - { - "name": "Baumans", - "fontFamily": "Baumans, system-ui", - "slug": "baumans", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/baumans/v17/-W_-XJj9QyTd3QfpR_oyaksqY5Q.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Baumans" - } - ] - }, - { - "name": "Bayon", - "fontFamily": "Bayon, sans-serif", - "slug": "bayon", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bayon/v29/9XUrlJNmn0LPFl-pOhYEd2NJ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bayon" - } - ] - }, - { - "name": "Be Vietnam Pro", - "fontFamily": "Be Vietnam Pro, sans-serif", - "slug": "be-vietnam-pro", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVNSTAyLFyeg_IDWvOJmVES_HRUBX8YYbAiah8.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Be Vietnam Pro" - }, - { - "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVLSTAyLFyeg_IDWvOJmVES_HwyPRsSZZIneh-waA.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Be Vietnam Pro" - }, - { - "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVMSTAyLFyeg_IDWvOJmVES_HT4JF8yT7wrcwap.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Be Vietnam Pro" - }, - { - "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVKSTAyLFyeg_IDWvOJmVES_HwyPbczRbgJdhapcUU.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Be Vietnam Pro" - }, - { - "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVMSTAyLFyeg_IDWvOJmVES_HScJ18yT7wrcwap.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Be Vietnam Pro" - }, - { - "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVKSTAyLFyeg_IDWvOJmVES_HwyPdMwRbgJdhapcUU.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Be Vietnam Pro" - }, - { - "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVPSTAyLFyeg_IDWvOJmVES_EwwD3s6ZKAi.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Be Vietnam Pro" - }, - { - "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVNSTAyLFyeg_IDWvOJmVES_HwyBX8YYbAiah8.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Be Vietnam Pro" - }, - { - "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVMSTAyLFyeg_IDWvOJmVES_HTEJl8yT7wrcwap.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Be Vietnam Pro" - }, - { - "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVKSTAyLFyeg_IDWvOJmVES_HwyPYsxRbgJdhapcUU.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Be Vietnam Pro" - }, - { - "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVMSTAyLFyeg_IDWvOJmVES_HToIV8yT7wrcwap.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Be Vietnam Pro" - }, - { - "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVKSTAyLFyeg_IDWvOJmVES_HwyPac2RbgJdhapcUU.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Be Vietnam Pro" - }, - { - "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVMSTAyLFyeg_IDWvOJmVES_HSMIF8yT7wrcwap.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Be Vietnam Pro" - }, - { - "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVKSTAyLFyeg_IDWvOJmVES_HwyPcM3RbgJdhapcUU.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Be Vietnam Pro" - }, - { - "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVMSTAyLFyeg_IDWvOJmVES_HSQI18yT7wrcwap.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Be Vietnam Pro" - }, - { - "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVKSTAyLFyeg_IDWvOJmVES_HwyPd80RbgJdhapcUU.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Be Vietnam Pro" - }, - { - "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVMSTAyLFyeg_IDWvOJmVES_HS0Il8yT7wrcwap.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Be Vietnam Pro" - }, - { - "src": "http://fonts.gstatic.com/s/bevietnampro/v10/QdVKSTAyLFyeg_IDWvOJmVES_HwyPfs1RbgJdhapcUU.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Be Vietnam Pro" - } - ] - }, - { - "name": "Beau Rivage", - "fontFamily": "Beau Rivage, cursive", - "slug": "beau-rivage", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/beaurivage/v2/UcCi3FIgIG2bH4mMNWJUlmg3NZp8K2sL.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Beau Rivage" - } - ] - }, - { - "name": "Bebas Neue", - "fontFamily": "Bebas Neue, sans-serif", - "slug": "bebas-neue", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bebasneue/v10/JTUSjIg69CK48gW7PXooxW5rygbi49c.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bebas Neue" - } - ] - }, - { - "name": "Belgrano", - "fontFamily": "Belgrano, serif", - "slug": "belgrano", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/belgrano/v18/55xvey5tM9rwKWrJZcMFirl08KDJ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Belgrano" - } - ] - }, - { - "name": "Bellefair", - "fontFamily": "Bellefair, serif", - "slug": "bellefair", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bellefair/v14/kJExBuYY6AAuhiXUxG19__A2pOdvDA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bellefair" - } - ] - }, - { - "name": "Belleza", - "fontFamily": "Belleza, sans-serif", - "slug": "belleza", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/belleza/v17/0nkoC9_pNeMfhX4BtcbyawzruP8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Belleza" - } - ] - }, - { - "name": "Bellota", - "fontFamily": "Bellota, system-ui", - "slug": "bellota", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bellota/v16/MwQzbhXl3_qEpiwAID55kGMViblPtXs.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Bellota" - }, - { - "src": "http://fonts.gstatic.com/s/bellota/v16/MwQxbhXl3_qEpiwAKJBjHGEfjZtKpXulTQ.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Bellota" - }, - { - "src": "http://fonts.gstatic.com/s/bellota/v16/MwQ2bhXl3_qEpiwAGJJRtGs-lbA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bellota" - }, - { - "src": "http://fonts.gstatic.com/s/bellota/v16/MwQ0bhXl3_qEpiwAKJBbsEk7hbBWrA.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Bellota" - }, - { - "src": "http://fonts.gstatic.com/s/bellota/v16/MwQzbhXl3_qEpiwAIC5-kGMViblPtXs.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Bellota" - }, - { - "src": "http://fonts.gstatic.com/s/bellota/v16/MwQxbhXl3_qEpiwAKJBjDGYfjZtKpXulTQ.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Bellota" - } - ] - }, - { - "name": "Bellota Text", - "fontFamily": "Bellota Text, system-ui", - "slug": "bellota-text", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bellotatext/v16/0FlMVP2VnlWS4f3-UE9hHXM5VfsqfQXwQy6yxg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Bellota Text" - }, - { - "src": "http://fonts.gstatic.com/s/bellotatext/v16/0FlOVP2VnlWS4f3-UE9hHXMx--Gmfw_0YSuixmYK.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Bellota Text" - }, - { - "src": "http://fonts.gstatic.com/s/bellotatext/v16/0FlTVP2VnlWS4f3-UE9hHXMB-dMOdS7sSg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bellota Text" - }, - { - "src": "http://fonts.gstatic.com/s/bellotatext/v16/0FlNVP2VnlWS4f3-UE9hHXMx-9kKVyv8Sjer.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Bellota Text" - }, - { - "src": "http://fonts.gstatic.com/s/bellotatext/v16/0FlMVP2VnlWS4f3-UE9hHXM5RfwqfQXwQy6yxg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Bellota Text" - }, - { - "src": "http://fonts.gstatic.com/s/bellotatext/v16/0FlOVP2VnlWS4f3-UE9hHXMx--G2eA_0YSuixmYK.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Bellota Text" - } - ] - }, - { - "name": "BenchNine", - "fontFamily": "BenchNine, sans-serif", - "slug": "benchnine", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/benchnine/v16/ahcev8612zF4jxrwMosT--tRhWa8q0v8ag.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "BenchNine" - }, - { - "src": "http://fonts.gstatic.com/s/benchnine/v16/ahcbv8612zF4jxrwMosrV8N1jU2gog.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "BenchNine" - }, - { - "src": "http://fonts.gstatic.com/s/benchnine/v16/ahcev8612zF4jxrwMosT6-xRhWa8q0v8ag.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "BenchNine" - } - ] - }, - { - "name": "Benne", - "fontFamily": "Benne, serif", - "slug": "benne", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/benne/v22/L0xzDFAhn18E6Vjxlt6qTDBN.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Benne" - } - ] - }, - { - "name": "Bentham", - "fontFamily": "Bentham, serif", - "slug": "bentham", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bentham/v18/VdGeAZQPEpYfmHglKWw7CJaK_y4.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bentham" - } - ] - }, - { - "name": "Berkshire Swash", - "fontFamily": "Berkshire Swash, cursive", - "slug": "berkshire-swash", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/berkshireswash/v16/ptRRTi-cavZOGqCvnNJDl5m5XmNPrcQybX4pQA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Berkshire Swash" - } - ] - }, - { - "name": "Besley", - "fontFamily": "Besley, serif", - "slug": "besley", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/besley/v17/PlIhFlO1MaNwaNGWUC92IOH_mtG4fbbBSdRoFPOl8-E.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Besley" - }, - { - "src": "http://fonts.gstatic.com/s/besley/v17/PlIhFlO1MaNwaNGWUC92IOH_mtG4fYTBSdRoFPOl8-E.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Besley" - }, - { - "src": "http://fonts.gstatic.com/s/besley/v17/PlIhFlO1MaNwaNGWUC92IOH_mtG4fWjGSdRoFPOl8-E.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Besley" - }, - { - "src": "http://fonts.gstatic.com/s/besley/v17/PlIhFlO1MaNwaNGWUC92IOH_mtG4fVHGSdRoFPOl8-E.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Besley" - }, - { - "src": "http://fonts.gstatic.com/s/besley/v17/PlIhFlO1MaNwaNGWUC92IOH_mtG4fTbGSdRoFPOl8-E.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Besley" - }, - { - "src": "http://fonts.gstatic.com/s/besley/v17/PlIhFlO1MaNwaNGWUC92IOH_mtG4fR_GSdRoFPOl8-E.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Besley" - }, - { - "src": "http://fonts.gstatic.com/s/besley/v17/PlIjFlO1MaNwaNG8WR2J-IiUAH-_aH6CoZdiENGg4-E04A.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Besley" - }, - { - "src": "http://fonts.gstatic.com/s/besley/v17/PlIjFlO1MaNwaNG8WR2J-IiUAH-_aH6Ck5diENGg4-E04A.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Besley" - }, - { - "src": "http://fonts.gstatic.com/s/besley/v17/PlIjFlO1MaNwaNG8WR2J-IiUAH-_aH6Cf5BiENGg4-E04A.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Besley" - }, - { - "src": "http://fonts.gstatic.com/s/besley/v17/PlIjFlO1MaNwaNG8WR2J-IiUAH-_aH6CRpBiENGg4-E04A.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Besley" - }, - { - "src": "http://fonts.gstatic.com/s/besley/v17/PlIjFlO1MaNwaNG8WR2J-IiUAH-_aH6CIZBiENGg4-E04A.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Besley" - }, - { - "src": "http://fonts.gstatic.com/s/besley/v17/PlIjFlO1MaNwaNG8WR2J-IiUAH-_aH6CCJBiENGg4-E04A.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Besley" - } - ] - }, - { - "name": "Beth Ellen", - "fontFamily": "Beth Ellen, cursive", - "slug": "beth-ellen", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bethellen/v17/WwkbxPW2BE-3rb_JNT-qEIAiVNo5xNY.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Beth Ellen" - } - ] - }, - { - "name": "Bevan", - "fontFamily": "Bevan, system-ui", - "slug": "bevan", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bevan/v21/4iCj6KZ0a9NXjF8aUir7tlSJ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bevan" - }, - { - "src": "http://fonts.gstatic.com/s/bevan/v21/4iCt6KZ0a9NXjG8YWC7Zs0SJD4U.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Bevan" - } - ] - }, - { - "name": "BhuTuka Expanded One", - "fontFamily": "BhuTuka Expanded One, system-ui", - "slug": "bhutuka-expanded-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bhutukaexpandedone/v3/SLXXc0jZ4WUJcClHTtv0t7IaDRsBsWRiJCyX8pg_RVH1.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "BhuTuka Expanded One" - } - ] - }, - { - "name": "Big Shoulders Display", - "fontFamily": "Big Shoulders Display, system-ui", - "slug": "big-shoulders-display", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bigshouldersdisplay/v19/fC1MPZJEZG-e9gHhdI4-NBbfd2ys3SjJCx12wPgf9g-_3F0YdY86JF46SRP4yZQ.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Display" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersdisplay/v19/fC1MPZJEZG-e9gHhdI4-NBbfd2ys3SjJCx12wPgf9g-_3F0YdQ87JF46SRP4yZQ.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Display" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersdisplay/v19/fC1MPZJEZG-e9gHhdI4-NBbfd2ys3SjJCx12wPgf9g-_3F0YddE7JF46SRP4yZQ.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Display" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersdisplay/v19/fC1MPZJEZG-e9gHhdI4-NBbfd2ys3SjJCx12wPgf9g-_3F0YdY87JF46SRP4yZQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Display" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersdisplay/v19/fC1MPZJEZG-e9gHhdI4-NBbfd2ys3SjJCx12wPgf9g-_3F0Ydb07JF46SRP4yZQ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Display" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersdisplay/v19/fC1MPZJEZG-e9gHhdI4-NBbfd2ys3SjJCx12wPgf9g-_3F0YdVE8JF46SRP4yZQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Display" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersdisplay/v19/fC1MPZJEZG-e9gHhdI4-NBbfd2ys3SjJCx12wPgf9g-_3F0YdWg8JF46SRP4yZQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Display" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersdisplay/v19/fC1MPZJEZG-e9gHhdI4-NBbfd2ys3SjJCx12wPgf9g-_3F0YdQ88JF46SRP4yZQ.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Display" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersdisplay/v19/fC1MPZJEZG-e9gHhdI4-NBbfd2ys3SjJCx12wPgf9g-_3F0YdSY8JF46SRP4yZQ.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Display" - } - ] - }, - { - "name": "Big Shoulders Inline Display", - "fontFamily": "Big Shoulders Inline Display, system-ui", - "slug": "big-shoulders-inline-display", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bigshouldersinlinedisplay/v25/_LOumyfF4eSU_SCrJc9OI24U7siGvBGcZqmqV9-ZZ85CGNOFeNLxoYMPJ0nBEnR5yPc2Huux.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Inline Display" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersinlinedisplay/v25/_LOumyfF4eSU_SCrJc9OI24U7siGvBGcZqmqV9-ZZ85CGNOFeNLxoYMPJ0lBE3R5yPc2Huux.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Inline Display" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersinlinedisplay/v25/_LOumyfF4eSU_SCrJc9OI24U7siGvBGcZqmqV9-ZZ85CGNOFeNLxoYMPJ0mfE3R5yPc2Huux.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Inline Display" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersinlinedisplay/v25/_LOumyfF4eSU_SCrJc9OI24U7siGvBGcZqmqV9-ZZ85CGNOFeNLxoYMPJ0nBE3R5yPc2Huux.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Inline Display" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersinlinedisplay/v25/_LOumyfF4eSU_SCrJc9OI24U7siGvBGcZqmqV9-ZZ85CGNOFeNLxoYMPJ0nzE3R5yPc2Huux.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Inline Display" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersinlinedisplay/v25/_LOumyfF4eSU_SCrJc9OI24U7siGvBGcZqmqV9-ZZ85CGNOFeNLxoYMPJ0kfFHR5yPc2Huux.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Inline Display" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersinlinedisplay/v25/_LOumyfF4eSU_SCrJc9OI24U7siGvBGcZqmqV9-ZZ85CGNOFeNLxoYMPJ0kmFHR5yPc2Huux.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Inline Display" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersinlinedisplay/v25/_LOumyfF4eSU_SCrJc9OI24U7siGvBGcZqmqV9-ZZ85CGNOFeNLxoYMPJ0lBFHR5yPc2Huux.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Inline Display" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersinlinedisplay/v25/_LOumyfF4eSU_SCrJc9OI24U7siGvBGcZqmqV9-ZZ85CGNOFeNLxoYMPJ0loFHR5yPc2Huux.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Inline Display" - } - ] - }, - { - "name": "Big Shoulders Inline Text", - "fontFamily": "Big Shoulders Inline Text, system-ui", - "slug": "big-shoulders-inline-text", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bigshouldersinlinetext/v24/vm8XdQDmVECV5-vm5dJ-Tp-6WDeRjL4RV7dP8u-NMyHY74qpoNNcwga0yqGN7Y6Jsc8c.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Inline Text" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersinlinetext/v24/vm8XdQDmVECV5-vm5dJ-Tp-6WDeRjL4RV7dP8u-NMyHY74qpoNNcwgY0y6GN7Y6Jsc8c.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Inline Text" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersinlinetext/v24/vm8XdQDmVECV5-vm5dJ-Tp-6WDeRjL4RV7dP8u-NMyHY74qpoNNcwgbqy6GN7Y6Jsc8c.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Inline Text" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersinlinetext/v24/vm8XdQDmVECV5-vm5dJ-Tp-6WDeRjL4RV7dP8u-NMyHY74qpoNNcwga0y6GN7Y6Jsc8c.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Inline Text" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersinlinetext/v24/vm8XdQDmVECV5-vm5dJ-Tp-6WDeRjL4RV7dP8u-NMyHY74qpoNNcwgaGy6GN7Y6Jsc8c.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Inline Text" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersinlinetext/v24/vm8XdQDmVECV5-vm5dJ-Tp-6WDeRjL4RV7dP8u-NMyHY74qpoNNcwgZqzKGN7Y6Jsc8c.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Inline Text" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersinlinetext/v24/vm8XdQDmVECV5-vm5dJ-Tp-6WDeRjL4RV7dP8u-NMyHY74qpoNNcwgZTzKGN7Y6Jsc8c.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Inline Text" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersinlinetext/v24/vm8XdQDmVECV5-vm5dJ-Tp-6WDeRjL4RV7dP8u-NMyHY74qpoNNcwgY0zKGN7Y6Jsc8c.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Inline Text" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersinlinetext/v24/vm8XdQDmVECV5-vm5dJ-Tp-6WDeRjL4RV7dP8u-NMyHY74qpoNNcwgYdzKGN7Y6Jsc8c.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Inline Text" - } - ] - }, - { - "name": "Big Shoulders Stencil Display", - "fontFamily": "Big Shoulders Stencil Display, system-ui", - "slug": "big-shoulders-stencil-display", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bigshouldersstencildisplay/v22/6aeZ4LS6U6pR_bp5b_t2ugOhHWFcxSGP9ttD96KCb8xPytKb-oPRU-vkuLm_O0nPKHznJucP9w.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Stencil Display" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersstencildisplay/v22/6aeZ4LS6U6pR_bp5b_t2ugOhHWFcxSGP9ttD96KCb8xPytKb-oPRU-vkuLm_u0jPKHznJucP9w.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Stencil Display" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersstencildisplay/v22/6aeZ4LS6U6pR_bp5b_t2ugOhHWFcxSGP9ttD96KCb8xPytKb-oPRU-vkuLm_ZUjPKHznJucP9w.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Stencil Display" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersstencildisplay/v22/6aeZ4LS6U6pR_bp5b_t2ugOhHWFcxSGP9ttD96KCb8xPytKb-oPRU-vkuLm_O0jPKHznJucP9w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Stencil Display" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersstencildisplay/v22/6aeZ4LS6U6pR_bp5b_t2ugOhHWFcxSGP9ttD96KCb8xPytKb-oPRU-vkuLm_CUjPKHznJucP9w.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Stencil Display" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersstencildisplay/v22/6aeZ4LS6U6pR_bp5b_t2ugOhHWFcxSGP9ttD96KCb8xPytKb-oPRU-vkuLm_5U_PKHznJucP9w.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Stencil Display" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersstencildisplay/v22/6aeZ4LS6U6pR_bp5b_t2ugOhHWFcxSGP9ttD96KCb8xPytKb-oPRU-vkuLm_3E_PKHznJucP9w.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Stencil Display" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersstencildisplay/v22/6aeZ4LS6U6pR_bp5b_t2ugOhHWFcxSGP9ttD96KCb8xPytKb-oPRU-vkuLm_u0_PKHznJucP9w.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Stencil Display" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersstencildisplay/v22/6aeZ4LS6U6pR_bp5b_t2ugOhHWFcxSGP9ttD96KCb8xPytKb-oPRU-vkuLm_kk_PKHznJucP9w.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Stencil Display" - } - ] - }, - { - "name": "Big Shoulders Stencil Text", - "fontFamily": "Big Shoulders Stencil Text, system-ui", - "slug": "big-shoulders-stencil-text", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bigshouldersstenciltext/v21/5aUV9-i2oxDMNwY3dHfW7UAt3Q453SM15wNj53bCcab2SJYLLUtk1OGR04XIGS_Py_AWbQ.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Stencil Text" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersstenciltext/v21/5aUV9-i2oxDMNwY3dHfW7UAt3Q453SM15wNj53bCcab2SJYLLUtk1OGRU4TIGS_Py_AWbQ.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Stencil Text" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersstenciltext/v21/5aUV9-i2oxDMNwY3dHfW7UAt3Q453SM15wNj53bCcab2SJYLLUtk1OGRjYTIGS_Py_AWbQ.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Stencil Text" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersstenciltext/v21/5aUV9-i2oxDMNwY3dHfW7UAt3Q453SM15wNj53bCcab2SJYLLUtk1OGR04TIGS_Py_AWbQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Stencil Text" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersstenciltext/v21/5aUV9-i2oxDMNwY3dHfW7UAt3Q453SM15wNj53bCcab2SJYLLUtk1OGR4YTIGS_Py_AWbQ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Stencil Text" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersstenciltext/v21/5aUV9-i2oxDMNwY3dHfW7UAt3Q453SM15wNj53bCcab2SJYLLUtk1OGRDYPIGS_Py_AWbQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Stencil Text" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersstenciltext/v21/5aUV9-i2oxDMNwY3dHfW7UAt3Q453SM15wNj53bCcab2SJYLLUtk1OGRNIPIGS_Py_AWbQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Stencil Text" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersstenciltext/v21/5aUV9-i2oxDMNwY3dHfW7UAt3Q453SM15wNj53bCcab2SJYLLUtk1OGRU4PIGS_Py_AWbQ.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Stencil Text" - }, - { - "src": "http://fonts.gstatic.com/s/bigshouldersstenciltext/v21/5aUV9-i2oxDMNwY3dHfW7UAt3Q453SM15wNj53bCcab2SJYLLUtk1OGReoPIGS_Py_AWbQ.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Stencil Text" - } - ] - }, - { - "name": "Big Shoulders Text", - "fontFamily": "Big Shoulders Text, system-ui", - "slug": "big-shoulders-text", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bigshoulderstext/v22/55xEezRtP9G3CGPIf49hxc8P0eytUxB2l66LmF6xc3kA3Y-r3TIPNl6P2pc.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Text" - }, - { - "src": "http://fonts.gstatic.com/s/bigshoulderstext/v22/55xEezRtP9G3CGPIf49hxc8P0eytUxB2l66LmF6xc3kA3Q-q3TIPNl6P2pc.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Text" - }, - { - "src": "http://fonts.gstatic.com/s/bigshoulderstext/v22/55xEezRtP9G3CGPIf49hxc8P0eytUxB2l66LmF6xc3kA3dGq3TIPNl6P2pc.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Text" - }, - { - "src": "http://fonts.gstatic.com/s/bigshoulderstext/v22/55xEezRtP9G3CGPIf49hxc8P0eytUxB2l66LmF6xc3kA3Y-q3TIPNl6P2pc.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Text" - }, - { - "src": "http://fonts.gstatic.com/s/bigshoulderstext/v22/55xEezRtP9G3CGPIf49hxc8P0eytUxB2l66LmF6xc3kA3b2q3TIPNl6P2pc.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Text" - }, - { - "src": "http://fonts.gstatic.com/s/bigshoulderstext/v22/55xEezRtP9G3CGPIf49hxc8P0eytUxB2l66LmF6xc3kA3VGt3TIPNl6P2pc.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Text" - }, - { - "src": "http://fonts.gstatic.com/s/bigshoulderstext/v22/55xEezRtP9G3CGPIf49hxc8P0eytUxB2l66LmF6xc3kA3Wit3TIPNl6P2pc.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Text" - }, - { - "src": "http://fonts.gstatic.com/s/bigshoulderstext/v22/55xEezRtP9G3CGPIf49hxc8P0eytUxB2l66LmF6xc3kA3Q-t3TIPNl6P2pc.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Text" - }, - { - "src": "http://fonts.gstatic.com/s/bigshoulderstext/v22/55xEezRtP9G3CGPIf49hxc8P0eytUxB2l66LmF6xc3kA3Sat3TIPNl6P2pc.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Big Shoulders Text" - } - ] - }, - { - "name": "Bigelow Rules", - "fontFamily": "Bigelow Rules, system-ui", - "slug": "bigelow-rules", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bigelowrules/v24/RrQWboly8iR_I3KWSzeRuN0zT4cCH8WAJVk.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bigelow Rules" - } - ] - }, - { - "name": "Bigshot One", - "fontFamily": "Bigshot One, system-ui", - "slug": "bigshot-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bigshotone/v25/u-470qukhRkkO6BD_7cM_gxuUQJBXv_-.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bigshot One" - } - ] - }, - { - "name": "Bilbo", - "fontFamily": "Bilbo, cursive", - "slug": "bilbo", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bilbo/v20/o-0EIpgpwWwZ210hpIRz4wxE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bilbo" - } - ] - }, - { - "name": "Bilbo Swash Caps", - "fontFamily": "Bilbo Swash Caps, cursive", - "slug": "bilbo-swash-caps", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bilboswashcaps/v22/zrf-0GXbz-H3Wb4XBsGrTgq2PVmdqAPopiRfKp8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bilbo Swash Caps" - } - ] - }, - { - "name": "BioRhyme", - "fontFamily": "BioRhyme, serif", - "slug": "biorhyme", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/biorhyme/v13/1cX3aULHBpDMsHYW_ESOjnGAq8Sk1PoH.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "BioRhyme" - }, - { - "src": "http://fonts.gstatic.com/s/biorhyme/v13/1cX3aULHBpDMsHYW_ETqjXGAq8Sk1PoH.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "BioRhyme" - }, - { - "src": "http://fonts.gstatic.com/s/biorhyme/v13/1cXwaULHBpDMsHYW_HxGpVWIgNit.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "BioRhyme" - }, - { - "src": "http://fonts.gstatic.com/s/biorhyme/v13/1cX3aULHBpDMsHYW_ET6inGAq8Sk1PoH.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "BioRhyme" - }, - { - "src": "http://fonts.gstatic.com/s/biorhyme/v13/1cX3aULHBpDMsHYW_ETmiXGAq8Sk1PoH.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "BioRhyme" - } - ] - }, - { - "name": "BioRhyme Expanded", - "fontFamily": "BioRhyme Expanded, serif", - "slug": "biorhyme-expanded", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/biorhymeexpanded/v19/i7dVIE1zZzytGswgU577CDY9LjbffxxcblSHSdTXrb_z.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "BioRhyme Expanded" - }, - { - "src": "http://fonts.gstatic.com/s/biorhymeexpanded/v19/i7dVIE1zZzytGswgU577CDY9Ljbffxw4bVSHSdTXrb_z.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "BioRhyme Expanded" - }, - { - "src": "http://fonts.gstatic.com/s/biorhymeexpanded/v19/i7dQIE1zZzytGswgU577CDY9LjbffySURXCPYsje.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "BioRhyme Expanded" - }, - { - "src": "http://fonts.gstatic.com/s/biorhymeexpanded/v19/i7dVIE1zZzytGswgU577CDY9LjbffxwoalSHSdTXrb_z.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "BioRhyme Expanded" - }, - { - "src": "http://fonts.gstatic.com/s/biorhymeexpanded/v19/i7dVIE1zZzytGswgU577CDY9Ljbffxw0aVSHSdTXrb_z.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "BioRhyme Expanded" - } - ] - }, - { - "name": "Birthstone", - "fontFamily": "Birthstone, cursive", - "slug": "birthstone", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/birthstone/v11/8AtsGs2xO4yLRhy87sv_HLn5jRfZHzM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Birthstone" - } - ] - }, - { - "name": "Birthstone Bounce", - "fontFamily": "Birthstone Bounce, cursive", - "slug": "birthstone-bounce", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/birthstonebounce/v9/ga6XaxZF43lIvTWrktHOTBJZGH7dEeVJGIMYDo_8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Birthstone Bounce" - }, - { - "src": "http://fonts.gstatic.com/s/birthstonebounce/v9/ga6SaxZF43lIvTWrktHOTBJZGH7dEd29MacQJZP1LmD9.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Birthstone Bounce" - } - ] - }, - { - "name": "Biryani", - "fontFamily": "Biryani, sans-serif", - "slug": "biryani", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/biryani/v13/hv-TlzNxIFoO84YddYQyGTBSU-J-RxQ.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Biryani" - }, - { - "src": "http://fonts.gstatic.com/s/biryani/v13/hv-TlzNxIFoO84YddeAxGTBSU-J-RxQ.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Biryani" - }, - { - "src": "http://fonts.gstatic.com/s/biryani/v13/hv-WlzNxIFoO84YdTUwZPTh5T-s.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Biryani" - }, - { - "src": "http://fonts.gstatic.com/s/biryani/v13/hv-TlzNxIFoO84YddZQ3GTBSU-J-RxQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Biryani" - }, - { - "src": "http://fonts.gstatic.com/s/biryani/v13/hv-TlzNxIFoO84YddfA2GTBSU-J-RxQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Biryani" - }, - { - "src": "http://fonts.gstatic.com/s/biryani/v13/hv-TlzNxIFoO84Yddew1GTBSU-J-RxQ.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Biryani" - }, - { - "src": "http://fonts.gstatic.com/s/biryani/v13/hv-TlzNxIFoO84Yddcg0GTBSU-J-RxQ.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Biryani" - } - ] - }, - { - "name": "Bitter", - "fontFamily": "Bitter, serif", - "slug": "bitter", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bitter/v32/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8fbeCL_EXFh2reU.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Bitter" - }, - { - "src": "http://fonts.gstatic.com/s/bitter/v32/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8XbfCL_EXFh2reU.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Bitter" - }, - { - "src": "http://fonts.gstatic.com/s/bitter/v32/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8ajfCL_EXFh2reU.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Bitter" - }, - { - "src": "http://fonts.gstatic.com/s/bitter/v32/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8fbfCL_EXFh2reU.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bitter" - }, - { - "src": "http://fonts.gstatic.com/s/bitter/v32/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8cTfCL_EXFh2reU.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Bitter" - }, - { - "src": "http://fonts.gstatic.com/s/bitter/v32/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8SjYCL_EXFh2reU.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Bitter" - }, - { - "src": "http://fonts.gstatic.com/s/bitter/v32/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8RHYCL_EXFh2reU.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Bitter" - }, - { - "src": "http://fonts.gstatic.com/s/bitter/v32/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8XbYCL_EXFh2reU.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Bitter" - }, - { - "src": "http://fonts.gstatic.com/s/bitter/v32/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8V_YCL_EXFh2reU.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Bitter" - }, - { - "src": "http://fonts.gstatic.com/s/bitter/v32/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6c4P3OWHpzveWxBw.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Bitter" - }, - { - "src": "http://fonts.gstatic.com/s/bitter/v32/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6cYPzOWHpzveWxBw.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Bitter" - }, - { - "src": "http://fonts.gstatic.com/s/bitter/v32/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6cvvzOWHpzveWxBw.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Bitter" - }, - { - "src": "http://fonts.gstatic.com/s/bitter/v32/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6c4PzOWHpzveWxBw.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Bitter" - }, - { - "src": "http://fonts.gstatic.com/s/bitter/v32/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6c0vzOWHpzveWxBw.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Bitter" - }, - { - "src": "http://fonts.gstatic.com/s/bitter/v32/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6cPvvOWHpzveWxBw.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Bitter" - }, - { - "src": "http://fonts.gstatic.com/s/bitter/v32/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6cB_vOWHpzveWxBw.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Bitter" - }, - { - "src": "http://fonts.gstatic.com/s/bitter/v32/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6cYPvOWHpzveWxBw.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Bitter" - }, - { - "src": "http://fonts.gstatic.com/s/bitter/v32/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6cSfvOWHpzveWxBw.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Bitter" - } - ] - }, - { - "name": "Black And White Picture", - "fontFamily": "Black And White Picture, sans-serif", - "slug": "black-and-white-picture", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/blackandwhitepicture/v22/TwMe-JAERlQd3ooUHBUXGmrmioKjjnRSFO-NqI5HbcMi-yWY.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Black And White Picture" - } - ] - }, - { - "name": "Black Han Sans", - "fontFamily": "Black Han Sans, sans-serif", - "slug": "black-han-sans", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/blackhansans/v15/ea8Aad44WunzF9a-dL6toA8r8nqVIXSkH-Hc.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Black Han Sans" - } - ] - }, - { - "name": "Black Ops One", - "fontFamily": "Black Ops One, system-ui", - "slug": "black-ops-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/blackopsone/v20/qWcsB6-ypo7xBdr6Xshe96H3WDzRtjkho4M.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Black Ops One" - } - ] - }, - { - "name": "Blaka", - "fontFamily": "Blaka, system-ui", - "slug": "blaka", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/blaka/v5/8vIG7w8722p_6kdr20D2FV5e.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Blaka" - } - ] - }, - { - "name": "Blaka Hollow", - "fontFamily": "Blaka Hollow, system-ui", - "slug": "blaka-hollow", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/blakahollow/v5/MCoUzAL91sjRE2FsKsxUtezYB9oFyW_-oA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Blaka Hollow" - } - ] - }, - { - "name": "Blaka Ink", - "fontFamily": "Blaka Ink, system-ui", - "slug": "blaka-ink", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/blakaink/v7/AlZy_zVVtpj22Znag2chdXf4XB0Tow.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Blaka Ink" - } - ] - }, - { - "name": "Blinker", - "fontFamily": "Blinker, sans-serif", - "slug": "blinker", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/blinker/v13/cIf_MaFatEE-VTaP_E2hZEsCkIt9QQ.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Blinker" - }, - { - "src": "http://fonts.gstatic.com/s/blinker/v13/cIf4MaFatEE-VTaP_OGARGEsnIJkWL4.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Blinker" - }, - { - "src": "http://fonts.gstatic.com/s/blinker/v13/cIf4MaFatEE-VTaP_IWDRGEsnIJkWL4.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Blinker" - }, - { - "src": "http://fonts.gstatic.com/s/blinker/v13/cIf9MaFatEE-VTaPxCmrYGkHgIs.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Blinker" - }, - { - "src": "http://fonts.gstatic.com/s/blinker/v13/cIf4MaFatEE-VTaP_PGFRGEsnIJkWL4.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Blinker" - }, - { - "src": "http://fonts.gstatic.com/s/blinker/v13/cIf4MaFatEE-VTaP_JWERGEsnIJkWL4.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Blinker" - }, - { - "src": "http://fonts.gstatic.com/s/blinker/v13/cIf4MaFatEE-VTaP_ImHRGEsnIJkWL4.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Blinker" - }, - { - "src": "http://fonts.gstatic.com/s/blinker/v13/cIf4MaFatEE-VTaP_K2GRGEsnIJkWL4.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Blinker" - } - ] - }, - { - "name": "Bodoni Moda", - "fontFamily": "Bodoni Moda, serif", - "slug": "bodoni-moda", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bodonimoda/v23/aFT67PxzY382XsXX63LUYL6GYFcan6NJrKp-VPjfJMShrpsGFUt8oU7awIBytVjMYwE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bodoni Moda" - }, - { - "src": "http://fonts.gstatic.com/s/bodonimoda/v23/aFT67PxzY382XsXX63LUYL6GYFcan6NJrKp-VPjfJMShrpsGFUt8oXzawIBytVjMYwE.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Bodoni Moda" - }, - { - "src": "http://fonts.gstatic.com/s/bodonimoda/v23/aFT67PxzY382XsXX63LUYL6GYFcan6NJrKp-VPjfJMShrpsGFUt8oZDdwIBytVjMYwE.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Bodoni Moda" - }, - { - "src": "http://fonts.gstatic.com/s/bodonimoda/v23/aFT67PxzY382XsXX63LUYL6GYFcan6NJrKp-VPjfJMShrpsGFUt8oandwIBytVjMYwE.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Bodoni Moda" - }, - { - "src": "http://fonts.gstatic.com/s/bodonimoda/v23/aFT67PxzY382XsXX63LUYL6GYFcan6NJrKp-VPjfJMShrpsGFUt8oc7dwIBytVjMYwE.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Bodoni Moda" - }, - { - "src": "http://fonts.gstatic.com/s/bodonimoda/v23/aFT67PxzY382XsXX63LUYL6GYFcan6NJrKp-VPjfJMShrpsGFUt8oefdwIBytVjMYwE.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Bodoni Moda" - }, - { - "src": "http://fonts.gstatic.com/s/bodonimoda/v23/aFT07PxzY382XsXX63LUYJSPUqb0pL6OQqxrZLnVbvZedvJtj-V7tIaZKMN4sXrJcwHqoQ.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Bodoni Moda" - }, - { - "src": "http://fonts.gstatic.com/s/bodonimoda/v23/aFT07PxzY382XsXX63LUYJSPUqb0pL6OQqxrZLnVbvZedvJtj-V7tIaZGsN4sXrJcwHqoQ.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Bodoni Moda" - }, - { - "src": "http://fonts.gstatic.com/s/bodonimoda/v23/aFT07PxzY382XsXX63LUYJSPUqb0pL6OQqxrZLnVbvZedvJtj-V7tIaZ9sR4sXrJcwHqoQ.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Bodoni Moda" - }, - { - "src": "http://fonts.gstatic.com/s/bodonimoda/v23/aFT07PxzY382XsXX63LUYJSPUqb0pL6OQqxrZLnVbvZedvJtj-V7tIaZz8R4sXrJcwHqoQ.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Bodoni Moda" - }, - { - "src": "http://fonts.gstatic.com/s/bodonimoda/v23/aFT07PxzY382XsXX63LUYJSPUqb0pL6OQqxrZLnVbvZedvJtj-V7tIaZqMR4sXrJcwHqoQ.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Bodoni Moda" - }, - { - "src": "http://fonts.gstatic.com/s/bodonimoda/v23/aFT07PxzY382XsXX63LUYJSPUqb0pL6OQqxrZLnVbvZedvJtj-V7tIaZgcR4sXrJcwHqoQ.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Bodoni Moda" - } - ] - }, - { - "name": "Bokor", - "fontFamily": "Bokor, system-ui", - "slug": "bokor", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bokor/v30/m8JcjfpeeaqTiR2WdInbcaxE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bokor" - } - ] - }, - { - "name": "Bona Nova", - "fontFamily": "Bona Nova, serif", - "slug": "bona-nova", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bonanova/v10/B50NF7ZCpX7fcHfvIUBJi6hqHK-CLA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bona Nova" - }, - { - "src": "http://fonts.gstatic.com/s/bonanova/v10/B50LF7ZCpX7fcHfvIUB5iaJuPqqSLJYf.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Bona Nova" - }, - { - "src": "http://fonts.gstatic.com/s/bonanova/v10/B50IF7ZCpX7fcHfvIUBxN4dOFISeJY8GgQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Bona Nova" - } - ] - }, - { - "name": "Bonbon", - "fontFamily": "Bonbon, cursive", - "slug": "bonbon", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bonbon/v26/0FlVVPeVlFec4ee_cDEAbQY5-A.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bonbon" - } - ] - }, - { - "name": "Bonheur Royale", - "fontFamily": "Bonheur Royale, cursive", - "slug": "bonheur-royale", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bonheurroyale/v10/c4m51nt_GMTrtX-b9GcG4-YRmYK_c0f1N5Ij.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bonheur Royale" - } - ] - }, - { - "name": "Boogaloo", - "fontFamily": "Boogaloo, system-ui", - "slug": "boogaloo", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/boogaloo/v19/kmK-Zq45GAvOdnaW6x1F_SrQo_1K.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Boogaloo" - } - ] - }, - { - "name": "Bowlby One", - "fontFamily": "Bowlby One, system-ui", - "slug": "bowlby-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bowlbyone/v19/taiPGmVuC4y96PFeqp8smo6C_Z0wcK4.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bowlby One" - } - ] - }, - { - "name": "Bowlby One SC", - "fontFamily": "Bowlby One SC, system-ui", - "slug": "bowlby-one-sc", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bowlbyonesc/v20/DtVlJxerQqQm37tzN3wMug9Pzgj8owhNjuE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bowlby One SC" - } - ] - }, - { - "name": "Braah One", - "fontFamily": "Braah One, sans-serif", - "slug": "braah-one", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/braahone/v2/KFOlCnWUpt6LsxxxiylvAx05IsDqlA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Braah One" - } - ] - }, - { - "name": "Brawler", - "fontFamily": "Brawler, serif", - "slug": "brawler", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/brawler/v19/xn7gYHE3xXewAscGsgC7S9XdZN8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Brawler" - }, - { - "src": "http://fonts.gstatic.com/s/brawler/v19/xn7lYHE3xXewAscGiryUb932eNaPfk8.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Brawler" - } - ] - }, - { - "name": "Bree Serif", - "fontFamily": "Bree Serif, serif", - "slug": "bree-serif", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/breeserif/v17/4UaHrEJCrhhnVA3DgluAx63j5pN1MwI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bree Serif" - } - ] - }, - { - "name": "Bruno Ace", - "fontFamily": "Bruno Ace, system-ui", - "slug": "bruno-ace", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/brunoace/v1/WwkcxPa2E06x4trkOj_kMKoMWNMg3Q.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bruno Ace" - } - ] - }, - { - "name": "Bruno Ace SC", - "fontFamily": "Bruno Ace SC, system-ui", - "slug": "bruno-ace-sc", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/brunoacesc/v1/ptROTiycffFLBuiHjdJDl634LSFrpe8uZA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bruno Ace SC" - } - ] - }, - { - "name": "Brygada 1918", - "fontFamily": "Brygada 1918, serif", - "slug": "brygada-1918", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/brygada1918/v21/pe08MI6eKpdGqlF5LANrM--ACNaeo8mTUIR_y2-f-V8Wu5O3gbo.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Brygada 1918" - }, - { - "src": "http://fonts.gstatic.com/s/brygada1918/v21/pe08MI6eKpdGqlF5LANrM--ACNaeo8mTUIR_y12f-V8Wu5O3gbo.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Brygada 1918" - }, - { - "src": "http://fonts.gstatic.com/s/brygada1918/v21/pe08MI6eKpdGqlF5LANrM--ACNaeo8mTUIR_y7GY-V8Wu5O3gbo.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Brygada 1918" - }, - { - "src": "http://fonts.gstatic.com/s/brygada1918/v21/pe08MI6eKpdGqlF5LANrM--ACNaeo8mTUIR_y4iY-V8Wu5O3gbo.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Brygada 1918" - }, - { - "src": "http://fonts.gstatic.com/s/brygada1918/v21/pe06MI6eKpdGqlF5LANrM--qAeRhe6D4yip43qfcERwcv7GykboaLg.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Brygada 1918" - }, - { - "src": "http://fonts.gstatic.com/s/brygada1918/v21/pe06MI6eKpdGqlF5LANrM--qAeRhe6D4yip43qfcIxwcv7GykboaLg.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Brygada 1918" - }, - { - "src": "http://fonts.gstatic.com/s/brygada1918/v21/pe06MI6eKpdGqlF5LANrM--qAeRhe6D4yip43qfczxscv7GykboaLg.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Brygada 1918" - }, - { - "src": "http://fonts.gstatic.com/s/brygada1918/v21/pe06MI6eKpdGqlF5LANrM--qAeRhe6D4yip43qfc9hscv7GykboaLg.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Brygada 1918" - } - ] - }, - { - "name": "Bubblegum Sans", - "fontFamily": "Bubblegum Sans, system-ui", - "slug": "bubblegum-sans", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bubblegumsans/v16/AYCSpXb_Z9EORv1M5QTjEzMEtdaHzoPPb7R4.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bubblegum Sans" - } - ] - }, - { - "name": "Bubbler One", - "fontFamily": "Bubbler One, sans-serif", - "slug": "bubbler-one", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bubblerone/v20/f0Xy0eqj68ppQV9KBLmAouHH26MPePkt.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bubbler One" - } - ] - }, - { - "name": "Buda", - "fontFamily": "Buda, system-ui", - "slug": "buda", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/buda/v25/GFDqWAN8mnyIJSSrG7UBr7pZKA0.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Buda" - } - ] - }, - { - "name": "Buenard", - "fontFamily": "Buenard, serif", - "slug": "buenard", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/buenard/v17/OD5DuM6Cyma8FnnsPzf9qGi9HL4.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Buenard" - }, - { - "src": "http://fonts.gstatic.com/s/buenard/v17/OD5GuM6Cyma8FnnsB4vSjGCWALepwss.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Buenard" - } - ] - }, - { - "name": "Bungee", - "fontFamily": "Bungee, system-ui", - "slug": "bungee", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bungee/v11/N0bU2SZBIuF2PU_ECn50Kd_PmA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bungee" - } - ] - }, - { - "name": "Bungee Hairline", - "fontFamily": "Bungee Hairline, system-ui", - "slug": "bungee-hairline", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bungeehairline/v19/snfys0G548t04270a_ljTLUVrv-7YB2dQ5ZPqQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bungee Hairline" - } - ] - }, - { - "name": "Bungee Inline", - "fontFamily": "Bungee Inline, system-ui", - "slug": "bungee-inline", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bungeeinline/v12/Gg8zN58UcgnlCweMrih332VuDGJ1-FEglsc.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bungee Inline" - } - ] - }, - { - "name": "Bungee Outline", - "fontFamily": "Bungee Outline, system-ui", - "slug": "bungee-outline", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bungeeoutline/v18/_6_mEDvmVP24UvU2MyiGDslL3Qg3YhJqPXxo.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bungee Outline" - } - ] - }, - { - "name": "Bungee Shade", - "fontFamily": "Bungee Shade, system-ui", - "slug": "bungee-shade", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bungeeshade/v11/DtVkJxarWL0t2KdzK3oI_jks7iLSrwFUlw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bungee Shade" - } - ] - }, - { - "name": "Bungee Spice", - "fontFamily": "Bungee Spice, system-ui", - "slug": "bungee-spice", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/bungeespice/v9/nwpTtK2nIhxE0q-IwgSpZBqCzyI-aMPF7Q.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Bungee Spice" - } - ] - }, - { - "name": "Butcherman", - "fontFamily": "Butcherman, system-ui", - "slug": "butcherman", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/butcherman/v24/2EbiL-thF0loflXUBOdb1zWzq_5uT84.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Butcherman" - } - ] - }, - { - "name": "Butterfly Kids", - "fontFamily": "Butterfly Kids, cursive", - "slug": "butterfly-kids", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/butterflykids/v21/ll8lK2CWTjuqAsXDqlnIbMNs5S4arxFrAX1D.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Butterfly Kids" - } - ] - }, - { - "name": "Cabin", - "fontFamily": "Cabin, sans-serif", - "slug": "cabin", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/cabin/v26/u-4X0qWljRw-PfU81xCKCpdpbgZJl6XFpfEd7eA9BIxxkV2EL7Gvxm7rE_s.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Cabin" - }, - { - "src": "http://fonts.gstatic.com/s/cabin/v26/u-4X0qWljRw-PfU81xCKCpdpbgZJl6XFpfEd7eA9BIxxkW-EL7Gvxm7rE_s.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Cabin" - }, - { - "src": "http://fonts.gstatic.com/s/cabin/v26/u-4X0qWljRw-PfU81xCKCpdpbgZJl6XFpfEd7eA9BIxxkYODL7Gvxm7rE_s.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Cabin" - }, - { - "src": "http://fonts.gstatic.com/s/cabin/v26/u-4X0qWljRw-PfU81xCKCpdpbgZJl6XFpfEd7eA9BIxxkbqDL7Gvxm7rE_s.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Cabin" - }, - { - "src": "http://fonts.gstatic.com/s/cabin/v26/u-4V0qWljRw-Pd815fNqc8T_wAFcX-c37MPiNYlWniJ2hJXHx_KlwkzuA_u1Bg.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Cabin" - }, - { - "src": "http://fonts.gstatic.com/s/cabin/v26/u-4V0qWljRw-Pd815fNqc8T_wAFcX-c37MPiNYlWniJ2hJXH9fKlwkzuA_u1Bg.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Cabin" - }, - { - "src": "http://fonts.gstatic.com/s/cabin/v26/u-4V0qWljRw-Pd815fNqc8T_wAFcX-c37MPiNYlWniJ2hJXHGfWlwkzuA_u1Bg.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Cabin" - }, - { - "src": "http://fonts.gstatic.com/s/cabin/v26/u-4V0qWljRw-Pd815fNqc8T_wAFcX-c37MPiNYlWniJ2hJXHIPWlwkzuA_u1Bg.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Cabin" - } - ] - }, - { - "name": "Cabin Condensed", - "fontFamily": "Cabin Condensed, sans-serif", - "slug": "cabin-condensed", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/cabincondensed/v20/nwpMtK6mNhBK2err_hqkYhHRqmwaYOjZ5HZl8Q.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Cabin Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/cabincondensed/v20/nwpJtK6mNhBK2err_hqkYhHRqmwilMH97F15-K1oqQ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Cabin Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/cabincondensed/v20/nwpJtK6mNhBK2err_hqkYhHRqmwiuMb97F15-K1oqQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Cabin Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/cabincondensed/v20/nwpJtK6mNhBK2err_hqkYhHRqmwi3Mf97F15-K1oqQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Cabin Condensed" - } - ] - }, - { - "name": "Cabin Sketch", - "fontFamily": "Cabin Sketch, system-ui", - "slug": "cabin-sketch", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/cabinsketch/v19/QGYpz_kZZAGCONcK2A4bGOjMn9JM6fnuKg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Cabin Sketch" - }, - { - "src": "http://fonts.gstatic.com/s/cabinsketch/v19/QGY2z_kZZAGCONcK2A4bGOj0I_1o4dLyI4CMFw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Cabin Sketch" - } - ] - }, - { - "name": "Caesar Dressing", - "fontFamily": "Caesar Dressing, system-ui", - "slug": "caesar-dressing", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/caesardressing/v21/yYLx0hLa3vawqtwdswbotmK4vrR3cbb6LZttyg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Caesar Dressing" - } - ] - }, - { - "name": "Cagliostro", - "fontFamily": "Cagliostro, sans-serif", - "slug": "cagliostro", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/cagliostro/v21/ZgNWjP5HM73BV5amnX-TjGXEM4COoE4.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Cagliostro" - } - ] - }, - { - "name": "Cairo", - "fontFamily": "Cairo, sans-serif", - "slug": "cairo", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/cairo/v28/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hGA-W1ToLQ-HmkA.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Cairo" - }, - { - "src": "http://fonts.gstatic.com/s/cairo/v28/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hL4-W1ToLQ-HmkA.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Cairo" - }, - { - "src": "http://fonts.gstatic.com/s/cairo/v28/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hOA-W1ToLQ-HmkA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Cairo" - }, - { - "src": "http://fonts.gstatic.com/s/cairo/v28/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hNI-W1ToLQ-HmkA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Cairo" - }, - { - "src": "http://fonts.gstatic.com/s/cairo/v28/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hD45W1ToLQ-HmkA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Cairo" - }, - { - "src": "http://fonts.gstatic.com/s/cairo/v28/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hAc5W1ToLQ-HmkA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Cairo" - }, - { - "src": "http://fonts.gstatic.com/s/cairo/v28/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hGA5W1ToLQ-HmkA.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Cairo" - }, - { - "src": "http://fonts.gstatic.com/s/cairo/v28/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hEk5W1ToLQ-HmkA.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Cairo" - } - ] - }, - { - "name": "Cairo Play", - "fontFamily": "Cairo Play, sans-serif", - "slug": "cairo-play", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/cairoplay/v7/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1EnYq9yXa8GvzaA.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Cairo Play" - }, - { - "src": "http://fonts.gstatic.com/s/cairoplay/v7/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1zHYq9yXa8GvzaA.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Cairo Play" - }, - { - "src": "http://fonts.gstatic.com/s/cairoplay/v7/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1knYq9yXa8GvzaA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Cairo Play" - }, - { - "src": "http://fonts.gstatic.com/s/cairoplay/v7/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1oHYq9yXa8GvzaA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Cairo Play" - }, - { - "src": "http://fonts.gstatic.com/s/cairoplay/v7/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1THEq9yXa8GvzaA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Cairo Play" - }, - { - "src": "http://fonts.gstatic.com/s/cairoplay/v7/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1dXEq9yXa8GvzaA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Cairo Play" - }, - { - "src": "http://fonts.gstatic.com/s/cairoplay/v7/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1EnEq9yXa8GvzaA.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Cairo Play" - }, - { - "src": "http://fonts.gstatic.com/s/cairoplay/v7/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1O3Eq9yXa8GvzaA.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Cairo Play" - } - ] - }, - { - "name": "Caladea", - "fontFamily": "Caladea, serif", - "slug": "caladea", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/caladea/v7/kJEzBugZ7AAjhybUjR93-9IztOc.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Caladea" - }, - { - "src": "http://fonts.gstatic.com/s/caladea/v7/kJExBugZ7AAjhybUvR19__A2pOdvDA.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Caladea" - }, - { - "src": "http://fonts.gstatic.com/s/caladea/v7/kJE2BugZ7AAjhybUtaNY39oYqO52FZ0.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Caladea" - }, - { - "src": "http://fonts.gstatic.com/s/caladea/v7/kJE0BugZ7AAjhybUvR1FQ98SrMxzBZ2lDA.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Caladea" - } - ] - }, - { - "name": "Calistoga", - "fontFamily": "Calistoga, system-ui", - "slug": "calistoga", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/calistoga/v13/6NUU8F2OJg6MeR7l4e0vtMYAwdRZfw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Calistoga" - } - ] - }, - { - "name": "Calligraffitti", - "fontFamily": "Calligraffitti, cursive", - "slug": "calligraffitti", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/calligraffitti/v19/46k2lbT3XjDVqJw3DCmCFjE0vnFZM5ZBpYN-.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Calligraffitti" - } - ] - }, - { - "name": "Cambay", - "fontFamily": "Cambay, sans-serif", - "slug": "cambay", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/cambay/v12/SLXJc1rY6H0_ZDsGbrSIz9JsaA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Cambay" - }, - { - "src": "http://fonts.gstatic.com/s/cambay/v12/SLXLc1rY6H0_ZDs2bL6M7dd8aGZk.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Cambay" - }, - { - "src": "http://fonts.gstatic.com/s/cambay/v12/SLXKc1rY6H0_ZDs-0pusx_lwYX99kA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Cambay" - }, - { - "src": "http://fonts.gstatic.com/s/cambay/v12/SLXMc1rY6H0_ZDs2bIYwwvN0Q3ptkDMN.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Cambay" - } - ] - }, - { - "name": "Cambo", - "fontFamily": "Cambo, serif", - "slug": "cambo", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/cambo/v17/IFSqHeNEk8FJk416ok7xkPm8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Cambo" - } - ] - }, - { - "name": "Candal", - "fontFamily": "Candal, sans-serif", - "slug": "candal", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/candal/v15/XoHn2YH6T7-t_8cNAR4Jt9Yxlw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Candal" - } - ] - }, - { - "name": "Cantarell", - "fontFamily": "Cantarell, sans-serif", - "slug": "cantarell", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/cantarell/v17/B50NF7ZDq37KMUvlO01Ji6hqHK-CLA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Cantarell" - }, - { - "src": "http://fonts.gstatic.com/s/cantarell/v17/B50LF7ZDq37KMUvlO015iaJuPqqSLJYf.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Cantarell" - }, - { - "src": "http://fonts.gstatic.com/s/cantarell/v17/B50IF7ZDq37KMUvlO01xN4dOFISeJY8GgQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Cantarell" - }, - { - "src": "http://fonts.gstatic.com/s/cantarell/v17/B50WF7ZDq37KMUvlO015iZrSEY6aB4oWgWHB.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Cantarell" - } - ] - }, - { - "name": "Cantata One", - "fontFamily": "Cantata One, serif", - "slug": "cantata-one", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/cantataone/v15/PlI5Fl60Nb5obNzNe2jslVxEt8CwfGaD.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Cantata One" - } - ] - }, - { - "name": "Cantora One", - "fontFamily": "Cantora One, sans-serif", - "slug": "cantora-one", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/cantoraone/v19/gyB4hws1JdgnKy56GB_JX6zdZ4vZVbgZ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Cantora One" - } - ] - }, - { - "name": "Capriola", - "fontFamily": "Capriola, sans-serif", - "slug": "capriola", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/capriola/v14/wXKoE3YSppcvo1PDln_8L-AinG8y.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Capriola" - } - ] - }, - { - "name": "Caramel", - "fontFamily": "Caramel, cursive", - "slug": "caramel", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/caramel/v7/P5sCzZKBbMTf_ShyxCRuiZ-uydg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Caramel" - } - ] - }, - { - "name": "Carattere", - "fontFamily": "Carattere, cursive", - "slug": "carattere", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/carattere/v7/4iCv6Kp1b9dXlgt_CkvTt2aMH4V_gg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Carattere" - } - ] - }, - { - "name": "Cardo", - "fontFamily": "Cardo, serif", - "slug": "cardo", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/cardo/v19/wlp_gwjKBV1pqiv_1oAZ2H5O.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Cardo" - }, - { - "src": "http://fonts.gstatic.com/s/cardo/v19/wlpxgwjKBV1pqhv93IQ73W5OcCk.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Cardo" - }, - { - "src": "http://fonts.gstatic.com/s/cardo/v19/wlpygwjKBV1pqhND-aQR82JHaTBX.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Cardo" - } - ] - }, - { - "name": "Carlito", - "fontFamily": "Carlito, sans-serif", - "slug": "carlito", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/carlito/v3/3Jn9SDPw3m-pk039PDCLTXUETuE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Carlito" - }, - { - "src": "http://fonts.gstatic.com/s/carlito/v3/3Jn_SDPw3m-pk039DDKBSVcBXuFb0Q.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Carlito" - }, - { - "src": "http://fonts.gstatic.com/s/carlito/v3/3Jn4SDPw3m-pk039BIykaX0vUuhCyOo.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Carlito" - }, - { - "src": "http://fonts.gstatic.com/s/carlito/v3/3Jn6SDPw3m-pk039DDK59XglVspH2OprMQ.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Carlito" - } - ] - }, - { - "name": "Carme", - "fontFamily": "Carme, sans-serif", - "slug": "carme", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/carme/v16/ptRHTiWdbvZIDOjGxLNrxfbZ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Carme" - } - ] - }, - { - "name": "Carrois Gothic", - "fontFamily": "Carrois Gothic, sans-serif", - "slug": "carrois-gothic", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/carroisgothic/v16/Z9XPDmFATg-N1PLtLOOxvIHl9ZmD3i7ajcJ-.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Carrois Gothic" - } - ] - }, - { - "name": "Carrois Gothic SC", - "fontFamily": "Carrois Gothic SC, sans-serif", - "slug": "carrois-gothic-sc", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/carroisgothicsc/v15/ZgNJjOVHM6jfUZCmyUqT2A2HVKjc-28nNHabY4dN.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Carrois Gothic SC" - } - ] - }, - { - "name": "Carter One", - "fontFamily": "Carter One, system-ui", - "slug": "carter-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/carterone/v17/q5uCsoe5IOB2-pXv9UcNIxR2hYxREMs.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Carter One" - } - ] - }, - { - "name": "Castoro", - "fontFamily": "Castoro, serif", - "slug": "castoro", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/castoro/v19/1q2GY5yMCld3-O4cHYhEzOYenEU.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Castoro" - }, - { - "src": "http://fonts.gstatic.com/s/castoro/v19/1q2EY5yMCld3-O4cLYpOyMQbjEX5fw.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Castoro" - } - ] - }, - { - "name": "Castoro Titling", - "fontFamily": "Castoro Titling, system-ui", - "slug": "castoro-titling", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/castorotitling/v3/buEupouwccj03leTfjUAhEZWlrNqYgckeo9RMw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Castoro Titling" - } - ] - }, - { - "name": "Catamaran", - "fontFamily": "Catamaran, sans-serif", - "slug": "catamaran", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/catamaran/v18/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPHjc1anXuluiLyw.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Catamaran" - }, - { - "src": "http://fonts.gstatic.com/s/catamaran/v18/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPPjd1anXuluiLyw.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Catamaran" - }, - { - "src": "http://fonts.gstatic.com/s/catamaran/v18/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPCbd1anXuluiLyw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Catamaran" - }, - { - "src": "http://fonts.gstatic.com/s/catamaran/v18/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPHjd1anXuluiLyw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Catamaran" - }, - { - "src": "http://fonts.gstatic.com/s/catamaran/v18/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPErd1anXuluiLyw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Catamaran" - }, - { - "src": "http://fonts.gstatic.com/s/catamaran/v18/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPKba1anXuluiLyw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Catamaran" - }, - { - "src": "http://fonts.gstatic.com/s/catamaran/v18/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPJ_a1anXuluiLyw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Catamaran" - }, - { - "src": "http://fonts.gstatic.com/s/catamaran/v18/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPPja1anXuluiLyw.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Catamaran" - }, - { - "src": "http://fonts.gstatic.com/s/catamaran/v18/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPNHa1anXuluiLyw.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Catamaran" - } - ] - }, - { - "name": "Caudex", - "fontFamily": "Caudex, serif", - "slug": "caudex", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/caudex/v15/esDQ311QOP6BJUrIyviAnb4eEw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Caudex" - }, - { - "src": "http://fonts.gstatic.com/s/caudex/v15/esDS311QOP6BJUr4yPKEv7sOE4in.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Caudex" - }, - { - "src": "http://fonts.gstatic.com/s/caudex/v15/esDT311QOP6BJUrwdteklZUCGpG-GQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Caudex" - }, - { - "src": "http://fonts.gstatic.com/s/caudex/v15/esDV311QOP6BJUr4yMo4kJ8GOJSuGdLB.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Caudex" - } - ] - }, - { - "name": "Caveat", - "fontFamily": "Caveat, cursive", - "slug": "caveat", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/caveat/v17/WnznHAc5bAfYB2QRah7pcpNvOx-pjfJ9SIKjYBxPigs.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Caveat" - }, - { - "src": "http://fonts.gstatic.com/s/caveat/v17/WnznHAc5bAfYB2QRah7pcpNvOx-pjcB9SIKjYBxPigs.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Caveat" - }, - { - "src": "http://fonts.gstatic.com/s/caveat/v17/WnznHAc5bAfYB2QRah7pcpNvOx-pjSx6SIKjYBxPigs.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Caveat" - }, - { - "src": "http://fonts.gstatic.com/s/caveat/v17/WnznHAc5bAfYB2QRah7pcpNvOx-pjRV6SIKjYBxPigs.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Caveat" - } - ] - }, - { - "name": "Caveat Brush", - "fontFamily": "Caveat Brush, cursive", - "slug": "caveat-brush", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/caveatbrush/v11/EYq0maZfwr9S9-ETZc3fKXtMW7mT03pdQw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Caveat Brush" - } - ] - }, - { - "name": "Cedarville Cursive", - "fontFamily": "Cedarville Cursive, cursive", - "slug": "cedarville-cursive", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/cedarvillecursive/v17/yYL00g_a2veiudhUmxjo5VKkoqA-B_neJbBxw8BeTg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Cedarville Cursive" - } - ] - }, - { - "name": "Ceviche One", - "fontFamily": "Ceviche One, system-ui", - "slug": "ceviche-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/cevicheone/v16/gyB4hws1IcA6JzR-GB_JX6zdZ4vZVbgZ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Ceviche One" - } - ] - }, - { - "name": "Chakra Petch", - "fontFamily": "Chakra Petch, sans-serif", - "slug": "chakra-petch", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/chakrapetch/v9/cIflMapbsEk7TDLdtEz1BwkeNIhFQJXE3AY00g.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Chakra Petch" - }, - { - "src": "http://fonts.gstatic.com/s/chakrapetch/v9/cIfnMapbsEk7TDLdtEz1BwkWmpLJQp_A_gMk0izH.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Chakra Petch" - }, - { - "src": "http://fonts.gstatic.com/s/chakrapetch/v9/cIf6MapbsEk7TDLdtEz1BwkmmKBhSL7Y1Q.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Chakra Petch" - }, - { - "src": "http://fonts.gstatic.com/s/chakrapetch/v9/cIfkMapbsEk7TDLdtEz1BwkWmqplarvI1R8t.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Chakra Petch" - }, - { - "src": "http://fonts.gstatic.com/s/chakrapetch/v9/cIflMapbsEk7TDLdtEz1BwkebIlFQJXE3AY00g.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Chakra Petch" - }, - { - "src": "http://fonts.gstatic.com/s/chakrapetch/v9/cIfnMapbsEk7TDLdtEz1BwkWmpKRQ5_A_gMk0izH.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Chakra Petch" - }, - { - "src": "http://fonts.gstatic.com/s/chakrapetch/v9/cIflMapbsEk7TDLdtEz1BwkeQI5FQJXE3AY00g.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Chakra Petch" - }, - { - "src": "http://fonts.gstatic.com/s/chakrapetch/v9/cIfnMapbsEk7TDLdtEz1BwkWmpK9RJ_A_gMk0izH.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Chakra Petch" - }, - { - "src": "http://fonts.gstatic.com/s/chakrapetch/v9/cIflMapbsEk7TDLdtEz1BwkeJI9FQJXE3AY00g.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Chakra Petch" - }, - { - "src": "http://fonts.gstatic.com/s/chakrapetch/v9/cIfnMapbsEk7TDLdtEz1BwkWmpLZRZ_A_gMk0izH.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Chakra Petch" - } - ] - }, - { - "name": "Changa", - "fontFamily": "Changa, sans-serif", - "slug": "changa", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/changa/v22/2-c79JNi2YuVOUcOarRPgnNGooxCZy2xQjDp9htf1ZM.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Changa" - }, - { - "src": "http://fonts.gstatic.com/s/changa/v22/2-c79JNi2YuVOUcOarRPgnNGooxCZ_OxQjDp9htf1ZM.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Changa" - }, - { - "src": "http://fonts.gstatic.com/s/changa/v22/2-c79JNi2YuVOUcOarRPgnNGooxCZ62xQjDp9htf1ZM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Changa" - }, - { - "src": "http://fonts.gstatic.com/s/changa/v22/2-c79JNi2YuVOUcOarRPgnNGooxCZ5-xQjDp9htf1ZM.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Changa" - }, - { - "src": "http://fonts.gstatic.com/s/changa/v22/2-c79JNi2YuVOUcOarRPgnNGooxCZ3O2QjDp9htf1ZM.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Changa" - }, - { - "src": "http://fonts.gstatic.com/s/changa/v22/2-c79JNi2YuVOUcOarRPgnNGooxCZ0q2QjDp9htf1ZM.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Changa" - }, - { - "src": "http://fonts.gstatic.com/s/changa/v22/2-c79JNi2YuVOUcOarRPgnNGooxCZy22QjDp9htf1ZM.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Changa" - } - ] - }, - { - "name": "Changa One", - "fontFamily": "Changa One, system-ui", - "slug": "changa-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/changaone/v18/xfu00W3wXn3QLUJXhzq46AbouLfbK64.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Changa One" - }, - { - "src": "http://fonts.gstatic.com/s/changaone/v18/xfu20W3wXn3QLUJXhzq42ATivJXeO67ISw.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Changa One" - } - ] - }, - { - "name": "Chango", - "fontFamily": "Chango, system-ui", - "slug": "chango", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/chango/v22/2V0cKI0OB5U7WaJyz324TFUaAw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Chango" - } - ] - }, - { - "name": "Charis SIL", - "fontFamily": "Charis SIL, serif", - "slug": "charis-sil", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/charissil/v2/oPWK_kV3l-s-Q8govXvKrPrmYjZ2Xn0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Charis SIL" - }, - { - "src": "http://fonts.gstatic.com/s/charissil/v2/oPWI_kV3l-s-Q8govXvKnPjsZhRzTn2Ozw.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Charis SIL" - }, - { - "src": "http://fonts.gstatic.com/s/charissil/v2/oPWJ_kV3l-s-Q8govXvKlEbJRj5dQnSX1ko.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Charis SIL" - }, - { - "src": "http://fonts.gstatic.com/s/charissil/v2/oPWX_kV3l-s-Q8govXvKnPjU2jtXRlaSxkrMCQ.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Charis SIL" - } - ] - }, - { - "name": "Charm", - "fontFamily": "Charm, cursive", - "slug": "charm", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/charm/v11/7cHmv4oii5K0MeYvIe804WIo.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Charm" - }, - { - "src": "http://fonts.gstatic.com/s/charm/v11/7cHrv4oii5K0Md6TDss8yn4hnCci.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Charm" - } - ] - }, - { - "name": "Charmonman", - "fontFamily": "Charmonman, cursive", - "slug": "charmonman", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/charmonman/v18/MjQDmiR3vP_nuxDv47jiWJGovLdh6OE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Charmonman" - }, - { - "src": "http://fonts.gstatic.com/s/charmonman/v18/MjQAmiR3vP_nuxDv47jiYC2HmL9K9OhmGnY.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Charmonman" - } - ] - }, - { - "name": "Chathura", - "fontFamily": "Chathura, sans-serif", - "slug": "chathura", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/chathura/v20/_gP91R7-rzUuVjim42dEq0SbTvZyuDo.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Chathura" - }, - { - "src": "http://fonts.gstatic.com/s/chathura/v20/_gP81R7-rzUuVjim42eMiWSxYPp7oSNy.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Chathura" - }, - { - "src": "http://fonts.gstatic.com/s/chathura/v20/_gP71R7-rzUuVjim418goUC5S-Zy.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Chathura" - }, - { - "src": "http://fonts.gstatic.com/s/chathura/v20/_gP81R7-rzUuVjim42ecjmSxYPp7oSNy.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Chathura" - }, - { - "src": "http://fonts.gstatic.com/s/chathura/v20/_gP81R7-rzUuVjim42eAjWSxYPp7oSNy.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Chathura" - } - ] - }, - { - "name": "Chau Philomene One", - "fontFamily": "Chau Philomene One, sans-serif", - "slug": "chau-philomene-one", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/chauphilomeneone/v15/55xxezRsPtfie1vPY49qzdgSlJiHRQFsnIx7QMISdQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Chau Philomene One" - }, - { - "src": "http://fonts.gstatic.com/s/chauphilomeneone/v15/55xzezRsPtfie1vPY49qzdgSlJiHRQFcnoZ_YscCdXQB.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Chau Philomene One" - } - ] - }, - { - "name": "Chela One", - "fontFamily": "Chela One, system-ui", - "slug": "chela-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/chelaone/v21/6ae-4KC7Uqgdz_JZdPIy31vWNTMwoQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Chela One" - } - ] - }, - { - "name": "Chelsea Market", - "fontFamily": "Chelsea Market, system-ui", - "slug": "chelsea-market", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/chelseamarket/v13/BCawqZsHqfr89WNP_IApC8tzKBhlLA4uKkWk.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Chelsea Market" - } - ] - }, - { - "name": "Chenla", - "fontFamily": "Chenla, system-ui", - "slug": "chenla", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/chenla/v25/SZc43FDpIKu8WZ9eXxfonUPL6Q.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Chenla" - } - ] - }, - { - "name": "Cherish", - "fontFamily": "Cherish, cursive", - "slug": "cherish", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/cherish/v8/ll88K2mXUyqsDsTN5iDCI6IJjg8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Cherish" - } - ] - }, - { - "name": "Cherry Bomb One", - "fontFamily": "Cherry Bomb One, system-ui", - "slug": "cherry-bomb-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/cherrybombone/v8/y83DW4od1h6KlV3c6JJhRhGOdhrKDNpF41fr-w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Cherry Bomb One" - } - ] - }, - { - "name": "Cherry Cream Soda", - "fontFamily": "Cherry Cream Soda, system-ui", - "slug": "cherry-cream-soda", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/cherrycreamsoda/v21/UMBIrOxBrW6w2FFyi9paG0fdVdRciTd6Cd47DJ7G.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Cherry Cream Soda" - } - ] - }, - { - "name": "Cherry Swash", - "fontFamily": "Cherry Swash, system-ui", - "slug": "cherry-swash", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/cherryswash/v18/i7dNIFByZjaNAMxtZcnfAy58QHi-EwWMbg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Cherry Swash" - }, - { - "src": "http://fonts.gstatic.com/s/cherryswash/v18/i7dSIFByZjaNAMxtZcnfAy5E_FeaGy6QZ3WfYg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Cherry Swash" - } - ] - }, - { - "name": "Chewy", - "fontFamily": "Chewy, system-ui", - "slug": "chewy", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/chewy/v18/uK_94ruUb-k-wk5xIDMfO-ed.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Chewy" - } - ] - }, - { - "name": "Chicle", - "fontFamily": "Chicle, system-ui", - "slug": "chicle", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/chicle/v21/lJwG-pw9i2dqU-BDyWKuobYSxw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Chicle" - } - ] - }, - { - "name": "Chilanka", - "fontFamily": "Chilanka, cursive", - "slug": "chilanka", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/chilanka/v20/WWXRlj2DZQiMJYaYRrJQI9EAZhTO.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Chilanka" - } - ] - }, - { - "name": "Chivo", - "fontFamily": "Chivo, sans-serif", - "slug": "chivo", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/chivo/v18/va9b4kzIxd1KFppkaRKvDRPJVDf_vB7ul2DSFXjQiQ.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Chivo" - }, - { - "src": "http://fonts.gstatic.com/s/chivo/v18/va9b4kzIxd1KFppkaRKvDRPJVDf_PB_ul2DSFXjQiQ.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Chivo" - }, - { - "src": "http://fonts.gstatic.com/s/chivo/v18/va9b4kzIxd1KFppkaRKvDRPJVDf_4h_ul2DSFXjQiQ.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Chivo" - }, - { - "src": "http://fonts.gstatic.com/s/chivo/v18/va9b4kzIxd1KFppkaRKvDRPJVDf_vB_ul2DSFXjQiQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Chivo" - }, - { - "src": "http://fonts.gstatic.com/s/chivo/v18/va9b4kzIxd1KFppkaRKvDRPJVDf_jh_ul2DSFXjQiQ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Chivo" - }, - { - "src": "http://fonts.gstatic.com/s/chivo/v18/va9b4kzIxd1KFppkaRKvDRPJVDf_Yhjul2DSFXjQiQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Chivo" - }, - { - "src": "http://fonts.gstatic.com/s/chivo/v18/va9b4kzIxd1KFppkaRKvDRPJVDf_Wxjul2DSFXjQiQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Chivo" - }, - { - "src": "http://fonts.gstatic.com/s/chivo/v18/va9b4kzIxd1KFppkaRKvDRPJVDf_PBjul2DSFXjQiQ.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Chivo" - }, - { - "src": "http://fonts.gstatic.com/s/chivo/v18/va9b4kzIxd1KFppkaRKvDRPJVDf_FRjul2DSFXjQiQ.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Chivo" - }, - { - "src": "http://fonts.gstatic.com/s/chivo/v18/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFwG1WrWN33AiasJ.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Chivo" - }, - { - "src": "http://fonts.gstatic.com/s/chivo/v18/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFyG1GrWN33AiasJ.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Chivo" - }, - { - "src": "http://fonts.gstatic.com/s/chivo/v18/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFxY1GrWN33AiasJ.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Chivo" - }, - { - "src": "http://fonts.gstatic.com/s/chivo/v18/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFwG1GrWN33AiasJ.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Chivo" - }, - { - "src": "http://fonts.gstatic.com/s/chivo/v18/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFw01GrWN33AiasJ.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Chivo" - }, - { - "src": "http://fonts.gstatic.com/s/chivo/v18/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFzY02rWN33AiasJ.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Chivo" - }, - { - "src": "http://fonts.gstatic.com/s/chivo/v18/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFzh02rWN33AiasJ.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Chivo" - }, - { - "src": "http://fonts.gstatic.com/s/chivo/v18/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFyG02rWN33AiasJ.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Chivo" - }, - { - "src": "http://fonts.gstatic.com/s/chivo/v18/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFyv02rWN33AiasJ.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Chivo" - } - ] - }, - { - "name": "Chivo Mono", - "fontFamily": "Chivo Mono, monospace", - "slug": "chivo-mono", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/chivomono/v6/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D7hrqfVKphL03l4.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Chivo Mono" - }, - { - "src": "http://fonts.gstatic.com/s/chivomono/v6/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D5hr6fVKphL03l4.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Chivo Mono" - }, - { - "src": "http://fonts.gstatic.com/s/chivomono/v6/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D6_r6fVKphL03l4.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Chivo Mono" - }, - { - "src": "http://fonts.gstatic.com/s/chivomono/v6/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D7hr6fVKphL03l4.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Chivo Mono" - }, - { - "src": "http://fonts.gstatic.com/s/chivomono/v6/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D7Tr6fVKphL03l4.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Chivo Mono" - }, - { - "src": "http://fonts.gstatic.com/s/chivomono/v6/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D4_qKfVKphL03l4.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Chivo Mono" - }, - { - "src": "http://fonts.gstatic.com/s/chivomono/v6/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D4GqKfVKphL03l4.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Chivo Mono" - }, - { - "src": "http://fonts.gstatic.com/s/chivomono/v6/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D5hqKfVKphL03l4.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Chivo Mono" - }, - { - "src": "http://fonts.gstatic.com/s/chivomono/v6/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D5IqKfVKphL03l4.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Chivo Mono" - }, - { - "src": "http://fonts.gstatic.com/s/chivomono/v6/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7E-XIJxp1ml4imo.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Chivo Mono" - }, - { - "src": "http://fonts.gstatic.com/s/chivomono/v6/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7M-WIJxp1ml4imo.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Chivo Mono" - }, - { - "src": "http://fonts.gstatic.com/s/chivomono/v6/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7BGWIJxp1ml4imo.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Chivo Mono" - }, - { - "src": "http://fonts.gstatic.com/s/chivomono/v6/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7E-WIJxp1ml4imo.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Chivo Mono" - }, - { - "src": "http://fonts.gstatic.com/s/chivomono/v6/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7H2WIJxp1ml4imo.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Chivo Mono" - }, - { - "src": "http://fonts.gstatic.com/s/chivomono/v6/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7JGRIJxp1ml4imo.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Chivo Mono" - }, - { - "src": "http://fonts.gstatic.com/s/chivomono/v6/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7KiRIJxp1ml4imo.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Chivo Mono" - }, - { - "src": "http://fonts.gstatic.com/s/chivomono/v6/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7M-RIJxp1ml4imo.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Chivo Mono" - }, - { - "src": "http://fonts.gstatic.com/s/chivomono/v6/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7OaRIJxp1ml4imo.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Chivo Mono" - } - ] - }, - { - "name": "Chokokutai", - "fontFamily": "Chokokutai, system-ui", - "slug": "chokokutai", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/chokokutai/v9/kmK4Zqw4HwvCeHGM8Fws9y7ypu1Kr7I.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Chokokutai" - } - ] - }, - { - "name": "Chonburi", - "fontFamily": "Chonburi, system-ui", - "slug": "chonburi", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/chonburi/v10/8AtqGs-wOpGRTBq66IWaFr3biAfZ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Chonburi" - } - ] - }, - { - "name": "Cinzel", - "fontFamily": "Cinzel, serif", - "slug": "cinzel", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/cinzel/v23/8vIU7ww63mVu7gtR-kwKxNvkNOjw-tbnTYrvDE5ZdqU.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Cinzel" - }, - { - "src": "http://fonts.gstatic.com/s/cinzel/v23/8vIU7ww63mVu7gtR-kwKxNvkNOjw-uTnTYrvDE5ZdqU.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Cinzel" - }, - { - "src": "http://fonts.gstatic.com/s/cinzel/v23/8vIU7ww63mVu7gtR-kwKxNvkNOjw-gjgTYrvDE5ZdqU.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Cinzel" - }, - { - "src": "http://fonts.gstatic.com/s/cinzel/v23/8vIU7ww63mVu7gtR-kwKxNvkNOjw-jHgTYrvDE5ZdqU.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Cinzel" - }, - { - "src": "http://fonts.gstatic.com/s/cinzel/v23/8vIU7ww63mVu7gtR-kwKxNvkNOjw-lbgTYrvDE5ZdqU.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Cinzel" - }, - { - "src": "http://fonts.gstatic.com/s/cinzel/v23/8vIU7ww63mVu7gtR-kwKxNvkNOjw-n_gTYrvDE5ZdqU.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Cinzel" - } - ] - }, - { - "name": "Cinzel Decorative", - "fontFamily": "Cinzel Decorative, system-ui", - "slug": "cinzel-decorative", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/cinzeldecorative/v14/daaCSScvJGqLYhG8nNt8KPPswUAPnh7URs1LaCyC.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Cinzel Decorative" - }, - { - "src": "http://fonts.gstatic.com/s/cinzeldecorative/v14/daaHSScvJGqLYhG8nNt8KPPswUAPniZoaelDQzCLlQXE.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Cinzel Decorative" - }, - { - "src": "http://fonts.gstatic.com/s/cinzeldecorative/v14/daaHSScvJGqLYhG8nNt8KPPswUAPniZQa-lDQzCLlQXE.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Cinzel Decorative" - } - ] - }, - { - "name": "Clicker Script", - "fontFamily": "Clicker Script, cursive", - "slug": "clicker-script", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/clickerscript/v13/raxkHiKPvt8CMH6ZWP8PdlEq72rY2zqUKafv.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Clicker Script" - } - ] - }, - { - "name": "Climate Crisis", - "fontFamily": "Climate Crisis, system-ui", - "slug": "climate-crisis", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/climatecrisis/v5/wEOpEB3AntNeKCPBVW9XOKlmp3AUgWFN1DvIvcM0gFp6jaUrGb7PsQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Climate Crisis" - } - ] - }, - { - "name": "Coda", - "fontFamily": "Coda, system-ui", - "slug": "coda", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/coda/v21/SLXHc1jY5nQ8JUIMapaN39I.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Coda" - }, - { - "src": "http://fonts.gstatic.com/s/coda/v21/SLXIc1jY5nQ8HeIgTp6mw9t1cX8.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Coda" - } - ] - }, - { - "name": "Coda Caption", - "fontFamily": "Coda Caption, sans-serif", - "slug": "coda-caption", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/codacaption/v19/ieVm2YRII2GMY7SyXSoDRiQGqcx6x_-fACIgaw.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Coda Caption" - } - ] - }, - { - "name": "Codystar", - "fontFamily": "Codystar, system-ui", - "slug": "codystar", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/codystar/v15/FwZf7-Q1xVk-40qxOuYsyuyrj0e29bfC.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Codystar" - }, - { - "src": "http://fonts.gstatic.com/s/codystar/v15/FwZY7-Q1xVk-40qxOt6A4sijpFu_.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Codystar" - } - ] - }, - { - "name": "Coiny", - "fontFamily": "Coiny, system-ui", - "slug": "coiny", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/coiny/v16/gyByhwU1K989PXwbElSvO5Tc.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Coiny" - } - ] - }, - { - "name": "Combo", - "fontFamily": "Combo, system-ui", - "slug": "combo", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/combo/v21/BXRlvF3Jh_fIhg0iBu9y8Hf0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Combo" - } - ] - }, - { - "name": "Comfortaa", - "fontFamily": "Comfortaa, system-ui", - "slug": "comfortaa", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/comfortaa/v40/1Pt_g8LJRfWJmhDAuUsSQamb1W0lwk4S4TbMPrQVIT9c2c8.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Comfortaa" - }, - { - "src": "http://fonts.gstatic.com/s/comfortaa/v40/1Pt_g8LJRfWJmhDAuUsSQamb1W0lwk4S4WjMPrQVIT9c2c8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Comfortaa" - }, - { - "src": "http://fonts.gstatic.com/s/comfortaa/v40/1Pt_g8LJRfWJmhDAuUsSQamb1W0lwk4S4VrMPrQVIT9c2c8.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Comfortaa" - }, - { - "src": "http://fonts.gstatic.com/s/comfortaa/v40/1Pt_g8LJRfWJmhDAuUsSQamb1W0lwk4S4bbLPrQVIT9c2c8.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Comfortaa" - }, - { - "src": "http://fonts.gstatic.com/s/comfortaa/v40/1Pt_g8LJRfWJmhDAuUsSQamb1W0lwk4S4Y_LPrQVIT9c2c8.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Comfortaa" - } - ] - }, - { - "name": "Comforter", - "fontFamily": "Comforter, cursive", - "slug": "comforter", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/comforter/v5/H4clBXOCl8nQnlaql3Qa6JG8iqeuag.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Comforter" - } - ] - }, - { - "name": "Comforter Brush", - "fontFamily": "Comforter Brush, cursive", - "slug": "comforter-brush", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/comforterbrush/v5/Y4GTYa1xVSggrfzZI5WMjxRaOz0jwLL9Th8YYA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Comforter Brush" - } - ] - }, - { - "name": "Comic Neue", - "fontFamily": "Comic Neue, cursive", - "slug": "comic-neue", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/comicneue/v8/4UaErEJDsxBrF37olUeD_wHLwpteLwtHJlc.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Comic Neue" - }, - { - "src": "http://fonts.gstatic.com/s/comicneue/v8/4UaarEJDsxBrF37olUeD96_RTplUKylCNlcw_Q.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Comic Neue" - }, - { - "src": "http://fonts.gstatic.com/s/comicneue/v8/4UaHrEJDsxBrF37olUeDx63j5pN1MwI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Comic Neue" - }, - { - "src": "http://fonts.gstatic.com/s/comicneue/v8/4UaFrEJDsxBrF37olUeD96_p4rFwIwJePw.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Comic Neue" - }, - { - "src": "http://fonts.gstatic.com/s/comicneue/v8/4UaErEJDsxBrF37olUeD_xHMwpteLwtHJlc.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Comic Neue" - }, - { - "src": "http://fonts.gstatic.com/s/comicneue/v8/4UaarEJDsxBrF37olUeD96_RXp5UKylCNlcw_Q.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Comic Neue" - } - ] - }, - { - "name": "Coming Soon", - "fontFamily": "Coming Soon, cursive", - "slug": "coming-soon", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/comingsoon/v19/qWcuB6mzpYL7AJ2VfdQR1u-SUjjzsykh.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Coming Soon" - } - ] - }, - { - "name": "Comme", - "fontFamily": "Comme, sans-serif", - "slug": "comme", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/comme/v2/8QIUdirKhMbn-uG1kHz0MgviDe1z5cBr644fWsRO9w.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Comme" - }, - { - "src": "http://fonts.gstatic.com/s/comme/v2/8QIUdirKhMbn-uG1kHz0MgviDe1zZcFr644fWsRO9w.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Comme" - }, - { - "src": "http://fonts.gstatic.com/s/comme/v2/8QIUdirKhMbn-uG1kHz0MgviDe1zu8Fr644fWsRO9w.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Comme" - }, - { - "src": "http://fonts.gstatic.com/s/comme/v2/8QIUdirKhMbn-uG1kHz0MgviDe1z5cFr644fWsRO9w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Comme" - }, - { - "src": "http://fonts.gstatic.com/s/comme/v2/8QIUdirKhMbn-uG1kHz0MgviDe1z18Fr644fWsRO9w.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Comme" - }, - { - "src": "http://fonts.gstatic.com/s/comme/v2/8QIUdirKhMbn-uG1kHz0MgviDe1zO8Zr644fWsRO9w.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Comme" - }, - { - "src": "http://fonts.gstatic.com/s/comme/v2/8QIUdirKhMbn-uG1kHz0MgviDe1zAsZr644fWsRO9w.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Comme" - }, - { - "src": "http://fonts.gstatic.com/s/comme/v2/8QIUdirKhMbn-uG1kHz0MgviDe1zZcZr644fWsRO9w.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Comme" - }, - { - "src": "http://fonts.gstatic.com/s/comme/v2/8QIUdirKhMbn-uG1kHz0MgviDe1zTMZr644fWsRO9w.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Comme" - } - ] - }, - { - "name": "Commissioner", - "fontFamily": "Commissioner, sans-serif", - "slug": "commissioner", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/commissioner/v20/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTMNcGPe7Fu0jUdk.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Commissioner" - }, - { - "src": "http://fonts.gstatic.com/s/commissioner/v20/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTENdGPe7Fu0jUdk.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Commissioner" - }, - { - "src": "http://fonts.gstatic.com/s/commissioner/v20/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTJ1dGPe7Fu0jUdk.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Commissioner" - }, - { - "src": "http://fonts.gstatic.com/s/commissioner/v20/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTMNdGPe7Fu0jUdk.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Commissioner" - }, - { - "src": "http://fonts.gstatic.com/s/commissioner/v20/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTPFdGPe7Fu0jUdk.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Commissioner" - }, - { - "src": "http://fonts.gstatic.com/s/commissioner/v20/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTB1aGPe7Fu0jUdk.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Commissioner" - }, - { - "src": "http://fonts.gstatic.com/s/commissioner/v20/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTCRaGPe7Fu0jUdk.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Commissioner" - }, - { - "src": "http://fonts.gstatic.com/s/commissioner/v20/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTENaGPe7Fu0jUdk.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Commissioner" - }, - { - "src": "http://fonts.gstatic.com/s/commissioner/v20/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTGpaGPe7Fu0jUdk.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Commissioner" - } - ] - }, - { - "name": "Concert One", - "fontFamily": "Concert One, system-ui", - "slug": "concert-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/concertone/v17/VEM1Ro9xs5PjtzCu-srDqRTlhv-CuVAQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Concert One" - } - ] - }, - { - "name": "Condiment", - "fontFamily": "Condiment, cursive", - "slug": "condiment", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/condiment/v20/pONk1hggFNmwvXALyH6Sq4n4o1vyCQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Condiment" - } - ] - }, - { - "name": "Content", - "fontFamily": "Content, system-ui", - "slug": "content", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/content/v24/zrfl0HLayePhU_AwUaDyIiL0RCg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Content" - }, - { - "src": "http://fonts.gstatic.com/s/content/v24/zrfg0HLayePhU_AwaRzdBirfWCHvkAI.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Content" - } - ] - }, - { - "name": "Contrail One", - "fontFamily": "Contrail One, system-ui", - "slug": "contrail-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/contrailone/v15/eLGbP-j_JA-kG0_Zo51noafdZUvt_c092w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Contrail One" - } - ] - }, - { - "name": "Convergence", - "fontFamily": "Convergence, sans-serif", - "slug": "convergence", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/convergence/v15/rax5HiePvdgXPmmMHcIPYRhasU7Q8Cad.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Convergence" - } - ] - }, - { - "name": "Cookie", - "fontFamily": "Cookie, cursive", - "slug": "cookie", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/cookie/v17/syky-y18lb0tSbfNlQCT9tPdpw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Cookie" - } - ] - }, - { - "name": "Copse", - "fontFamily": "Copse, serif", - "slug": "copse", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/copse/v15/11hPGpDKz1rGb0djHkihUb-A.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Copse" - } - ] - }, - { - "name": "Corben", - "fontFamily": "Corben, system-ui", - "slug": "corben", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/corben/v19/LYjDdGzzklQtCMp9oAlEpVs3VQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Corben" - }, - { - "src": "http://fonts.gstatic.com/s/corben/v19/LYjAdGzzklQtCMpFHCZgrXArXN7HWQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Corben" - } - ] - }, - { - "name": "Corinthia", - "fontFamily": "Corinthia, cursive", - "slug": "corinthia", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/corinthia/v9/wEO_EBrAnchaJyPMHE0FUfAL3EsHiA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Corinthia" - }, - { - "src": "http://fonts.gstatic.com/s/corinthia/v9/wEO6EBrAnchaJyPMHE097d8v1GAbgbLXQA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Corinthia" - } - ] - }, - { - "name": "Cormorant", - "fontFamily": "Cormorant, serif", - "slug": "cormorant", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/cormorant/v21/H4c2BXOCl9bbnla_nHIA47NMUjsNbCVrFk9TQ7Rg7A2uwYs.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Cormorant" - }, - { - "src": "http://fonts.gstatic.com/s/cormorant/v21/H4c2BXOCl9bbnla_nHIA47NMUjsNbCVrFhFTQ7Rg7A2uwYs.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Cormorant" - }, - { - "src": "http://fonts.gstatic.com/s/cormorant/v21/H4c2BXOCl9bbnla_nHIA47NMUjsNbCVrFiNTQ7Rg7A2uwYs.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Cormorant" - }, - { - "src": "http://fonts.gstatic.com/s/cormorant/v21/H4c2BXOCl9bbnla_nHIA47NMUjsNbCVrFs9UQ7Rg7A2uwYs.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Cormorant" - }, - { - "src": "http://fonts.gstatic.com/s/cormorant/v21/H4c2BXOCl9bbnla_nHIA47NMUjsNbCVrFvZUQ7Rg7A2uwYs.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Cormorant" - }, - { - "src": "http://fonts.gstatic.com/s/cormorant/v21/H4c0BXOCl9bbnla_nHIq6oGzilJm9otsA9kQ9fdq6C-r0YvxdA.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Cormorant" - }, - { - "src": "http://fonts.gstatic.com/s/cormorant/v21/H4c0BXOCl9bbnla_nHIq6oGzilJm9otsA9kQq_dq6C-r0YvxdA.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Cormorant" - }, - { - "src": "http://fonts.gstatic.com/s/cormorant/v21/H4c0BXOCl9bbnla_nHIq6oGzilJm9otsA9kQmfdq6C-r0YvxdA.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Cormorant" - }, - { - "src": "http://fonts.gstatic.com/s/cormorant/v21/H4c0BXOCl9bbnla_nHIq6oGzilJm9otsA9kQdfBq6C-r0YvxdA.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Cormorant" - }, - { - "src": "http://fonts.gstatic.com/s/cormorant/v21/H4c0BXOCl9bbnla_nHIq6oGzilJm9otsA9kQTPBq6C-r0YvxdA.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Cormorant" - } - ] - }, - { - "name": "Cormorant Garamond", - "fontFamily": "Cormorant Garamond, serif", - "slug": "cormorant-garamond", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/cormorantgaramond/v16/co3YmX5slCNuHLi8bLeY9MK7whWMhyjQAllvuQWJ5heb_w.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Cormorant Garamond" - }, - { - "src": "http://fonts.gstatic.com/s/cormorantgaramond/v16/co3WmX5slCNuHLi8bLeY9MK7whWMhyjYrEPjuw-NxBKL_y94.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Cormorant Garamond" - }, - { - "src": "http://fonts.gstatic.com/s/cormorantgaramond/v16/co3bmX5slCNuHLi8bLeY9MK7whWMhyjornFLsS6V7w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Cormorant Garamond" - }, - { - "src": "http://fonts.gstatic.com/s/cormorantgaramond/v16/co3ZmX5slCNuHLi8bLeY9MK7whWMhyjYrHtPkyuF7w6C.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Cormorant Garamond" - }, - { - "src": "http://fonts.gstatic.com/s/cormorantgaramond/v16/co3YmX5slCNuHLi8bLeY9MK7whWMhyjQWlhvuQWJ5heb_w.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Cormorant Garamond" - }, - { - "src": "http://fonts.gstatic.com/s/cormorantgaramond/v16/co3WmX5slCNuHLi8bLeY9MK7whWMhyjYrEO7ug-NxBKL_y94.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Cormorant Garamond" - }, - { - "src": "http://fonts.gstatic.com/s/cormorantgaramond/v16/co3YmX5slCNuHLi8bLeY9MK7whWMhyjQdl9vuQWJ5heb_w.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Cormorant Garamond" - }, - { - "src": "http://fonts.gstatic.com/s/cormorantgaramond/v16/co3WmX5slCNuHLi8bLeY9MK7whWMhyjYrEOXvQ-NxBKL_y94.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Cormorant Garamond" - }, - { - "src": "http://fonts.gstatic.com/s/cormorantgaramond/v16/co3YmX5slCNuHLi8bLeY9MK7whWMhyjQEl5vuQWJ5heb_w.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Cormorant Garamond" - }, - { - "src": "http://fonts.gstatic.com/s/cormorantgaramond/v16/co3WmX5slCNuHLi8bLeY9MK7whWMhyjYrEPzvA-NxBKL_y94.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Cormorant Garamond" - } - ] - }, - { - "name": "Cormorant Infant", - "fontFamily": "Cormorant Infant, serif", - "slug": "cormorant-infant", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/cormorantinfant/v17/HhyIU44g9vKiM1sORYSiWeAsLN9951w3_DMrQqcdJrk.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Cormorant Infant" - }, - { - "src": "http://fonts.gstatic.com/s/cormorantinfant/v17/HhyKU44g9vKiM1sORYSiWeAsLN997_ItcDEhRoUYNrn_Ig.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Cormorant Infant" - }, - { - "src": "http://fonts.gstatic.com/s/cormorantinfant/v17/HhyPU44g9vKiM1sORYSiWeAsLN993_Af2DsAXq4.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Cormorant Infant" - }, - { - "src": "http://fonts.gstatic.com/s/cormorantinfant/v17/HhyJU44g9vKiM1sORYSiWeAsLN997_IV3BkFTq4EPw.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Cormorant Infant" - }, - { - "src": "http://fonts.gstatic.com/s/cormorantinfant/v17/HhyIU44g9vKiM1sORYSiWeAsLN995wQ2_DMrQqcdJrk.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Cormorant Infant" - }, - { - "src": "http://fonts.gstatic.com/s/cormorantinfant/v17/HhyKU44g9vKiM1sORYSiWeAsLN997_ItKDAhRoUYNrn_Ig.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Cormorant Infant" - }, - { - "src": "http://fonts.gstatic.com/s/cormorantinfant/v17/HhyIU44g9vKiM1sORYSiWeAsLN995ygx_DMrQqcdJrk.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Cormorant Infant" - }, - { - "src": "http://fonts.gstatic.com/s/cormorantinfant/v17/HhyKU44g9vKiM1sORYSiWeAsLN997_ItBDchRoUYNrn_Ig.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Cormorant Infant" - }, - { - "src": "http://fonts.gstatic.com/s/cormorantinfant/v17/HhyIU44g9vKiM1sORYSiWeAsLN9950ww_DMrQqcdJrk.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Cormorant Infant" - }, - { - "src": "http://fonts.gstatic.com/s/cormorantinfant/v17/HhyKU44g9vKiM1sORYSiWeAsLN997_ItYDYhRoUYNrn_Ig.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Cormorant Infant" - } - ] - }, - { - "name": "Cormorant SC", - "fontFamily": "Cormorant SC, serif", - "slug": "cormorant-sc", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/cormorantsc/v18/0ybmGD4kxqXBmOVLG30OGwsmABIU_R3y8DOWGA.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Cormorant SC" - }, - { - "src": "http://fonts.gstatic.com/s/cormorantsc/v18/0yb5GD4kxqXBmOVLG30OGwserDow9Tbu-Q.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Cormorant SC" - }, - { - "src": "http://fonts.gstatic.com/s/cormorantsc/v18/0ybmGD4kxqXBmOVLG30OGwsmWBMU_R3y8DOWGA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Cormorant SC" - }, - { - "src": "http://fonts.gstatic.com/s/cormorantsc/v18/0ybmGD4kxqXBmOVLG30OGwsmdBQU_R3y8DOWGA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Cormorant SC" - }, - { - "src": "http://fonts.gstatic.com/s/cormorantsc/v18/0ybmGD4kxqXBmOVLG30OGwsmEBUU_R3y8DOWGA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Cormorant SC" - } - ] - }, - { - "name": "Cormorant Unicase", - "fontFamily": "Cormorant Unicase, serif", - "slug": "cormorant-unicase", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/cormorantunicase/v24/HI_ViZUaILtOqhqgDeXoF_n1_fTGX9N_tucv7Gy0DRzS.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Cormorant Unicase" - }, - { - "src": "http://fonts.gstatic.com/s/cormorantunicase/v24/HI_QiZUaILtOqhqgDeXoF_n1_fTGX-vTnsMnx3C9.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Cormorant Unicase" - }, - { - "src": "http://fonts.gstatic.com/s/cormorantunicase/v24/HI_ViZUaILtOqhqgDeXoF_n1_fTGX9Mnt-cv7Gy0DRzS.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Cormorant Unicase" - }, - { - "src": "http://fonts.gstatic.com/s/cormorantunicase/v24/HI_ViZUaILtOqhqgDeXoF_n1_fTGX9MLsOcv7Gy0DRzS.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Cormorant Unicase" - }, - { - "src": "http://fonts.gstatic.com/s/cormorantunicase/v24/HI_ViZUaILtOqhqgDeXoF_n1_fTGX9Nvsecv7Gy0DRzS.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Cormorant Unicase" - } - ] - }, - { - "name": "Cormorant Upright", - "fontFamily": "Cormorant Upright, serif", - "slug": "cormorant-upright", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/cormorantupright/v18/VuJudM3I2Y35poFONtLdafkUCHw1y1N5phDsU9X6RPzQ.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Cormorant Upright" - }, - { - "src": "http://fonts.gstatic.com/s/cormorantupright/v18/VuJrdM3I2Y35poFONtLdafkUCHw1y2vVjjTkeMnz.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Cormorant Upright" - }, - { - "src": "http://fonts.gstatic.com/s/cormorantupright/v18/VuJudM3I2Y35poFONtLdafkUCHw1y1MhpxDsU9X6RPzQ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Cormorant Upright" - }, - { - "src": "http://fonts.gstatic.com/s/cormorantupright/v18/VuJudM3I2Y35poFONtLdafkUCHw1y1MNoBDsU9X6RPzQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Cormorant Upright" - }, - { - "src": "http://fonts.gstatic.com/s/cormorantupright/v18/VuJudM3I2Y35poFONtLdafkUCHw1y1NpoRDsU9X6RPzQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Cormorant Upright" - } - ] - }, - { - "name": "Courgette", - "fontFamily": "Courgette, cursive", - "slug": "courgette", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/courgette/v13/wEO_EBrAnc9BLjLQAUkFUfAL3EsHiA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Courgette" - } - ] - }, - { - "name": "Courier Prime", - "fontFamily": "Courier Prime, monospace", - "slug": "courier-prime", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/courierprime/v7/u-450q2lgwslOqpF_6gQ8kELWwZjW-_-tvg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Courier Prime" - }, - { - "src": "http://fonts.gstatic.com/s/courierprime/v7/u-4n0q2lgwslOqpF_6gQ8kELawRpX837pvjxPA.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Courier Prime" - }, - { - "src": "http://fonts.gstatic.com/s/courierprime/v7/u-4k0q2lgwslOqpF_6gQ8kELY7pMf-fVqvHoJXw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Courier Prime" - }, - { - "src": "http://fonts.gstatic.com/s/courierprime/v7/u-4i0q2lgwslOqpF_6gQ8kELawRR4-LfrtPtNXyeAg.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Courier Prime" - } - ] - }, - { - "name": "Cousine", - "fontFamily": "Cousine, monospace", - "slug": "cousine", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/cousine/v25/d6lIkaiiRdih4SpPzSMlzTbtz9k.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Cousine" - }, - { - "src": "http://fonts.gstatic.com/s/cousine/v25/d6lKkaiiRdih4SpP_SEvyRTo39l8hw.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Cousine" - }, - { - "src": "http://fonts.gstatic.com/s/cousine/v25/d6lNkaiiRdih4SpP9Z8K6T7G09BlnmQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Cousine" - }, - { - "src": "http://fonts.gstatic.com/s/cousine/v25/d6lPkaiiRdih4SpP_SEXdTvM1_JgjmRpOA.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Cousine" - } - ] - }, - { - "name": "Coustard", - "fontFamily": "Coustard, serif", - "slug": "coustard", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/coustard/v16/3XFpErgg3YsZ5fqUU9UPvWXuROTd.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Coustard" - }, - { - "src": "http://fonts.gstatic.com/s/coustard/v16/3XFuErgg3YsZ5fqUU-2LkEHmb_jU3eRL.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Coustard" - } - ] - }, - { - "name": "Covered By Your Grace", - "fontFamily": "Covered By Your Grace, cursive", - "slug": "covered-by-your-grace", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/coveredbyyourgrace/v15/QGYwz-AZahWOJJI9kykWW9mD6opopoqXSOS0FgItq6bFIg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Covered By Your Grace" - } - ] - }, - { - "name": "Crafty Girls", - "fontFamily": "Crafty Girls, cursive", - "slug": "crafty-girls", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/craftygirls/v16/va9B4kXI39VaDdlPJo8N_NvuQR37fF3Wlg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Crafty Girls" - } - ] - }, - { - "name": "Creepster", - "fontFamily": "Creepster, system-ui", - "slug": "creepster", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/creepster/v13/AlZy_zVUqJz4yMrniH4hdXf4XB0Tow.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Creepster" - } - ] - }, - { - "name": "Crete Round", - "fontFamily": "Crete Round, serif", - "slug": "crete-round", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/creteround/v14/55xoey1sJNPjPiv1ZZZrxJ1827zAKnxN.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Crete Round" - }, - { - "src": "http://fonts.gstatic.com/s/creteround/v14/55xqey1sJNPjPiv1ZZZrxK1-0bjiL2xNhKc.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Crete Round" - } - ] - }, - { - "name": "Crimson Pro", - "fontFamily": "Crimson Pro, serif", - "slug": "crimson-pro", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/crimsonpro/v23/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZTm18OJE_VNWoyQ.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Crimson Pro" - }, - { - "src": "http://fonts.gstatic.com/s/crimsonpro/v23/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZkG18OJE_VNWoyQ.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Crimson Pro" - }, - { - "src": "http://fonts.gstatic.com/s/crimsonpro/v23/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZzm18OJE_VNWoyQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Crimson Pro" - }, - { - "src": "http://fonts.gstatic.com/s/crimsonpro/v23/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZ_G18OJE_VNWoyQ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Crimson Pro" - }, - { - "src": "http://fonts.gstatic.com/s/crimsonpro/v23/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZEGp8OJE_VNWoyQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Crimson Pro" - }, - { - "src": "http://fonts.gstatic.com/s/crimsonpro/v23/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZKWp8OJE_VNWoyQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Crimson Pro" - }, - { - "src": "http://fonts.gstatic.com/s/crimsonpro/v23/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZTmp8OJE_VNWoyQ.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Crimson Pro" - }, - { - "src": "http://fonts.gstatic.com/s/crimsonpro/v23/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZZ2p8OJE_VNWoyQ.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Crimson Pro" - }, - { - "src": "http://fonts.gstatic.com/s/crimsonpro/v23/q5uSsoa5M_tv7IihmnkabAReu49Y_Bo-HVKMBi4Ue5s7dtC4yZNE.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Crimson Pro" - }, - { - "src": "http://fonts.gstatic.com/s/crimsonpro/v23/q5uSsoa5M_tv7IihmnkabAReu49Y_Bo-HVKMBi7Ke5s7dtC4yZNE.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Crimson Pro" - }, - { - "src": "http://fonts.gstatic.com/s/crimsonpro/v23/q5uSsoa5M_tv7IihmnkabAReu49Y_Bo-HVKMBi6Ue5s7dtC4yZNE.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Crimson Pro" - }, - { - "src": "http://fonts.gstatic.com/s/crimsonpro/v23/q5uSsoa5M_tv7IihmnkabAReu49Y_Bo-HVKMBi6me5s7dtC4yZNE.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Crimson Pro" - }, - { - "src": "http://fonts.gstatic.com/s/crimsonpro/v23/q5uSsoa5M_tv7IihmnkabAReu49Y_Bo-HVKMBi5KfJs7dtC4yZNE.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Crimson Pro" - }, - { - "src": "http://fonts.gstatic.com/s/crimsonpro/v23/q5uSsoa5M_tv7IihmnkabAReu49Y_Bo-HVKMBi5zfJs7dtC4yZNE.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Crimson Pro" - }, - { - "src": "http://fonts.gstatic.com/s/crimsonpro/v23/q5uSsoa5M_tv7IihmnkabAReu49Y_Bo-HVKMBi4UfJs7dtC4yZNE.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Crimson Pro" - }, - { - "src": "http://fonts.gstatic.com/s/crimsonpro/v23/q5uSsoa5M_tv7IihmnkabAReu49Y_Bo-HVKMBi49fJs7dtC4yZNE.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Crimson Pro" - } - ] - }, - { - "name": "Crimson Text", - "fontFamily": "Crimson Text, serif", - "slug": "crimson-text", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/crimsontext/v19/wlp2gwHKFkZgtmSR3NB0oRJvaAJSA_JN3Q.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Crimson Text" - }, - { - "src": "http://fonts.gstatic.com/s/crimsontext/v19/wlpogwHKFkZgtmSR3NB0oRJfaghWIfdd3ahG.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Crimson Text" - }, - { - "src": "http://fonts.gstatic.com/s/crimsontext/v19/wlppgwHKFkZgtmSR3NB0oRJXsCx2C9lR1LFffg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Crimson Text" - }, - { - "src": "http://fonts.gstatic.com/s/crimsontext/v19/wlprgwHKFkZgtmSR3NB0oRJfajCOD9NV9rRPfrKu.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Crimson Text" - }, - { - "src": "http://fonts.gstatic.com/s/crimsontext/v19/wlppgwHKFkZgtmSR3NB0oRJX1C12C9lR1LFffg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Crimson Text" - }, - { - "src": "http://fonts.gstatic.com/s/crimsontext/v19/wlprgwHKFkZgtmSR3NB0oRJfajDqDtNV9rRPfrKu.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Crimson Text" - } - ] - }, - { - "name": "Croissant One", - "fontFamily": "Croissant One, system-ui", - "slug": "croissant-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/croissantone/v21/3y9n6bU9bTPg4m8NDy3Kq24UM3pqn5cdJ-4.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Croissant One" - } - ] - }, - { - "name": "Crushed", - "fontFamily": "Crushed, system-ui", - "slug": "crushed", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/crushed/v25/U9Mc6dym6WXImTlFT1kfuIqyLzA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Crushed" - } - ] - }, - { - "name": "Cuprum", - "fontFamily": "Cuprum, sans-serif", - "slug": "cuprum", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/cuprum/v25/dg45_pLmvrkcOkBnKsOzXyGWTBcmg-X6ZjzSJjQjgnU.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Cuprum" - }, - { - "src": "http://fonts.gstatic.com/s/cuprum/v25/dg45_pLmvrkcOkBnKsOzXyGWTBcmg9f6ZjzSJjQjgnU.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Cuprum" - }, - { - "src": "http://fonts.gstatic.com/s/cuprum/v25/dg45_pLmvrkcOkBnKsOzXyGWTBcmgzv9ZjzSJjQjgnU.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Cuprum" - }, - { - "src": "http://fonts.gstatic.com/s/cuprum/v25/dg45_pLmvrkcOkBnKsOzXyGWTBcmgwL9ZjzSJjQjgnU.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Cuprum" - }, - { - "src": "http://fonts.gstatic.com/s/cuprum/v25/dg47_pLmvrkcOkBNI_FMh0j91rkhli25jn_YIhYmknUPEA.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Cuprum" - }, - { - "src": "http://fonts.gstatic.com/s/cuprum/v25/dg47_pLmvrkcOkBNI_FMh0j91rkhli25vH_YIhYmknUPEA.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Cuprum" - }, - { - "src": "http://fonts.gstatic.com/s/cuprum/v25/dg47_pLmvrkcOkBNI_FMh0j91rkhli25UHjYIhYmknUPEA.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Cuprum" - }, - { - "src": "http://fonts.gstatic.com/s/cuprum/v25/dg47_pLmvrkcOkBNI_FMh0j91rkhli25aXjYIhYmknUPEA.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Cuprum" - } - ] - }, - { - "name": "Cute Font", - "fontFamily": "Cute Font, system-ui", - "slug": "cute-font", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/cutefont/v20/Noaw6Uny2oWPbSHMrY6vmJNVNC9hkw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Cute Font" - } - ] - }, - { - "name": "Cutive", - "fontFamily": "Cutive, serif", - "slug": "cutive", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/cutive/v17/NaPZcZ_fHOhV3Ip7T_hDoyqlZQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Cutive" - } - ] - }, - { - "name": "Cutive Mono", - "fontFamily": "Cutive Mono, monospace", - "slug": "cutive-mono", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/cutivemono/v15/m8JWjfRfY7WVjVi2E-K9H5RFRG-K3Mud.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Cutive Mono" - } - ] - }, - { - "name": "DM Mono", - "fontFamily": "DM Mono, monospace", - "slug": "dm-mono", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/dmmono/v11/aFTR7PB1QTsUX8KYvrGyIYSnbKX9Rlk.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "DM Mono" - }, - { - "src": "http://fonts.gstatic.com/s/dmmono/v11/aFTT7PB1QTsUX8KYth-orYataIf4VllXuA.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "DM Mono" - }, - { - "src": "http://fonts.gstatic.com/s/dmmono/v11/aFTU7PB1QTsUX8KYhh2aBYyMcKw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "DM Mono" - }, - { - "src": "http://fonts.gstatic.com/s/dmmono/v11/aFTW7PB1QTsUX8KYth-QAa6JYKzkXw.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "DM Mono" - }, - { - "src": "http://fonts.gstatic.com/s/dmmono/v11/aFTR7PB1QTsUX8KYvumzIYSnbKX9Rlk.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "DM Mono" - }, - { - "src": "http://fonts.gstatic.com/s/dmmono/v11/aFTT7PB1QTsUX8KYth-o9YetaIf4VllXuA.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "DM Mono" - } - ] - }, - { - "name": "DM Sans", - "fontFamily": "DM Sans, sans-serif", - "slug": "dm-sans", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/dmsans/v11/rP2Hp2ywxg089UriOZSCHBeHFl0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "DM Sans" - }, - { - "src": "http://fonts.gstatic.com/s/dmsans/v11/rP2Fp2ywxg089UriCZaIGDWCBl0O8Q.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "DM Sans" - }, - { - "src": "http://fonts.gstatic.com/s/dmsans/v11/rP2Cp2ywxg089UriAWCrOB-sClQX6Cg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "DM Sans" - }, - { - "src": "http://fonts.gstatic.com/s/dmsans/v11/rP2Ap2ywxg089UriCZaw7BymDnYS-Cjk6Q.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "DM Sans" - }, - { - "src": "http://fonts.gstatic.com/s/dmsans/v11/rP2Cp2ywxg089UriASitOB-sClQX6Cg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "DM Sans" - }, - { - "src": "http://fonts.gstatic.com/s/dmsans/v11/rP2Ap2ywxg089UriCZawpBqmDnYS-Cjk6Q.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "DM Sans" - } - ] - }, - { - "name": "DM Serif Display", - "fontFamily": "DM Serif Display, serif", - "slug": "dm-serif-display", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/dmserifdisplay/v12/-nFnOHM81r4j6k0gjAW3mujVU2B2K_d709jy92k.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "DM Serif Display" - }, - { - "src": "http://fonts.gstatic.com/s/dmserifdisplay/v12/-nFhOHM81r4j6k0gjAW3mujVU2B2G_Vx1_r352np3Q.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "DM Serif Display" - } - ] - }, - { - "name": "DM Serif Text", - "fontFamily": "DM Serif Text, serif", - "slug": "dm-serif-text", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/dmseriftext/v12/rnCu-xZa_krGokauCeNq1wWyafOPXHIJErY.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "DM Serif Text" - }, - { - "src": "http://fonts.gstatic.com/s/dmseriftext/v12/rnCw-xZa_krGokauCeNq1wWyWfGFWFAMArZKqQ.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "DM Serif Text" - } - ] - }, - { - "name": "Damion", - "fontFamily": "Damion, cursive", - "slug": "damion", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/damion/v14/hv-XlzJ3KEUe_YZUbWY3MTFgVg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Damion" - } - ] - }, - { - "name": "Dancing Script", - "fontFamily": "Dancing Script, cursive", - "slug": "dancing-script", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/dancingscript/v24/If2cXTr6YS-zF4S-kcSWSVi_sxjsohD9F50Ruu7BMSoHTeB9ptDqpw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Dancing Script" - }, - { - "src": "http://fonts.gstatic.com/s/dancingscript/v24/If2cXTr6YS-zF4S-kcSWSVi_sxjsohD9F50Ruu7BAyoHTeB9ptDqpw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Dancing Script" - }, - { - "src": "http://fonts.gstatic.com/s/dancingscript/v24/If2cXTr6YS-zF4S-kcSWSVi_sxjsohD9F50Ruu7B7y0HTeB9ptDqpw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Dancing Script" - }, - { - "src": "http://fonts.gstatic.com/s/dancingscript/v24/If2cXTr6YS-zF4S-kcSWSVi_sxjsohD9F50Ruu7B1i0HTeB9ptDqpw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Dancing Script" - } - ] - }, - { - "name": "Dangrek", - "fontFamily": "Dangrek, system-ui", - "slug": "dangrek", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/dangrek/v26/LYjCdG30nEgoH8E2gCNqqVIuTN4.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Dangrek" - } - ] - }, - { - "name": "Darker Grotesque", - "fontFamily": "Darker Grotesque, sans-serif", - "slug": "darker-grotesque", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/darkergrotesque/v8/U9MK6cuh-mLQlC4BKCtayOfARkSVgb381b-W8-QDqXxpqn7y-XFyZFUB.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Darker Grotesque" - }, - { - "src": "http://fonts.gstatic.com/s/darkergrotesque/v8/U9MK6cuh-mLQlC4BKCtayOfARkSVgb381b-W8-QDqXw3qn7y-XFyZFUB.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Darker Grotesque" - }, - { - "src": "http://fonts.gstatic.com/s/darkergrotesque/v8/U9MK6cuh-mLQlC4BKCtayOfARkSVgb381b-W8-QDqXwFqn7y-XFyZFUB.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Darker Grotesque" - }, - { - "src": "http://fonts.gstatic.com/s/darkergrotesque/v8/U9MK6cuh-mLQlC4BKCtayOfARkSVgb381b-W8-QDqXzprX7y-XFyZFUB.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Darker Grotesque" - }, - { - "src": "http://fonts.gstatic.com/s/darkergrotesque/v8/U9MK6cuh-mLQlC4BKCtayOfARkSVgb381b-W8-QDqXzQrX7y-XFyZFUB.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Darker Grotesque" - }, - { - "src": "http://fonts.gstatic.com/s/darkergrotesque/v8/U9MK6cuh-mLQlC4BKCtayOfARkSVgb381b-W8-QDqXy3rX7y-XFyZFUB.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Darker Grotesque" - }, - { - "src": "http://fonts.gstatic.com/s/darkergrotesque/v8/U9MK6cuh-mLQlC4BKCtayOfARkSVgb381b-W8-QDqXyerX7y-XFyZFUB.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Darker Grotesque" - } - ] - }, - { - "name": "Darumadrop One", - "fontFamily": "Darumadrop One, system-ui", - "slug": "darumadrop-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/darumadropone/v7/cY9cfjeIW11dpCKgRLi675a87IhHBJOxZQPp.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Darumadrop One" - } - ] - }, - { - "name": "David Libre", - "fontFamily": "David Libre, serif", - "slug": "david-libre", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/davidlibre/v14/snfus0W_99N64iuYSvp4W_l86p6TYS-Y.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "David Libre" - }, - { - "src": "http://fonts.gstatic.com/s/davidlibre/v14/snfzs0W_99N64iuYSvp4W8GIw7qbSjORSo9W.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "David Libre" - }, - { - "src": "http://fonts.gstatic.com/s/davidlibre/v14/snfzs0W_99N64iuYSvp4W8HAxbqbSjORSo9W.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "David Libre" - } - ] - }, - { - "name": "Dawning of a New Day", - "fontFamily": "Dawning of a New Day, cursive", - "slug": "dawning-of-a-new-day", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/dawningofanewday/v16/t5t_IQMbOp2SEwuncwLRjMfIg1yYit_nAz8bhWJGNoBE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Dawning of a New Day" - } - ] - }, - { - "name": "Days One", - "fontFamily": "Days One, sans-serif", - "slug": "days-one", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/daysone/v14/mem9YaCnxnKRiYZOCLYVeLkWVNBt.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Days One" - } - ] - }, - { - "name": "Dekko", - "fontFamily": "Dekko, cursive", - "slug": "dekko", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/dekko/v19/46khlb_wWjfSrttFR0vsfl1B.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Dekko" - } - ] - }, - { - "name": "Dela Gothic One", - "fontFamily": "Dela Gothic One, system-ui", - "slug": "dela-gothic-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/delagothicone/v10/~ChEKD0RlbGEgR290aGljIE9uZSAAKgQIARgB.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Dela Gothic One" - } - ] - }, - { - "name": "Delicious Handrawn", - "fontFamily": "Delicious Handrawn, cursive", - "slug": "delicious-handrawn", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/delicioushandrawn/v4/wlpsgx_NAUNkpmKQifcxkQchDFo3fJ113JpDd6u3AQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Delicious Handrawn" - } - ] - }, - { - "name": "Delius", - "fontFamily": "Delius, cursive", - "slug": "delius", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/delius/v15/PN_xRfK0pW_9e1rtYcI-jT3L_w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Delius" - } - ] - }, - { - "name": "Delius Swash Caps", - "fontFamily": "Delius Swash Caps, cursive", - "slug": "delius-swash-caps", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/deliusswashcaps/v19/oY1E8fPLr7v4JWCExZpWebxVKORpXXedKmeBvEYs.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Delius Swash Caps" - } - ] - }, - { - "name": "Delius Unicase", - "fontFamily": "Delius Unicase, cursive", - "slug": "delius-unicase", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/deliusunicase/v26/845BNMEwEIOVT8BmgfSzIr_6mmLHd-73LXWs.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Delius Unicase" - }, - { - "src": "http://fonts.gstatic.com/s/deliusunicase/v26/845CNMEwEIOVT8BmgfSzIr_6mlp7WMr_BmmlS5aw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Delius Unicase" - } - ] - }, - { - "name": "Della Respira", - "fontFamily": "Della Respira, serif", - "slug": "della-respira", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/dellarespira/v18/RLp5K5v44KaueWI6iEJQBiGPRfkSu6EuTHo.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Della Respira" - } - ] - }, - { - "name": "Denk One", - "fontFamily": "Denk One, sans-serif", - "slug": "denk-one", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/denkone/v17/dg4m_pzhrqcFb2IzROtHpbglShon.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Denk One" - } - ] - }, - { - "name": "Devonshire", - "fontFamily": "Devonshire, cursive", - "slug": "devonshire", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/devonshire/v22/46kqlbDwWirWr4gtBD2BX0Vq01lYAZM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Devonshire" - } - ] - }, - { - "name": "Dhurjati", - "fontFamily": "Dhurjati, sans-serif", - "slug": "dhurjati", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/dhurjati/v20/_6_8ED3gSeatXfFiFX3ySKQtuTA2.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Dhurjati" - } - ] - }, - { - "name": "Didact Gothic", - "fontFamily": "Didact Gothic, sans-serif", - "slug": "didact-gothic", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/didactgothic/v20/ahcfv8qz1zt6hCC5G4F_P4ASpUySp0LlcyQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Didact Gothic" - } - ] - }, - { - "name": "Diplomata", - "fontFamily": "Diplomata, system-ui", - "slug": "diplomata", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/diplomata/v27/Cn-0JtiMXwhNwp-wKxyfYGxYrdM9Sg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Diplomata" - } - ] - }, - { - "name": "Diplomata SC", - "fontFamily": "Diplomata SC, system-ui", - "slug": "diplomata-sc", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/diplomatasc/v23/buExpoi3ecvs3kidKgBJo2kf-P5Oaiw4cw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Diplomata SC" - } - ] - }, - { - "name": "Do Hyeon", - "fontFamily": "Do Hyeon, sans-serif", - "slug": "do-hyeon", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/dohyeon/v16/TwMN-I8CRRU2zM86HFE3ZwaH__-C.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Do Hyeon" - } - ] - }, - { - "name": "Dokdo", - "fontFamily": "Dokdo, cursive", - "slug": "dokdo", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/dokdo/v15/esDf315XNuCBLxLo4NaMlKcH.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Dokdo" - } - ] - }, - { - "name": "Domine", - "fontFamily": "Domine, serif", - "slug": "domine", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/domine/v19/L0xhDFMnlVwD4h3Lt9JWnbX3jG-2X3LAI10VErGuW8Q.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Domine" - }, - { - "src": "http://fonts.gstatic.com/s/domine/v19/L0xhDFMnlVwD4h3Lt9JWnbX3jG-2X0DAI10VErGuW8Q.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Domine" - }, - { - "src": "http://fonts.gstatic.com/s/domine/v19/L0xhDFMnlVwD4h3Lt9JWnbX3jG-2X6zHI10VErGuW8Q.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Domine" - }, - { - "src": "http://fonts.gstatic.com/s/domine/v19/L0xhDFMnlVwD4h3Lt9JWnbX3jG-2X5XHI10VErGuW8Q.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Domine" - } - ] - }, - { - "name": "Donegal One", - "fontFamily": "Donegal One, serif", - "slug": "donegal-one", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/donegalone/v21/m8JWjfRYea-ZnFz6fsK9FZRFRG-K3Mud.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Donegal One" - } - ] - }, - { - "name": "Dongle", - "fontFamily": "Dongle, sans-serif", - "slug": "dongle", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/dongle/v9/sJoG3Ltdjt6VPkqeEcxrYjWNzXvVPA.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Dongle" - }, - { - "src": "http://fonts.gstatic.com/s/dongle/v9/sJoF3Ltdjt6VPkqmveRPah6RxA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Dongle" - }, - { - "src": "http://fonts.gstatic.com/s/dongle/v9/sJoG3Ltdjt6VPkqeActrYjWNzXvVPA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Dongle" - } - ] - }, - { - "name": "Doppio One", - "fontFamily": "Doppio One, sans-serif", - "slug": "doppio-one", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/doppioone/v13/Gg8wN5gSaBfyBw2MqCh-lgshKGpe5Fg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Doppio One" - } - ] - }, - { - "name": "Dorsa", - "fontFamily": "Dorsa, sans-serif", - "slug": "dorsa", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/dorsa/v23/yYLn0hjd0OGwqo493XCFxAnQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Dorsa" - } - ] - }, - { - "name": "Dosis", - "fontFamily": "Dosis, sans-serif", - "slug": "dosis", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/dosis/v27/HhyJU5sn9vOmLxNkIwRSjTVNWLEJt7MV3BkFTq4EPw.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Dosis" - }, - { - "src": "http://fonts.gstatic.com/s/dosis/v27/HhyJU5sn9vOmLxNkIwRSjTVNWLEJabMV3BkFTq4EPw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Dosis" - }, - { - "src": "http://fonts.gstatic.com/s/dosis/v27/HhyJU5sn9vOmLxNkIwRSjTVNWLEJN7MV3BkFTq4EPw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Dosis" - }, - { - "src": "http://fonts.gstatic.com/s/dosis/v27/HhyJU5sn9vOmLxNkIwRSjTVNWLEJBbMV3BkFTq4EPw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Dosis" - }, - { - "src": "http://fonts.gstatic.com/s/dosis/v27/HhyJU5sn9vOmLxNkIwRSjTVNWLEJ6bQV3BkFTq4EPw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Dosis" - }, - { - "src": "http://fonts.gstatic.com/s/dosis/v27/HhyJU5sn9vOmLxNkIwRSjTVNWLEJ0LQV3BkFTq4EPw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Dosis" - }, - { - "src": "http://fonts.gstatic.com/s/dosis/v27/HhyJU5sn9vOmLxNkIwRSjTVNWLEJt7QV3BkFTq4EPw.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Dosis" - } - ] - }, - { - "name": "DotGothic16", - "fontFamily": "DotGothic16, sans-serif", - "slug": "dotgothic16", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/dotgothic16/v15/v6-QGYjBJFKgyw5nSoDAGE7L435YPFrT.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "DotGothic16" - } - ] - }, - { - "name": "Dr Sugiyama", - "fontFamily": "Dr Sugiyama, cursive", - "slug": "dr-sugiyama", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/drsugiyama/v23/HTxoL2k4N3O9n5I1boGI7abRM4-t-g7y.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Dr Sugiyama" - } - ] - }, - { - "name": "Duru Sans", - "fontFamily": "Duru Sans, sans-serif", - "slug": "duru-sans", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/durusans/v20/xn7iYH8xwmSyTvEV_HOxT_fYdN-WZw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Duru Sans" - } - ] - }, - { - "name": "DynaPuff", - "fontFamily": "DynaPuff, system-ui", - "slug": "dynapuff", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/dynapuff/v4/z7N5dRvsZDIVHbYPMhZJ3HQ83UaSu4uhr7-ZFeoYkgAr1x8RSxYu6YjrSRs4wn8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "DynaPuff" - }, - { - "src": "http://fonts.gstatic.com/s/dynapuff/v4/z7N5dRvsZDIVHbYPMhZJ3HQ83UaSu4uhr7-ZFeoYkgAr1x8RSyQu6YjrSRs4wn8.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "DynaPuff" - }, - { - "src": "http://fonts.gstatic.com/s/dynapuff/v4/z7N5dRvsZDIVHbYPMhZJ3HQ83UaSu4uhr7-ZFeoYkgAr1x8RS8gp6YjrSRs4wn8.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "DynaPuff" - }, - { - "src": "http://fonts.gstatic.com/s/dynapuff/v4/z7N5dRvsZDIVHbYPMhZJ3HQ83UaSu4uhr7-ZFeoYkgAr1x8RS_Ep6YjrSRs4wn8.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "DynaPuff" - } - ] - }, - { - "name": "Dynalight", - "fontFamily": "Dynalight, system-ui", - "slug": "dynalight", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/dynalight/v18/1Ptsg8LOU_aOmQvTsF4ISotrDfGGxA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Dynalight" - } - ] - }, - { - "name": "EB Garamond", - "fontFamily": "EB Garamond, serif", - "slug": "eb-garamond", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ebgaramond/v26/SlGDmQSNjdsmc35JDF1K5E55YMjF_7DPuGi-6_RUA4V-e6yHgQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "EB Garamond" - }, - { - "src": "http://fonts.gstatic.com/s/ebgaramond/v26/SlGDmQSNjdsmc35JDF1K5E55YMjF_7DPuGi-2fRUA4V-e6yHgQ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "EB Garamond" - }, - { - "src": "http://fonts.gstatic.com/s/ebgaramond/v26/SlGDmQSNjdsmc35JDF1K5E55YMjF_7DPuGi-NfNUA4V-e6yHgQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "EB Garamond" - }, - { - "src": "http://fonts.gstatic.com/s/ebgaramond/v26/SlGDmQSNjdsmc35JDF1K5E55YMjF_7DPuGi-DPNUA4V-e6yHgQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "EB Garamond" - }, - { - "src": "http://fonts.gstatic.com/s/ebgaramond/v26/SlGDmQSNjdsmc35JDF1K5E55YMjF_7DPuGi-a_NUA4V-e6yHgQ.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "EB Garamond" - }, - { - "src": "http://fonts.gstatic.com/s/ebgaramond/v26/SlGFmQSNjdsmc35JDF1K5GRwUjcdlttVFm-rI7e8QI96WamXgXFI.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "EB Garamond" - }, - { - "src": "http://fonts.gstatic.com/s/ebgaramond/v26/SlGFmQSNjdsmc35JDF1K5GRwUjcdlttVFm-rI7eOQI96WamXgXFI.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "EB Garamond" - }, - { - "src": "http://fonts.gstatic.com/s/ebgaramond/v26/SlGFmQSNjdsmc35JDF1K5GRwUjcdlttVFm-rI7diR496WamXgXFI.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "EB Garamond" - }, - { - "src": "http://fonts.gstatic.com/s/ebgaramond/v26/SlGFmQSNjdsmc35JDF1K5GRwUjcdlttVFm-rI7dbR496WamXgXFI.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "EB Garamond" - }, - { - "src": "http://fonts.gstatic.com/s/ebgaramond/v26/SlGFmQSNjdsmc35JDF1K5GRwUjcdlttVFm-rI7c8R496WamXgXFI.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "EB Garamond" - } - ] - }, - { - "name": "Eagle Lake", - "fontFamily": "Eagle Lake, cursive", - "slug": "eagle-lake", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/eaglelake/v20/ptRMTiqbbuNJDOiKj9wG5O7yKQNute8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Eagle Lake" - } - ] - }, - { - "name": "East Sea Dokdo", - "fontFamily": "East Sea Dokdo, cursive", - "slug": "east-sea-dokdo", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/eastseadokdo/v20/xfuo0Wn2V2_KanASqXSZp22m05_aGavYS18y.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "East Sea Dokdo" - } - ] - }, - { - "name": "Eater", - "fontFamily": "Eater, system-ui", - "slug": "eater", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/eater/v21/mtG04_FCK7bOvpu2u3FwsXsR.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Eater" - } - ] - }, - { - "name": "Economica", - "fontFamily": "Economica, sans-serif", - "slug": "economica", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/economica/v13/Qw3fZQZaHCLgIWa29ZBrMcgAAl1lfQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Economica" - }, - { - "src": "http://fonts.gstatic.com/s/economica/v13/Qw3ZZQZaHCLgIWa29ZBbM8IEIFh1fWUl.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Economica" - }, - { - "src": "http://fonts.gstatic.com/s/economica/v13/Qw3aZQZaHCLgIWa29ZBTjeckCnZ5dHw8iw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Economica" - }, - { - "src": "http://fonts.gstatic.com/s/economica/v13/Qw3EZQZaHCLgIWa29ZBbM_q4D3x9Vnksi4M7.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Economica" - } - ] - }, - { - "name": "Eczar", - "fontFamily": "Eczar, serif", - "slug": "eczar", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/eczar/v22/BXR2vF3Pi-DLmxcpJB-qbNTyTMDXHd6WqTIVKWJKWg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Eczar" - }, - { - "src": "http://fonts.gstatic.com/s/eczar/v22/BXR2vF3Pi-DLmxcpJB-qbNTyTMDXL96WqTIVKWJKWg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Eczar" - }, - { - "src": "http://fonts.gstatic.com/s/eczar/v22/BXR2vF3Pi-DLmxcpJB-qbNTyTMDXw9mWqTIVKWJKWg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Eczar" - }, - { - "src": "http://fonts.gstatic.com/s/eczar/v22/BXR2vF3Pi-DLmxcpJB-qbNTyTMDX-tmWqTIVKWJKWg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Eczar" - }, - { - "src": "http://fonts.gstatic.com/s/eczar/v22/BXR2vF3Pi-DLmxcpJB-qbNTyTMDXndmWqTIVKWJKWg.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Eczar" - } - ] - }, - { - "name": "Edu NSW ACT Foundation", - "fontFamily": "Edu NSW ACT Foundation, cursive", - "slug": "edu-nsw-act-foundation", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/edunswactfoundation/v2/raxRHjqJtsNBFUi8WO0vUBgc9D-2lV_oQdCAYlt_QTQ0vUxJki9tovGLeC-sfguJ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Edu NSW ACT Foundation" - }, - { - "src": "http://fonts.gstatic.com/s/edunswactfoundation/v2/raxRHjqJtsNBFUi8WO0vUBgc9D-2lV_oQdCAYlt_QTQ0vUxJki9fovGLeC-sfguJ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Edu NSW ACT Foundation" - }, - { - "src": "http://fonts.gstatic.com/s/edunswactfoundation/v2/raxRHjqJtsNBFUi8WO0vUBgc9D-2lV_oQdCAYlt_QTQ0vUxJki-zpfGLeC-sfguJ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Edu NSW ACT Foundation" - }, - { - "src": "http://fonts.gstatic.com/s/edunswactfoundation/v2/raxRHjqJtsNBFUi8WO0vUBgc9D-2lV_oQdCAYlt_QTQ0vUxJki-KpfGLeC-sfguJ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Edu NSW ACT Foundation" - } - ] - }, - { - "name": "Edu QLD Beginner", - "fontFamily": "Edu QLD Beginner, cursive", - "slug": "edu-qld-beginner", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/eduqldbeginner/v3/AMOHz5iUuHLEMNXyohhc_Y56PR3A8dNLF_w3Ka4HKE4E3oebi6vyVWCN.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Edu QLD Beginner" - }, - { - "src": "http://fonts.gstatic.com/s/eduqldbeginner/v3/AMOHz5iUuHLEMNXyohhc_Y56PR3A8dNLF_w3Ka4HKE423oebi6vyVWCN.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Edu QLD Beginner" - }, - { - "src": "http://fonts.gstatic.com/s/eduqldbeginner/v3/AMOHz5iUuHLEMNXyohhc_Y56PR3A8dNLF_w3Ka4HKE7a2Yebi6vyVWCN.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Edu QLD Beginner" - }, - { - "src": "http://fonts.gstatic.com/s/eduqldbeginner/v3/AMOHz5iUuHLEMNXyohhc_Y56PR3A8dNLF_w3Ka4HKE7j2Yebi6vyVWCN.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Edu QLD Beginner" - } - ] - }, - { - "name": "Edu SA Beginner", - "fontFamily": "Edu SA Beginner, cursive", - "slug": "edu-sa-beginner", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/edusabeginner/v3/rnC_-xRb1x-1lHXnLaZZ2xOoLIGfU3L82irpr_3C9989fo1yBydUEDs.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Edu SA Beginner" - }, - { - "src": "http://fonts.gstatic.com/s/edusabeginner/v3/rnC_-xRb1x-1lHXnLaZZ2xOoLIGfU3L82irpr_3C9-09fo1yBydUEDs.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Edu SA Beginner" - }, - { - "src": "http://fonts.gstatic.com/s/edusabeginner/v3/rnC_-xRb1x-1lHXnLaZZ2xOoLIGfU3L82irpr_3C9wE6fo1yBydUEDs.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Edu SA Beginner" - }, - { - "src": "http://fonts.gstatic.com/s/edusabeginner/v3/rnC_-xRb1x-1lHXnLaZZ2xOoLIGfU3L82irpr_3C9zg6fo1yBydUEDs.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Edu SA Beginner" - } - ] - }, - { - "name": "Edu TAS Beginner", - "fontFamily": "Edu TAS Beginner, cursive", - "slug": "edu-tas-beginner", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/edutasbeginner/v3/ZXuwe04WubHfGVY-1TcNg7AFUmshg8jIUTzK3r34f_HwemkrBWRhvk02.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Edu TAS Beginner" - }, - { - "src": "http://fonts.gstatic.com/s/edutasbeginner/v3/ZXuwe04WubHfGVY-1TcNg7AFUmshg8jIUTzK3r34f_HCemkrBWRhvk02.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Edu TAS Beginner" - }, - { - "src": "http://fonts.gstatic.com/s/edutasbeginner/v3/ZXuwe04WubHfGVY-1TcNg7AFUmshg8jIUTzK3r34f_EufWkrBWRhvk02.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Edu TAS Beginner" - }, - { - "src": "http://fonts.gstatic.com/s/edutasbeginner/v3/ZXuwe04WubHfGVY-1TcNg7AFUmshg8jIUTzK3r34f_EXfWkrBWRhvk02.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Edu TAS Beginner" - } - ] - }, - { - "name": "Edu VIC WA NT Beginner", - "fontFamily": "Edu VIC WA NT Beginner, cursive", - "slug": "edu-vic-wa-nt-beginner", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/eduvicwantbeginner/v4/jiz2RF1BuW9OwcnNPxLl4KfZCHd9nFtd5Tu7stCpElYpvPfZZ-OXlPmFXwnpkeGR.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Edu VIC WA NT Beginner" - }, - { - "src": "http://fonts.gstatic.com/s/eduvicwantbeginner/v4/jiz2RF1BuW9OwcnNPxLl4KfZCHd9nFtd5Tu7stCpElYpvPfZZ-OllPmFXwnpkeGR.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Edu VIC WA NT Beginner" - }, - { - "src": "http://fonts.gstatic.com/s/eduvicwantbeginner/v4/jiz2RF1BuW9OwcnNPxLl4KfZCHd9nFtd5Tu7stCpElYpvPfZZ-NJk_mFXwnpkeGR.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Edu VIC WA NT Beginner" - }, - { - "src": "http://fonts.gstatic.com/s/eduvicwantbeginner/v4/jiz2RF1BuW9OwcnNPxLl4KfZCHd9nFtd5Tu7stCpElYpvPfZZ-Nwk_mFXwnpkeGR.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Edu VIC WA NT Beginner" - } - ] - }, - { - "name": "El Messiri", - "fontFamily": "El Messiri, sans-serif", - "slug": "el-messiri", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/elmessiri/v22/K2FhfZBRmr9vQ1pHEey6GIGo8_pv3myYjuXwe65ghj3OoapG.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "El Messiri" - }, - { - "src": "http://fonts.gstatic.com/s/elmessiri/v22/K2FhfZBRmr9vQ1pHEey6GIGo8_pv3myYjuXCe65ghj3OoapG.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "El Messiri" - }, - { - "src": "http://fonts.gstatic.com/s/elmessiri/v22/K2FhfZBRmr9vQ1pHEey6GIGo8_pv3myYjuUufK5ghj3OoapG.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "El Messiri" - }, - { - "src": "http://fonts.gstatic.com/s/elmessiri/v22/K2FhfZBRmr9vQ1pHEey6GIGo8_pv3myYjuUXfK5ghj3OoapG.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "El Messiri" - } - ] - }, - { - "name": "Electrolize", - "fontFamily": "Electrolize, sans-serif", - "slug": "electrolize", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/electrolize/v14/cIf5Ma1dtE0zSiGSiED7AUEGso5tQafB.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Electrolize" - } - ] - }, - { - "name": "Elsie", - "fontFamily": "Elsie, system-ui", - "slug": "elsie", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/elsie/v13/BCanqZABrez54yYu9slAeLgX.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Elsie" - }, - { - "src": "http://fonts.gstatic.com/s/elsie/v13/BCaqqZABrez54x6q2-1IU6QeXSBk.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Elsie" - } - ] - }, - { - "name": "Elsie Swash Caps", - "fontFamily": "Elsie Swash Caps, system-ui", - "slug": "elsie-swash-caps", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/elsieswashcaps/v21/845DNN8xGZyVX5MVo_upKf7KnjK0ferVKGWsUo8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Elsie Swash Caps" - }, - { - "src": "http://fonts.gstatic.com/s/elsieswashcaps/v21/845ENN8xGZyVX5MVo_upKf7KnjK0RW74DG2HToawrdU.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Elsie Swash Caps" - } - ] - }, - { - "name": "Emblema One", - "fontFamily": "Emblema One, system-ui", - "slug": "emblema-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/emblemaone/v21/nKKT-GQ0F5dSY8vzG0rOEIRBHl57G_f_.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Emblema One" - } - ] - }, - { - "name": "Emilys Candy", - "fontFamily": "Emilys Candy, system-ui", - "slug": "emilys-candy", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/emilyscandy/v14/2EbgL-1mD1Rnb0OGKudbk0y5r9xrX84JjA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Emilys Candy" - } - ] - }, - { - "name": "Encode Sans", - "fontFamily": "Encode Sans, sans-serif", - "slug": "encode-sans", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/encodesans/v19/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGGHiZtWP7FJCt2c.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Encode Sans" - }, - { - "src": "http://fonts.gstatic.com/s/encodesans/v19/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGOHjZtWP7FJCt2c.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Encode Sans" - }, - { - "src": "http://fonts.gstatic.com/s/encodesans/v19/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGD_jZtWP7FJCt2c.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Encode Sans" - }, - { - "src": "http://fonts.gstatic.com/s/encodesans/v19/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGGHjZtWP7FJCt2c.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Encode Sans" - }, - { - "src": "http://fonts.gstatic.com/s/encodesans/v19/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGFPjZtWP7FJCt2c.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Encode Sans" - }, - { - "src": "http://fonts.gstatic.com/s/encodesans/v19/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGL_kZtWP7FJCt2c.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Encode Sans" - }, - { - "src": "http://fonts.gstatic.com/s/encodesans/v19/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGIbkZtWP7FJCt2c.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Encode Sans" - }, - { - "src": "http://fonts.gstatic.com/s/encodesans/v19/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGOHkZtWP7FJCt2c.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Encode Sans" - }, - { - "src": "http://fonts.gstatic.com/s/encodesans/v19/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGMjkZtWP7FJCt2c.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Encode Sans" - } - ] - }, - { - "name": "Encode Sans Condensed", - "fontFamily": "Encode Sans Condensed, sans-serif", - "slug": "encode-sans-condensed", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/encodesanscondensed/v10/j8_76_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-5a-JLQoFI2KR.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Encode Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/encodesanscondensed/v10/j8_46_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-SY6pByQJKnuIFA.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Encode Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/encodesanscondensed/v10/j8_46_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-LY2pByQJKnuIFA.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Encode Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/encodesanscondensed/v10/j8_16_LD37rqfuwxyIuaZhE6cRXOLtm2gfTGgaWNDw8VIw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Encode Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/encodesanscondensed/v10/j8_46_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-dYypByQJKnuIFA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Encode Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/encodesanscondensed/v10/j8_46_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-WYupByQJKnuIFA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Encode Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/encodesanscondensed/v10/j8_46_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-PYqpByQJKnuIFA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Encode Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/encodesanscondensed/v10/j8_46_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-IYmpByQJKnuIFA.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Encode Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/encodesanscondensed/v10/j8_46_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-BYipByQJKnuIFA.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Encode Sans Condensed" - } - ] - }, - { - "name": "Encode Sans Expanded", - "fontFamily": "Encode Sans Expanded, sans-serif", - "slug": "encode-sans-expanded", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/encodesansexpanded/v11/c4mx1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpJGKQNicoAbJlw.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Encode Sans Expanded" - }, - { - "src": "http://fonts.gstatic.com/s/encodesansexpanded/v11/c4mw1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpLqCCNIXIwSP0XD.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Encode Sans Expanded" - }, - { - "src": "http://fonts.gstatic.com/s/encodesansexpanded/v11/c4mw1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpKOCyNIXIwSP0XD.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Encode Sans Expanded" - }, - { - "src": "http://fonts.gstatic.com/s/encodesansexpanded/v11/c4m_1mF4GcnstG_Jh1QH6ac4hNLeNyeYUqoiIwdAd5Ab.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Encode Sans Expanded" - }, - { - "src": "http://fonts.gstatic.com/s/encodesansexpanded/v11/c4mw1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpLWCiNIXIwSP0XD.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Encode Sans Expanded" - }, - { - "src": "http://fonts.gstatic.com/s/encodesansexpanded/v11/c4mw1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpL6DSNIXIwSP0XD.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Encode Sans Expanded" - }, - { - "src": "http://fonts.gstatic.com/s/encodesansexpanded/v11/c4mw1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpKeDCNIXIwSP0XD.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Encode Sans Expanded" - }, - { - "src": "http://fonts.gstatic.com/s/encodesansexpanded/v11/c4mw1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpKCDyNIXIwSP0XD.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Encode Sans Expanded" - }, - { - "src": "http://fonts.gstatic.com/s/encodesansexpanded/v11/c4mw1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpKmDiNIXIwSP0XD.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Encode Sans Expanded" - } - ] - }, - { - "name": "Encode Sans SC", - "fontFamily": "Encode Sans SC, sans-serif", - "slug": "encode-sans-sc", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/encodesanssc/v8/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HHhn8c9NOEEClIc.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Encode Sans SC" - }, - { - "src": "http://fonts.gstatic.com/s/encodesanssc/v8/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HPhm8c9NOEEClIc.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Encode Sans SC" - }, - { - "src": "http://fonts.gstatic.com/s/encodesanssc/v8/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HCZm8c9NOEEClIc.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Encode Sans SC" - }, - { - "src": "http://fonts.gstatic.com/s/encodesanssc/v8/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HHhm8c9NOEEClIc.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Encode Sans SC" - }, - { - "src": "http://fonts.gstatic.com/s/encodesanssc/v8/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HEpm8c9NOEEClIc.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Encode Sans SC" - }, - { - "src": "http://fonts.gstatic.com/s/encodesanssc/v8/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HKZh8c9NOEEClIc.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Encode Sans SC" - }, - { - "src": "http://fonts.gstatic.com/s/encodesanssc/v8/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HJ9h8c9NOEEClIc.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Encode Sans SC" - }, - { - "src": "http://fonts.gstatic.com/s/encodesanssc/v8/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HPhh8c9NOEEClIc.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Encode Sans SC" - }, - { - "src": "http://fonts.gstatic.com/s/encodesanssc/v8/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HNFh8c9NOEEClIc.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Encode Sans SC" - } - ] - }, - { - "name": "Encode Sans Semi Condensed", - "fontFamily": "Encode Sans Semi Condensed, sans-serif", - "slug": "encode-sans-semi-condensed", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/encodesanssemicondensed/v10/3qT6oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1T19MFtQ9jpVUA.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Encode Sans Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/encodesanssemicondensed/v10/3qT7oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1RZ1eFHbdTgTFmr.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Encode Sans Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/encodesanssemicondensed/v10/3qT7oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1Q91uFHbdTgTFmr.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Encode Sans Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/encodesanssemicondensed/v10/3qT4oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG2yR_sVPRsjp.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Encode Sans Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/encodesanssemicondensed/v10/3qT7oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1Rl1-FHbdTgTFmr.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Encode Sans Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/encodesanssemicondensed/v10/3qT7oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1RJ0OFHbdTgTFmr.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Encode Sans Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/encodesanssemicondensed/v10/3qT7oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1Qt0eFHbdTgTFmr.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Encode Sans Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/encodesanssemicondensed/v10/3qT7oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1Qx0uFHbdTgTFmr.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Encode Sans Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/encodesanssemicondensed/v10/3qT7oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1QV0-FHbdTgTFmr.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Encode Sans Semi Condensed" - } - ] - }, - { - "name": "Encode Sans Semi Expanded", - "fontFamily": "Encode Sans Semi Expanded, sans-serif", - "slug": "encode-sans-semi-expanded", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/encodesanssemiexpanded/v19/ke8xOhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TM-41KwrlKXeOEA.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Encode Sans Semi Expanded" - }, - { - "src": "http://fonts.gstatic.com/s/encodesanssemiexpanded/v19/ke8yOhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TM0IUCyDLJX6XCWU.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Encode Sans Semi Expanded" - }, - { - "src": "http://fonts.gstatic.com/s/encodesanssemiexpanded/v19/ke8yOhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TMyYXCyDLJX6XCWU.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Encode Sans Semi Expanded" - }, - { - "src": "http://fonts.gstatic.com/s/encodesanssemiexpanded/v19/ke83OhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TC4o_LyjgOXc.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Encode Sans Semi Expanded" - }, - { - "src": "http://fonts.gstatic.com/s/encodesanssemiexpanded/v19/ke8yOhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TM34WCyDLJX6XCWU.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Encode Sans Semi Expanded" - }, - { - "src": "http://fonts.gstatic.com/s/encodesanssemiexpanded/v19/ke8yOhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TM1IRCyDLJX6XCWU.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Encode Sans Semi Expanded" - }, - { - "src": "http://fonts.gstatic.com/s/encodesanssemiexpanded/v19/ke8yOhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TMzYQCyDLJX6XCWU.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Encode Sans Semi Expanded" - }, - { - "src": "http://fonts.gstatic.com/s/encodesanssemiexpanded/v19/ke8yOhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TMyoTCyDLJX6XCWU.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Encode Sans Semi Expanded" - }, - { - "src": "http://fonts.gstatic.com/s/encodesanssemiexpanded/v19/ke8yOhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TMw4SCyDLJX6XCWU.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Encode Sans Semi Expanded" - } - ] - }, - { - "name": "Engagement", - "fontFamily": "Engagement, cursive", - "slug": "engagement", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/engagement/v22/x3dlckLDZbqa7RUs9MFVXNossybsHQI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Engagement" - } - ] - }, - { - "name": "Englebert", - "fontFamily": "Englebert, sans-serif", - "slug": "englebert", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/englebert/v17/xn7iYH8w2XGrC8AR4HSxT_fYdN-WZw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Englebert" - } - ] - }, - { - "name": "Enriqueta", - "fontFamily": "Enriqueta, serif", - "slug": "enriqueta", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/enriqueta/v15/goksH6L7AUFrRvV44HVTS0CjkP1Yog.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Enriqueta" - }, - { - "src": "http://fonts.gstatic.com/s/enriqueta/v15/gokpH6L7AUFrRvV44HVrv2mHmNZEq6TTFw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Enriqueta" - }, - { - "src": "http://fonts.gstatic.com/s/enriqueta/v15/gokpH6L7AUFrRvV44HVrk26HmNZEq6TTFw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Enriqueta" - }, - { - "src": "http://fonts.gstatic.com/s/enriqueta/v15/gokpH6L7AUFrRvV44HVr92-HmNZEq6TTFw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Enriqueta" - } - ] - }, - { - "name": "Ephesis", - "fontFamily": "Ephesis, cursive", - "slug": "ephesis", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ephesis/v7/uU9PCBUS8IerL2VG7xPb3vyHmlI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Ephesis" - } - ] - }, - { - "name": "Epilogue", - "fontFamily": "Epilogue, sans-serif", - "slug": "epilogue", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZMFGj5hxF0EhjimngomvnCCtqb30OXMDLiDJXVigHPVA.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Epilogue" - }, - { - "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZMFGj5hxF0EhjimngomvnCCtqb30OXsDPiDJXVigHPVA.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Epilogue" - }, - { - "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZMFGj5hxF0EhjimngomvnCCtqb30OXbjPiDJXVigHPVA.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Epilogue" - }, - { - "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZMFGj5hxF0EhjimngomvnCCtqb30OXMDPiDJXVigHPVA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Epilogue" - }, - { - "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZMFGj5hxF0EhjimngomvnCCtqb30OXAjPiDJXVigHPVA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Epilogue" - }, - { - "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZMFGj5hxF0EhjimngomvnCCtqb30OX7jTiDJXVigHPVA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Epilogue" - }, - { - "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZMFGj5hxF0EhjimngomvnCCtqb30OX1zTiDJXVigHPVA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Epilogue" - }, - { - "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZMFGj5hxF0EhjimngomvnCCtqb30OXsDTiDJXVigHPVA.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Epilogue" - }, - { - "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZMFGj5hxF0EhjimngomvnCCtqb30OXmTTiDJXVigHPVA.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Epilogue" - }, - { - "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HAKTp_RqATfVHNU.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Epilogue" - }, - { - "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HCKT5_RqATfVHNU.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Epilogue" - }, - { - "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HBUT5_RqATfVHNU.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Epilogue" - }, - { - "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HAKT5_RqATfVHNU.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Epilogue" - }, - { - "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HA4T5_RqATfVHNU.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Epilogue" - }, - { - "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HDUSJ_RqATfVHNU.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Epilogue" - }, - { - "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HDtSJ_RqATfVHNU.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Epilogue" - }, - { - "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HCKSJ_RqATfVHNU.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Epilogue" - }, - { - "src": "http://fonts.gstatic.com/s/epilogue/v17/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HCjSJ_RqATfVHNU.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Epilogue" - } - ] - }, - { - "name": "Erica One", - "fontFamily": "Erica One, system-ui", - "slug": "erica-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ericaone/v23/WBLnrEXccV9VGrOKmGD1W0_MJMGxiQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Erica One" - } - ] - }, - { - "name": "Esteban", - "fontFamily": "Esteban, serif", - "slug": "esteban", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/esteban/v15/r05bGLZE-bdGdN-GdOuD5jokU8E.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Esteban" - } - ] - }, - { - "name": "Estonia", - "fontFamily": "Estonia, cursive", - "slug": "estonia", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/estonia/v9/7Au_p_4ijSecA1yHCCL8zkwMIFg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Estonia" - } - ] - }, - { - "name": "Euphoria Script", - "fontFamily": "Euphoria Script, cursive", - "slug": "euphoria-script", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/euphoriascript/v16/mFTpWb0X2bLb_cx6To2B8GpKoD5ak_ZT1D8x7Q.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Euphoria Script" - } - ] - }, - { - "name": "Ewert", - "fontFamily": "Ewert, system-ui", - "slug": "ewert", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ewert/v21/va9I4kzO2tFODYBvS-J3kbDP.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Ewert" - } - ] - }, - { - "name": "Exo", - "fontFamily": "Exo, sans-serif", - "slug": "exo", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/exo/v20/4UaZrEtFpBI4f1ZSIK9d4LjJ4lM2CwNsOl4p5Is.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Exo" - }, - { - "src": "http://fonts.gstatic.com/s/exo/v20/4UaZrEtFpBI4f1ZSIK9d4LjJ4tM3CwNsOl4p5Is.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Exo" - }, - { - "src": "http://fonts.gstatic.com/s/exo/v20/4UaZrEtFpBI4f1ZSIK9d4LjJ4g03CwNsOl4p5Is.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Exo" - }, - { - "src": "http://fonts.gstatic.com/s/exo/v20/4UaZrEtFpBI4f1ZSIK9d4LjJ4lM3CwNsOl4p5Is.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Exo" - }, - { - "src": "http://fonts.gstatic.com/s/exo/v20/4UaZrEtFpBI4f1ZSIK9d4LjJ4mE3CwNsOl4p5Is.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Exo" - }, - { - "src": "http://fonts.gstatic.com/s/exo/v20/4UaZrEtFpBI4f1ZSIK9d4LjJ4o0wCwNsOl4p5Is.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Exo" - }, - { - "src": "http://fonts.gstatic.com/s/exo/v20/4UaZrEtFpBI4f1ZSIK9d4LjJ4rQwCwNsOl4p5Is.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Exo" - }, - { - "src": "http://fonts.gstatic.com/s/exo/v20/4UaZrEtFpBI4f1ZSIK9d4LjJ4tMwCwNsOl4p5Is.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Exo" - }, - { - "src": "http://fonts.gstatic.com/s/exo/v20/4UaZrEtFpBI4f1ZSIK9d4LjJ4vowCwNsOl4p5Is.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Exo" - }, - { - "src": "http://fonts.gstatic.com/s/exo/v20/4UafrEtFpBISdmSt-MY2ehbO95t040FmPnws9Iu-uA.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Exo" - }, - { - "src": "http://fonts.gstatic.com/s/exo/v20/4UafrEtFpBISdmSt-MY2ehbO95t0Y0BmPnws9Iu-uA.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Exo" - }, - { - "src": "http://fonts.gstatic.com/s/exo/v20/4UafrEtFpBISdmSt-MY2ehbO95t0vUBmPnws9Iu-uA.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Exo" - }, - { - "src": "http://fonts.gstatic.com/s/exo/v20/4UafrEtFpBISdmSt-MY2ehbO95t040BmPnws9Iu-uA.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Exo" - }, - { - "src": "http://fonts.gstatic.com/s/exo/v20/4UafrEtFpBISdmSt-MY2ehbO95t00UBmPnws9Iu-uA.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Exo" - }, - { - "src": "http://fonts.gstatic.com/s/exo/v20/4UafrEtFpBISdmSt-MY2ehbO95t0PUdmPnws9Iu-uA.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Exo" - }, - { - "src": "http://fonts.gstatic.com/s/exo/v20/4UafrEtFpBISdmSt-MY2ehbO95t0BEdmPnws9Iu-uA.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Exo" - }, - { - "src": "http://fonts.gstatic.com/s/exo/v20/4UafrEtFpBISdmSt-MY2ehbO95t0Y0dmPnws9Iu-uA.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Exo" - }, - { - "src": "http://fonts.gstatic.com/s/exo/v20/4UafrEtFpBISdmSt-MY2ehbO95t0SkdmPnws9Iu-uA.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Exo" - } - ] - }, - { - "name": "Exo 2", - "fontFamily": "Exo 2, sans-serif", - "slug": "exo-2", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/exo2/v20/7cH1v4okm5zmbvwkAx_sfcEuiD8jvvOcPtq-rpvLpQ.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Exo 2" - }, - { - "src": "http://fonts.gstatic.com/s/exo2/v20/7cH1v4okm5zmbvwkAx_sfcEuiD8jPvKcPtq-rpvLpQ.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Exo 2" - }, - { - "src": "http://fonts.gstatic.com/s/exo2/v20/7cH1v4okm5zmbvwkAx_sfcEuiD8j4PKcPtq-rpvLpQ.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Exo 2" - }, - { - "src": "http://fonts.gstatic.com/s/exo2/v20/7cH1v4okm5zmbvwkAx_sfcEuiD8jvvKcPtq-rpvLpQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Exo 2" - }, - { - "src": "http://fonts.gstatic.com/s/exo2/v20/7cH1v4okm5zmbvwkAx_sfcEuiD8jjPKcPtq-rpvLpQ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Exo 2" - }, - { - "src": "http://fonts.gstatic.com/s/exo2/v20/7cH1v4okm5zmbvwkAx_sfcEuiD8jYPWcPtq-rpvLpQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Exo 2" - }, - { - "src": "http://fonts.gstatic.com/s/exo2/v20/7cH1v4okm5zmbvwkAx_sfcEuiD8jWfWcPtq-rpvLpQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Exo 2" - }, - { - "src": "http://fonts.gstatic.com/s/exo2/v20/7cH1v4okm5zmbvwkAx_sfcEuiD8jPvWcPtq-rpvLpQ.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Exo 2" - }, - { - "src": "http://fonts.gstatic.com/s/exo2/v20/7cH1v4okm5zmbvwkAx_sfcEuiD8jF_WcPtq-rpvLpQ.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Exo 2" - }, - { - "src": "http://fonts.gstatic.com/s/exo2/v20/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drF0fNC6jJ7bpQBL.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Exo 2" - }, - { - "src": "http://fonts.gstatic.com/s/exo2/v20/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drH0fdC6jJ7bpQBL.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Exo 2" - }, - { - "src": "http://fonts.gstatic.com/s/exo2/v20/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drEqfdC6jJ7bpQBL.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Exo 2" - }, - { - "src": "http://fonts.gstatic.com/s/exo2/v20/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drF0fdC6jJ7bpQBL.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Exo 2" - }, - { - "src": "http://fonts.gstatic.com/s/exo2/v20/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drFGfdC6jJ7bpQBL.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Exo 2" - }, - { - "src": "http://fonts.gstatic.com/s/exo2/v20/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drGqetC6jJ7bpQBL.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Exo 2" - }, - { - "src": "http://fonts.gstatic.com/s/exo2/v20/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drGTetC6jJ7bpQBL.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Exo 2" - }, - { - "src": "http://fonts.gstatic.com/s/exo2/v20/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drH0etC6jJ7bpQBL.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Exo 2" - }, - { - "src": "http://fonts.gstatic.com/s/exo2/v20/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drHdetC6jJ7bpQBL.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Exo 2" - } - ] - }, - { - "name": "Expletus Sans", - "fontFamily": "Expletus Sans, system-ui", - "slug": "expletus-sans", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/expletussans/v24/RLpqK5v5_bqufTYdnhFzDj2dX_IwS3my73zcDaSY2s1oFQTcXfMm.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Expletus Sans" - }, - { - "src": "http://fonts.gstatic.com/s/expletussans/v24/RLpqK5v5_bqufTYdnhFzDj2dX_IwS3my73zcDaSq2s1oFQTcXfMm.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Expletus Sans" - }, - { - "src": "http://fonts.gstatic.com/s/expletussans/v24/RLpqK5v5_bqufTYdnhFzDj2dX_IwS3my73zcDaRG3c1oFQTcXfMm.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Expletus Sans" - }, - { - "src": "http://fonts.gstatic.com/s/expletussans/v24/RLpqK5v5_bqufTYdnhFzDj2dX_IwS3my73zcDaR_3c1oFQTcXfMm.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Expletus Sans" - }, - { - "src": "http://fonts.gstatic.com/s/expletussans/v24/RLpoK5v5_bqufTYdnhFzDj2ddfsCtKHbhOZyCrFQmSUrHwD-WOMmKKY.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Expletus Sans" - }, - { - "src": "http://fonts.gstatic.com/s/expletussans/v24/RLpoK5v5_bqufTYdnhFzDj2ddfsCtKHbhOZyCrFQmRcrHwD-WOMmKKY.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Expletus Sans" - }, - { - "src": "http://fonts.gstatic.com/s/expletussans/v24/RLpoK5v5_bqufTYdnhFzDj2ddfsCtKHbhOZyCrFQmfssHwD-WOMmKKY.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Expletus Sans" - }, - { - "src": "http://fonts.gstatic.com/s/expletussans/v24/RLpoK5v5_bqufTYdnhFzDj2ddfsCtKHbhOZyCrFQmcIsHwD-WOMmKKY.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Expletus Sans" - } - ] - }, - { - "name": "Explora", - "fontFamily": "Explora, cursive", - "slug": "explora", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/explora/v7/tsstApxFfjUH4wrvc1qPonC3vqc.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Explora" - } - ] - }, - { - "name": "Fahkwang", - "fontFamily": "Fahkwang, sans-serif", - "slug": "fahkwang", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/fahkwang/v16/Noa26Uj3zpmBOgbNpOJHmZlRFipxkwjx.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Fahkwang" - }, - { - "src": "http://fonts.gstatic.com/s/fahkwang/v16/Noa06Uj3zpmBOgbNpOqNgHFQHC5Tlhjxdw4.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Fahkwang" - }, - { - "src": "http://fonts.gstatic.com/s/fahkwang/v16/Noa26Uj3zpmBOgbNpOIjmplRFipxkwjx.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Fahkwang" - }, - { - "src": "http://fonts.gstatic.com/s/fahkwang/v16/Noa06Uj3zpmBOgbNpOqNgBVTHC5Tlhjxdw4.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Fahkwang" - }, - { - "src": "http://fonts.gstatic.com/s/fahkwang/v16/Noax6Uj3zpmBOgbNpNqPsr1ZPTZ4.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Fahkwang" - }, - { - "src": "http://fonts.gstatic.com/s/fahkwang/v16/Noa36Uj3zpmBOgbNpOqNuLl7OCZ4ihE.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Fahkwang" - }, - { - "src": "http://fonts.gstatic.com/s/fahkwang/v16/Noa26Uj3zpmBOgbNpOJ7m5lRFipxkwjx.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Fahkwang" - }, - { - "src": "http://fonts.gstatic.com/s/fahkwang/v16/Noa06Uj3zpmBOgbNpOqNgE1SHC5Tlhjxdw4.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Fahkwang" - }, - { - "src": "http://fonts.gstatic.com/s/fahkwang/v16/Noa26Uj3zpmBOgbNpOJXnJlRFipxkwjx.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Fahkwang" - }, - { - "src": "http://fonts.gstatic.com/s/fahkwang/v16/Noa06Uj3zpmBOgbNpOqNgGFVHC5Tlhjxdw4.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Fahkwang" - }, - { - "src": "http://fonts.gstatic.com/s/fahkwang/v16/Noa26Uj3zpmBOgbNpOIznZlRFipxkwjx.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Fahkwang" - }, - { - "src": "http://fonts.gstatic.com/s/fahkwang/v16/Noa06Uj3zpmBOgbNpOqNgAVUHC5Tlhjxdw4.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Fahkwang" - } - ] - }, - { - "name": "Familjen Grotesk", - "fontFamily": "Familjen Grotesk, sans-serif", - "slug": "familjen-grotesk", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/familjengrotesk/v8/Qw3LZR9ZHiDnImG6-NEMQ41wby8WRnYsfkunR_eGfMGJaSztc1jcEYq2.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Familjen Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/familjengrotesk/v8/Qw3LZR9ZHiDnImG6-NEMQ41wby8WRnYsfkunR_eGfMG7aSztc1jcEYq2.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Familjen Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/familjengrotesk/v8/Qw3LZR9ZHiDnImG6-NEMQ41wby8WRnYsfkunR_eGfMFXbiztc1jcEYq2.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Familjen Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/familjengrotesk/v8/Qw3LZR9ZHiDnImG6-NEMQ41wby8WRnYsfkunR_eGfMFubiztc1jcEYq2.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Familjen Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/familjengrotesk/v8/Qw31ZR9ZHiDnImG6-NEMQ41wby8WbH8egZPOLG0oe9RBKsSueVz-FJq2Rv4.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Familjen Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/familjengrotesk/v8/Qw31ZR9ZHiDnImG6-NEMQ41wby8WbH8egZPOLG0oe9RBKvaueVz-FJq2Rv4.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Familjen Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/familjengrotesk/v8/Qw31ZR9ZHiDnImG6-NEMQ41wby8WbH8egZPOLG0oe9RBKhqpeVz-FJq2Rv4.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Familjen Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/familjengrotesk/v8/Qw31ZR9ZHiDnImG6-NEMQ41wby8WbH8egZPOLG0oe9RBKiOpeVz-FJq2Rv4.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Familjen Grotesk" - } - ] - }, - { - "name": "Fanwood Text", - "fontFamily": "Fanwood Text, serif", - "slug": "fanwood-text", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/fanwoodtext/v15/3XFtErwl05Ad_vSCF6Fq7xXGRdbY1P1Sbg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Fanwood Text" - }, - { - "src": "http://fonts.gstatic.com/s/fanwoodtext/v15/3XFzErwl05Ad_vSCF6Fq7xX2R9zc9vhCblye.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Fanwood Text" - } - ] - }, - { - "name": "Farro", - "fontFamily": "Farro, sans-serif", - "slug": "farro", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/farro/v14/i7dJIFl3byGNHa3hNJ6-WkJUQUq7.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Farro" - }, - { - "src": "http://fonts.gstatic.com/s/farro/v14/i7dEIFl3byGNHZVNHLq2cV5d.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Farro" - }, - { - "src": "http://fonts.gstatic.com/s/farro/v14/i7dJIFl3byGNHa25NZ6-WkJUQUq7.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Farro" - }, - { - "src": "http://fonts.gstatic.com/s/farro/v14/i7dJIFl3byGNHa3xM56-WkJUQUq7.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Farro" - } - ] - }, - { - "name": "Farsan", - "fontFamily": "Farsan, system-ui", - "slug": "farsan", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/farsan/v19/VEMwRoJ0vY_zsyz62q-pxDX9rQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Farsan" - } - ] - }, - { - "name": "Fascinate", - "fontFamily": "Fascinate, system-ui", - "slug": "fascinate", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/fascinate/v21/z7NWdRrufC8XJK0IIEli1LbQRPyNrw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Fascinate" - } - ] - }, - { - "name": "Fascinate Inline", - "fontFamily": "Fascinate Inline, system-ui", - "slug": "fascinate-inline", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/fascinateinline/v22/jVyR7mzzB3zc-jp6QCAu60poNqIy1g3CfRXxWZQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Fascinate Inline" - } - ] - }, - { - "name": "Faster One", - "fontFamily": "Faster One, system-ui", - "slug": "faster-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/fasterone/v19/H4ciBXCHmdfClFb-vWhfyLuShq63czE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Faster One" - } - ] - }, - { - "name": "Fasthand", - "fontFamily": "Fasthand, system-ui", - "slug": "fasthand", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/fasthand/v26/0yb9GDohyKTYn_ZEESkuYkw2rQg1.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Fasthand" - } - ] - }, - { - "name": "Fauna One", - "fontFamily": "Fauna One, serif", - "slug": "fauna-one", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/faunaone/v15/wlpzgwTPBVpjpCuwkuEx2UxLYClOCg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Fauna One" - } - ] - }, - { - "name": "Faustina", - "fontFamily": "Faustina, serif", - "slug": "faustina", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/faustina/v20/XLY4IZPxYpJfTbZAFXWzNT2SO8wpWHls3IEvGVWWe8tbEg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Faustina" - }, - { - "src": "http://fonts.gstatic.com/s/faustina/v20/XLY4IZPxYpJfTbZAFXWzNT2SO8wpWHlsgoEvGVWWe8tbEg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Faustina" - }, - { - "src": "http://fonts.gstatic.com/s/faustina/v20/XLY4IZPxYpJfTbZAFXWzNT2SO8wpWHlssIEvGVWWe8tbEg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Faustina" - }, - { - "src": "http://fonts.gstatic.com/s/faustina/v20/XLY4IZPxYpJfTbZAFXWzNT2SO8wpWHlsXIYvGVWWe8tbEg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Faustina" - }, - { - "src": "http://fonts.gstatic.com/s/faustina/v20/XLY4IZPxYpJfTbZAFXWzNT2SO8wpWHlsZYYvGVWWe8tbEg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Faustina" - }, - { - "src": "http://fonts.gstatic.com/s/faustina/v20/XLY4IZPxYpJfTbZAFXWzNT2SO8wpWHlsAoYvGVWWe8tbEg.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Faustina" - }, - { - "src": "http://fonts.gstatic.com/s/faustina/v20/XLY2IZPxYpJfTbZAFV-6B8JKUqez9n55SsKZWl-SWc5LEnoF.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Faustina" - }, - { - "src": "http://fonts.gstatic.com/s/faustina/v20/XLY2IZPxYpJfTbZAFV-6B8JKUqez9n55SsLHWl-SWc5LEnoF.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Faustina" - }, - { - "src": "http://fonts.gstatic.com/s/faustina/v20/XLY2IZPxYpJfTbZAFV-6B8JKUqez9n55SsL1Wl-SWc5LEnoF.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Faustina" - }, - { - "src": "http://fonts.gstatic.com/s/faustina/v20/XLY2IZPxYpJfTbZAFV-6B8JKUqez9n55SsIZXV-SWc5LEnoF.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Faustina" - }, - { - "src": "http://fonts.gstatic.com/s/faustina/v20/XLY2IZPxYpJfTbZAFV-6B8JKUqez9n55SsIgXV-SWc5LEnoF.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Faustina" - }, - { - "src": "http://fonts.gstatic.com/s/faustina/v20/XLY2IZPxYpJfTbZAFV-6B8JKUqez9n55SsJHXV-SWc5LEnoF.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Faustina" - } - ] - }, - { - "name": "Federant", - "fontFamily": "Federant, system-ui", - "slug": "federant", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/federant/v25/2sDdZGNfip_eirT0_U0jRUG0AqUc.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Federant" - } - ] - }, - { - "name": "Federo", - "fontFamily": "Federo, sans-serif", - "slug": "federo", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/federo/v19/iJWFBX-cbD_ETsbmjVOe2WTG7Q.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Federo" - } - ] - }, - { - "name": "Felipa", - "fontFamily": "Felipa, cursive", - "slug": "felipa", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/felipa/v20/FwZa7-owz1Eu4F_wSNSEwM2zpA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Felipa" - } - ] - }, - { - "name": "Fenix", - "fontFamily": "Fenix, serif", - "slug": "fenix", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/fenix/v20/XoHo2YL_S7-g5ostKzAFvs8o.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Fenix" - } - ] - }, - { - "name": "Festive", - "fontFamily": "Festive, cursive", - "slug": "festive", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/festive/v7/cY9Ffj6KX1xcoDWhFtfgy9HTkak.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Festive" - } - ] - }, - { - "name": "Figtree", - "fontFamily": "Figtree, sans-serif", - "slug": "figtree", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/figtree/v4/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_chQF5ewkEU4HTy.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Figtree" - }, - { - "src": "http://fonts.gstatic.com/s/figtree/v4/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_d_QF5ewkEU4HTy.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Figtree" - }, - { - "src": "http://fonts.gstatic.com/s/figtree/v4/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_dNQF5ewkEU4HTy.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Figtree" - }, - { - "src": "http://fonts.gstatic.com/s/figtree/v4/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_ehR15ewkEU4HTy.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Figtree" - }, - { - "src": "http://fonts.gstatic.com/s/figtree/v4/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_eYR15ewkEU4HTy.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Figtree" - }, - { - "src": "http://fonts.gstatic.com/s/figtree/v4/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_f_R15ewkEU4HTy.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Figtree" - }, - { - "src": "http://fonts.gstatic.com/s/figtree/v4/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_fWR15ewkEU4HTy.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Figtree" - }, - { - "src": "http://fonts.gstatic.com/s/figtree/v4/_Xm9-HUzqDCFdgfMm4GnA4aZFrUvtOK3A-gdyEU25WTybO8.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Figtree" - }, - { - "src": "http://fonts.gstatic.com/s/figtree/v4/_Xm9-HUzqDCFdgfMm4GnA4aZFrUvtOK3A7YdyEU25WTybO8.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Figtree" - }, - { - "src": "http://fonts.gstatic.com/s/figtree/v4/_Xm9-HUzqDCFdgfMm4GnA4aZFrUvtOK3A4QdyEU25WTybO8.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Figtree" - }, - { - "src": "http://fonts.gstatic.com/s/figtree/v4/_Xm9-HUzqDCFdgfMm4GnA4aZFrUvtOK3A2gayEU25WTybO8.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Figtree" - }, - { - "src": "http://fonts.gstatic.com/s/figtree/v4/_Xm9-HUzqDCFdgfMm4GnA4aZFrUvtOK3A1EayEU25WTybO8.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Figtree" - }, - { - "src": "http://fonts.gstatic.com/s/figtree/v4/_Xm9-HUzqDCFdgfMm4GnA4aZFrUvtOK3AzYayEU25WTybO8.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Figtree" - }, - { - "src": "http://fonts.gstatic.com/s/figtree/v4/_Xm9-HUzqDCFdgfMm4GnA4aZFrUvtOK3Ax8ayEU25WTybO8.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Figtree" - } - ] - }, - { - "name": "Finger Paint", - "fontFamily": "Finger Paint, system-ui", - "slug": "finger-paint", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/fingerpaint/v15/0QInMXVJ-o-oRn_7dron8YWO85bS8ANesw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Finger Paint" - } - ] - }, - { - "name": "Finlandica", - "fontFamily": "Finlandica, sans-serif", - "slug": "finlandica", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/finlandica/v8/-nFsOGk-8vAc7lEtg0aSyZCty9GSsPBE19A7rEjx9i5ss3a3.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Finlandica" - }, - { - "src": "http://fonts.gstatic.com/s/finlandica/v8/-nFsOGk-8vAc7lEtg0aSyZCty9GSsPBE19AJrEjx9i5ss3a3.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Finlandica" - }, - { - "src": "http://fonts.gstatic.com/s/finlandica/v8/-nFsOGk-8vAc7lEtg0aSyZCty9GSsPBE19Dlq0jx9i5ss3a3.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Finlandica" - }, - { - "src": "http://fonts.gstatic.com/s/finlandica/v8/-nFsOGk-8vAc7lEtg0aSyZCty9GSsPBE19Dcq0jx9i5ss3a3.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Finlandica" - }, - { - "src": "http://fonts.gstatic.com/s/finlandica/v8/-nFuOGk-8vAc7lEtg0aS45mfNAn722rq0MXz76Cy_CpOtma3uNQ.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Finlandica" - }, - { - "src": "http://fonts.gstatic.com/s/finlandica/v8/-nFuOGk-8vAc7lEtg0aS45mfNAn722rq0MXz75Ky_CpOtma3uNQ.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Finlandica" - }, - { - "src": "http://fonts.gstatic.com/s/finlandica/v8/-nFuOGk-8vAc7lEtg0aS45mfNAn722rq0MXz7361_CpOtma3uNQ.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Finlandica" - }, - { - "src": "http://fonts.gstatic.com/s/finlandica/v8/-nFuOGk-8vAc7lEtg0aS45mfNAn722rq0MXz70e1_CpOtma3uNQ.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Finlandica" - } - ] - }, - { - "name": "Fira Code", - "fontFamily": "Fira Code, monospace", - "slug": "fira-code", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/firacode/v21/uU9eCBsR6Z2vfE9aq3bL0fxyUs4tcw4W_GNsFVfxN87gsj0.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Fira Code" - }, - { - "src": "http://fonts.gstatic.com/s/firacode/v21/uU9eCBsR6Z2vfE9aq3bL0fxyUs4tcw4W_D1sFVfxN87gsj0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Fira Code" - }, - { - "src": "http://fonts.gstatic.com/s/firacode/v21/uU9eCBsR6Z2vfE9aq3bL0fxyUs4tcw4W_A9sFVfxN87gsj0.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Fira Code" - }, - { - "src": "http://fonts.gstatic.com/s/firacode/v21/uU9eCBsR6Z2vfE9aq3bL0fxyUs4tcw4W_ONrFVfxN87gsj0.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Fira Code" - }, - { - "src": "http://fonts.gstatic.com/s/firacode/v21/uU9eCBsR6Z2vfE9aq3bL0fxyUs4tcw4W_NprFVfxN87gsj0.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Fira Code" - } - ] - }, - { - "name": "Fira Mono", - "fontFamily": "Fira Mono, monospace", - "slug": "fira-mono", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/firamono/v14/N0bX2SlFPv1weGeLZDtQIfTTkdbJYA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Fira Mono" - }, - { - "src": "http://fonts.gstatic.com/s/firamono/v14/N0bS2SlFPv1weGeLZDto1d33mf3VaZBRBQ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Fira Mono" - }, - { - "src": "http://fonts.gstatic.com/s/firamono/v14/N0bS2SlFPv1weGeLZDtondv3mf3VaZBRBQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Fira Mono" - } - ] - }, - { - "name": "Fira Sans", - "fontFamily": "Fira Sans, sans-serif", - "slug": "fira-sans", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/firasans/v17/va9C4kDNxMZdWfMOD5Vn9IjOazP3dUTP.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Fira Sans" - }, - { - "src": "http://fonts.gstatic.com/s/firasans/v17/va9A4kDNxMZdWfMOD5VvkrCqYTfVcFTPj0s.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Fira Sans" - }, - { - "src": "http://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnWKnuQR37fF3Wlg.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Fira Sans" - }, - { - "src": "http://fonts.gstatic.com/s/firasans/v17/va9f4kDNxMZdWfMOD5VvkrAGQBf_XljGllLX.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Fira Sans" - }, - { - "src": "http://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnPKruQR37fF3Wlg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Fira Sans" - }, - { - "src": "http://fonts.gstatic.com/s/firasans/v17/va9f4kDNxMZdWfMOD5VvkrBiQxf_XljGllLX.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Fira Sans" - }, - { - "src": "http://fonts.gstatic.com/s/firasans/v17/va9E4kDNxMZdWfMOD5VfkILKSTbndQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Fira Sans" - }, - { - "src": "http://fonts.gstatic.com/s/firasans/v17/va9C4kDNxMZdWfMOD5VvkojOazP3dUTP.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Fira Sans" - }, - { - "src": "http://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnZKvuQR37fF3Wlg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Fira Sans" - }, - { - "src": "http://fonts.gstatic.com/s/firasans/v17/va9f4kDNxMZdWfMOD5VvkrA6Qhf_XljGllLX.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Fira Sans" - }, - { - "src": "http://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnSKzuQR37fF3Wlg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Fira Sans" - }, - { - "src": "http://fonts.gstatic.com/s/firasans/v17/va9f4kDNxMZdWfMOD5VvkrAWRRf_XljGllLX.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Fira Sans" - }, - { - "src": "http://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnLK3uQR37fF3Wlg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Fira Sans" - }, - { - "src": "http://fonts.gstatic.com/s/firasans/v17/va9f4kDNxMZdWfMOD5VvkrByRBf_XljGllLX.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Fira Sans" - }, - { - "src": "http://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnMK7uQR37fF3Wlg.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Fira Sans" - }, - { - "src": "http://fonts.gstatic.com/s/firasans/v17/va9f4kDNxMZdWfMOD5VvkrBuRxf_XljGllLX.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Fira Sans" - }, - { - "src": "http://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnFK_uQR37fF3Wlg.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Fira Sans" - }, - { - "src": "http://fonts.gstatic.com/s/firasans/v17/va9f4kDNxMZdWfMOD5VvkrBKRhf_XljGllLX.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Fira Sans" - } - ] - }, - { - "name": "Fira Sans Condensed", - "fontFamily": "Fira Sans Condensed, sans-serif", - "slug": "fira-sans-condensed", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOjEADFm8hSaQTFG18FErVhsC9x-tarWZXtqOlQfx9CjA.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Fira Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOtEADFm8hSaQTFG18FErVhsC9x-tarUfPVzONUXRpSjJcu.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Fira Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOsEADFm8hSaQTFG18FErVhsC9x-tarWTnMiMN-cxZblY4.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Fira Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOuEADFm8hSaQTFG18FErVhsC9x-tarUfPVYMJ0dzRehY43EA.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Fira Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOsEADFm8hSaQTFG18FErVhsC9x-tarWV3PiMN-cxZblY4.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Fira Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOuEADFm8hSaQTFG18FErVhsC9x-tarUfPVBMF0dzRehY43EA.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Fira Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOhEADFm8hSaQTFG18FErVhsC9x-tarYfHnrMtVbx8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Fira Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOjEADFm8hSaQTFG18FErVhsC9x-tarUfPtqOlQfx9CjA.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Fira Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOsEADFm8hSaQTFG18FErVhsC9x-tarWQXOiMN-cxZblY4.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Fira Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOuEADFm8hSaQTFG18FErVhsC9x-tarUfPVXMB0dzRehY43EA.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Fira Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOsEADFm8hSaQTFG18FErVhsC9x-tarWSnJiMN-cxZblY4.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Fira Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOuEADFm8hSaQTFG18FErVhsC9x-tarUfPVcMd0dzRehY43EA.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Fira Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOsEADFm8hSaQTFG18FErVhsC9x-tarWU3IiMN-cxZblY4.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Fira Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOuEADFm8hSaQTFG18FErVhsC9x-tarUfPVFMZ0dzRehY43EA.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Fira Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOsEADFm8hSaQTFG18FErVhsC9x-tarWVHLiMN-cxZblY4.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Fira Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOuEADFm8hSaQTFG18FErVhsC9x-tarUfPVCMV0dzRehY43EA.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Fira Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOsEADFm8hSaQTFG18FErVhsC9x-tarWXXKiMN-cxZblY4.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Fira Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasanscondensed/v10/wEOuEADFm8hSaQTFG18FErVhsC9x-tarUfPVLMR0dzRehY43EA.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Fira Sans Condensed" - } - ] - }, - { - "name": "Fira Sans Extra Condensed", - "fontFamily": "Fira Sans Extra Condensed, sans-serif", - "slug": "fira-sans-extra-condensed", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPMcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda3Zyuv1WarE9ncg.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Fira Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPOcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fqW21-ejkp3cn22.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Fira Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPPcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda3TCPn3-0oEZ-a2Q.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Fira Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPxcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fqWd36-pGR7e2SvJQ.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Fira Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPPcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda3VSMn3-0oEZ-a2Q.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Fira Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPxcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fqWE32-pGR7e2SvJQ.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Fira Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPKcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda5fiku3efvE8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Fira Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPMcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fquv1WarE9ncg.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Fira Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPPcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda3QyNn3-0oEZ-a2Q.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Fira Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPxcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fqWS3y-pGR7e2SvJQ.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Fira Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPPcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda3SCKn3-0oEZ-a2Q.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Fira Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPxcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fqWZ3u-pGR7e2SvJQ.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Fira Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPPcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda3USLn3-0oEZ-a2Q.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Fira Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPxcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fqWA3q-pGR7e2SvJQ.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Fira Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPPcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda3ViIn3-0oEZ-a2Q.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Fira Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPxcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fqWH3m-pGR7e2SvJQ.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Fira Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPPcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda3XyJn3-0oEZ-a2Q.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Fira Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/firasansextracondensed/v10/NaPxcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fqWO3i-pGR7e2SvJQ.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Fira Sans Extra Condensed" - } - ] - }, - { - "name": "Fjalla One", - "fontFamily": "Fjalla One, sans-serif", - "slug": "fjalla-one", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/fjallaone/v15/Yq6R-LCAWCX3-6Ky7FAFnOZwkxgtUb8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Fjalla One" - } - ] - }, - { - "name": "Fjord One", - "fontFamily": "Fjord One, serif", - "slug": "fjord-one", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/fjordone/v21/zOL-4pbEnKBY_9S1jNKr6e5As-FeiQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Fjord One" - } - ] - }, - { - "name": "Flamenco", - "fontFamily": "Flamenco, system-ui", - "slug": "flamenco", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/flamenco/v18/neIPzCehqYguo67ssZ0qNIkyepH9qGsf.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Flamenco" - }, - { - "src": "http://fonts.gstatic.com/s/flamenco/v18/neIIzCehqYguo67ssaWGHK06UY30.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Flamenco" - } - ] - }, - { - "name": "Flavors", - "fontFamily": "Flavors, system-ui", - "slug": "flavors", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/flavors/v22/FBV2dDrhxqmveJTpbkzlNqkG9UY.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Flavors" - } - ] - }, - { - "name": "Fleur De Leah", - "fontFamily": "Fleur De Leah, cursive", - "slug": "fleur-de-leah", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/fleurdeleah/v7/AYCNpXX7ftYZWLhv9UmPJTMC5vat4I_Gdq0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Fleur De Leah" - } - ] - }, - { - "name": "Flow Block", - "fontFamily": "Flow Block, system-ui", - "slug": "flow-block", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/flowblock/v7/wlp0gwfPCEB65UmTk-d6-WZlbCBXE_I.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Flow Block" - } - ] - }, - { - "name": "Flow Circular", - "fontFamily": "Flow Circular, system-ui", - "slug": "flow-circular", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/flowcircular/v7/lJwB-pc4j2F-H8YKuyvfxdZ45ifpWdr2rIg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Flow Circular" - } - ] - }, - { - "name": "Flow Rounded", - "fontFamily": "Flow Rounded, system-ui", - "slug": "flow-rounded", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/flowrounded/v7/-zki91mtwsU9qlLiGwD4oQX3oZX-Xup87g.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Flow Rounded" - } - ] - }, - { - "name": "Foldit", - "fontFamily": "Foldit, system-ui", - "slug": "foldit", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/foldit/v3/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8XpANmapUYLHkN80.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Foldit" - }, - { - "src": "http://fonts.gstatic.com/s/foldit/v3/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8XhAMmapUYLHkN80.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Foldit" - }, - { - "src": "http://fonts.gstatic.com/s/foldit/v3/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8Xs4MmapUYLHkN80.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Foldit" - }, - { - "src": "http://fonts.gstatic.com/s/foldit/v3/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8XpAMmapUYLHkN80.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Foldit" - }, - { - "src": "http://fonts.gstatic.com/s/foldit/v3/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8XqIMmapUYLHkN80.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Foldit" - }, - { - "src": "http://fonts.gstatic.com/s/foldit/v3/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8Xk4LmapUYLHkN80.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Foldit" - }, - { - "src": "http://fonts.gstatic.com/s/foldit/v3/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8XncLmapUYLHkN80.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Foldit" - }, - { - "src": "http://fonts.gstatic.com/s/foldit/v3/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8XhALmapUYLHkN80.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Foldit" - }, - { - "src": "http://fonts.gstatic.com/s/foldit/v3/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8XjkLmapUYLHkN80.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Foldit" - } - ] - }, - { - "name": "Fondamento", - "fontFamily": "Fondamento, cursive", - "slug": "fondamento", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/fondamento/v17/4UaHrEJGsxNmFTPDnkaJx63j5pN1MwI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Fondamento" - }, - { - "src": "http://fonts.gstatic.com/s/fondamento/v17/4UaFrEJGsxNmFTPDnkaJ96_p4rFwIwJePw.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Fondamento" - } - ] - }, - { - "name": "Fontdiner Swanky", - "fontFamily": "Fontdiner Swanky, system-ui", - "slug": "fontdiner-swanky", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/fontdinerswanky/v19/ijwOs4XgRNsiaI5-hcVb4hQgMvCD4uEfKiGvxts.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Fontdiner Swanky" - } - ] - }, - { - "name": "Forum", - "fontFamily": "Forum, system-ui", - "slug": "forum", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/forum/v16/6aey4Ky-Vb8Ew_IWMJMa3mnT.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Forum" - } - ] - }, - { - "name": "Fragment Mono", - "fontFamily": "Fragment Mono, monospace", - "slug": "fragment-mono", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/fragmentmono/v1/4iCr6K5wfMRRjxp0DA6-2CLnN4RNh4UI_1U.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Fragment Mono" - }, - { - "src": "http://fonts.gstatic.com/s/fragmentmono/v1/4iC16K5wfMRRjxp0DA6-2CLnB4ZHg6cN71URtQ.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Fragment Mono" - } - ] - }, - { - "name": "Francois One", - "fontFamily": "Francois One, sans-serif", - "slug": "francois-one", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/francoisone/v21/_Xmr-H4zszafZw3A-KPSZutNxgKQu_avAg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Francois One" - } - ] - }, - { - "name": "Frank Ruhl Libre", - "fontFamily": "Frank Ruhl Libre, serif", - "slug": "frank-ruhl-libre", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/frankruhllibre/v19/j8_96_fAw7jrcalD7oKYNX0QfAnPcbzNEEB7OoicBw6bYVqQPxR2EUR_.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Frank Ruhl Libre" - }, - { - "src": "http://fonts.gstatic.com/s/frankruhllibre/v19/j8_96_fAw7jrcalD7oKYNX0QfAnPcbzNEEB7OoicBw7FYVqQPxR2EUR_.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Frank Ruhl Libre" - }, - { - "src": "http://fonts.gstatic.com/s/frankruhllibre/v19/j8_96_fAw7jrcalD7oKYNX0QfAnPcbzNEEB7OoicBw73YVqQPxR2EUR_.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Frank Ruhl Libre" - }, - { - "src": "http://fonts.gstatic.com/s/frankruhllibre/v19/j8_96_fAw7jrcalD7oKYNX0QfAnPcbzNEEB7OoicBw4bZlqQPxR2EUR_.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Frank Ruhl Libre" - }, - { - "src": "http://fonts.gstatic.com/s/frankruhllibre/v19/j8_96_fAw7jrcalD7oKYNX0QfAnPcbzNEEB7OoicBw4iZlqQPxR2EUR_.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Frank Ruhl Libre" - }, - { - "src": "http://fonts.gstatic.com/s/frankruhllibre/v19/j8_96_fAw7jrcalD7oKYNX0QfAnPcbzNEEB7OoicBw5FZlqQPxR2EUR_.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Frank Ruhl Libre" - }, - { - "src": "http://fonts.gstatic.com/s/frankruhllibre/v19/j8_96_fAw7jrcalD7oKYNX0QfAnPcbzNEEB7OoicBw5sZlqQPxR2EUR_.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Frank Ruhl Libre" - } - ] - }, - { - "name": "Fraunces", - "fontFamily": "Fraunces, serif", - "slug": "fraunces", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/fraunces/v31/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIctxqjDvTShUtWNg.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Fraunces" - }, - { - "src": "http://fonts.gstatic.com/s/fraunces/v31/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIcNxujDvTShUtWNg.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Fraunces" - }, - { - "src": "http://fonts.gstatic.com/s/fraunces/v31/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIc6RujDvTShUtWNg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Fraunces" - }, - { - "src": "http://fonts.gstatic.com/s/fraunces/v31/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIctxujDvTShUtWNg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Fraunces" - }, - { - "src": "http://fonts.gstatic.com/s/fraunces/v31/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIchRujDvTShUtWNg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Fraunces" - }, - { - "src": "http://fonts.gstatic.com/s/fraunces/v31/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIcaRyjDvTShUtWNg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Fraunces" - }, - { - "src": "http://fonts.gstatic.com/s/fraunces/v31/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIcUByjDvTShUtWNg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Fraunces" - }, - { - "src": "http://fonts.gstatic.com/s/fraunces/v31/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIcNxyjDvTShUtWNg.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Fraunces" - }, - { - "src": "http://fonts.gstatic.com/s/fraunces/v31/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIcHhyjDvTShUtWNg.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Fraunces" - }, - { - "src": "http://fonts.gstatic.com/s/fraunces/v31/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1hLTP7Wp05GNi3k.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Fraunces" - }, - { - "src": "http://fonts.gstatic.com/s/fraunces/v31/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1jLTf7Wp05GNi3k.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Fraunces" - }, - { - "src": "http://fonts.gstatic.com/s/fraunces/v31/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1gVTf7Wp05GNi3k.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Fraunces" - }, - { - "src": "http://fonts.gstatic.com/s/fraunces/v31/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1hLTf7Wp05GNi3k.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Fraunces" - }, - { - "src": "http://fonts.gstatic.com/s/fraunces/v31/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1h5Tf7Wp05GNi3k.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Fraunces" - }, - { - "src": "http://fonts.gstatic.com/s/fraunces/v31/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1iVSv7Wp05GNi3k.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Fraunces" - }, - { - "src": "http://fonts.gstatic.com/s/fraunces/v31/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1isSv7Wp05GNi3k.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Fraunces" - }, - { - "src": "http://fonts.gstatic.com/s/fraunces/v31/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1jLSv7Wp05GNi3k.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Fraunces" - }, - { - "src": "http://fonts.gstatic.com/s/fraunces/v31/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1jiSv7Wp05GNi3k.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Fraunces" - } - ] - }, - { - "name": "Freckle Face", - "fontFamily": "Freckle Face, system-ui", - "slug": "freckle-face", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/freckleface/v15/AMOWz4SXrmKHCvXTohxY-YI0U1K2w9lb4g.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Freckle Face" - } - ] - }, - { - "name": "Fredericka the Great", - "fontFamily": "Fredericka the Great, system-ui", - "slug": "fredericka-the-great", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/frederickathegreat/v16/9Bt33CxNwt7aOctW2xjbCstzwVKsIBVV-9Skz7Ylch2L.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Fredericka the Great" - } - ] - }, - { - "name": "Fredoka", - "fontFamily": "Fredoka, sans-serif", - "slug": "fredoka", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/fredoka/v14/X7nP4b87HvSqjb_WIi2yDCRwoQ_k7367_B-i2yQag0-mac3OryLMFuOLlNldbw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Fredoka" - }, - { - "src": "http://fonts.gstatic.com/s/fredoka/v14/X7nP4b87HvSqjb_WIi2yDCRwoQ_k7367_B-i2yQag0-mac3O8SLMFuOLlNldbw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Fredoka" - }, - { - "src": "http://fonts.gstatic.com/s/fredoka/v14/X7nP4b87HvSqjb_WIi2yDCRwoQ_k7367_B-i2yQag0-mac3OwyLMFuOLlNldbw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Fredoka" - }, - { - "src": "http://fonts.gstatic.com/s/fredoka/v14/X7nP4b87HvSqjb_WIi2yDCRwoQ_k7367_B-i2yQag0-mac3OLyXMFuOLlNldbw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Fredoka" - }, - { - "src": "http://fonts.gstatic.com/s/fredoka/v14/X7nP4b87HvSqjb_WIi2yDCRwoQ_k7367_B-i2yQag0-mac3OFiXMFuOLlNldbw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Fredoka" - } - ] - }, - { - "name": "Freehand", - "fontFamily": "Freehand, system-ui", - "slug": "freehand", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/freehand/v27/cIf-Ma5eqk01VjKTgAmBTmUOmZJk.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Freehand" - } - ] - }, - { - "name": "Fresca", - "fontFamily": "Fresca, sans-serif", - "slug": "fresca", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/fresca/v18/6ae94K--SKgCzbM2Gr0W13DKPA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Fresca" - } - ] - }, - { - "name": "Frijole", - "fontFamily": "Frijole, system-ui", - "slug": "frijole", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/frijole/v14/uU9PCBUR8oakM2BQ7xPb3vyHmlI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Frijole" - } - ] - }, - { - "name": "Fruktur", - "fontFamily": "Fruktur, system-ui", - "slug": "fruktur", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/fruktur/v27/SZc53FHsOru5QYsMfz3GkUrS8DI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Fruktur" - }, - { - "src": "http://fonts.gstatic.com/s/fruktur/v27/SZc73FHsOru5QYsMTz_MlWjX4DJXgQ.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Fruktur" - } - ] - }, - { - "name": "Fugaz One", - "fontFamily": "Fugaz One, system-ui", - "slug": "fugaz-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/fugazone/v15/rax_HiWKp9EAITukFslMBBJek0vA8A.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Fugaz One" - } - ] - }, - { - "name": "Fuggles", - "fontFamily": "Fuggles, cursive", - "slug": "fuggles", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/fuggles/v9/k3kQo8UEJOlD1hpOTd7iL0nAMaM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Fuggles" - } - ] - }, - { - "name": "Fuzzy Bubbles", - "fontFamily": "Fuzzy Bubbles, cursive", - "slug": "fuzzy-bubbles", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/fuzzybubbles/v5/6qLGKZMbrgv9pwtjPEVNV0F2NnP5Zxsreko.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Fuzzy Bubbles" - }, - { - "src": "http://fonts.gstatic.com/s/fuzzybubbles/v5/6qLbKZMbrgv9pwtjPEVNV0F2Ds_WQxMAZkM1pn4.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Fuzzy Bubbles" - } - ] - }, - { - "name": "GFS Didot", - "fontFamily": "GFS Didot, serif", - "slug": "gfs-didot", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gfsdidot/v15/Jqzh5TybZ9vZMWFssvwiF-fGFSCGAA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "GFS Didot" - } - ] - }, - { - "name": "GFS Neohellenic", - "fontFamily": "GFS Neohellenic, sans-serif", - "slug": "gfs-neohellenic", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gfsneohellenic/v25/8QIRdiDOrfiq0b7R8O1Iw9WLcY5TLahP46UDUw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "GFS Neohellenic" - }, - { - "src": "http://fonts.gstatic.com/s/gfsneohellenic/v25/8QITdiDOrfiq0b7R8O1Iw9WLcY5jL6JLwaATU91X.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "GFS Neohellenic" - }, - { - "src": "http://fonts.gstatic.com/s/gfsneohellenic/v25/8QIUdiDOrfiq0b7R8O1Iw9WLcY5rkYdr644fWsRO9w.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "GFS Neohellenic" - }, - { - "src": "http://fonts.gstatic.com/s/gfsneohellenic/v25/8QIWdiDOrfiq0b7R8O1Iw9WLcY5jL5r37oQbeMFe985V.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "GFS Neohellenic" - } - ] - }, - { - "name": "Gabriela", - "fontFamily": "Gabriela, serif", - "slug": "gabriela", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gabriela/v17/qkBWXvsO6sreR8E-b_m-zrpHmRzC.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Gabriela" - } - ] - }, - { - "name": "Gaegu", - "fontFamily": "Gaegu, cursive", - "slug": "gaegu", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gaegu/v15/TuGSUVB6Up9NU57nifw74sdtBk0x.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Gaegu" - }, - { - "src": "http://fonts.gstatic.com/s/gaegu/v15/TuGfUVB6Up9NU6ZLodgzydtk.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Gaegu" - }, - { - "src": "http://fonts.gstatic.com/s/gaegu/v15/TuGSUVB6Up9NU573jvw74sdtBk0x.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Gaegu" - } - ] - }, - { - "name": "Gafata", - "fontFamily": "Gafata, sans-serif", - "slug": "gafata", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gafata/v16/XRXV3I6Cn0VJKon4MuyAbsrVcA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Gafata" - } - ] - }, - { - "name": "Gajraj One", - "fontFamily": "Gajraj One, system-ui", - "slug": "gajraj-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gajrajone/v3/1cX2aUDCDpXsuWVb1jIjr1GqhcitzeM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Gajraj One" - } - ] - }, - { - "name": "Galada", - "fontFamily": "Galada, system-ui", - "slug": "galada", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/galada/v14/H4cmBXyGmcjXlUX-8iw-4Lqggw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Galada" - } - ] - }, - { - "name": "Galdeano", - "fontFamily": "Galdeano, sans-serif", - "slug": "galdeano", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/galdeano/v22/uU9MCBoQ4YOqOW1boDPx8PCOg0uX.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Galdeano" - } - ] - }, - { - "name": "Galindo", - "fontFamily": "Galindo, system-ui", - "slug": "galindo", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/galindo/v20/HI_KiYMeLqVKqwyuQ5HiRp-dhpQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Galindo" - } - ] - }, - { - "name": "Gamja Flower", - "fontFamily": "Gamja Flower, cursive", - "slug": "gamja-flower", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gamjaflower/v20/6NUR8FiKJg-Pa0rM6uN40Z4kyf9Fdty2ew.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Gamja Flower" - } - ] - }, - { - "name": "Gantari", - "fontFamily": "Gantari, sans-serif", - "slug": "gantari", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gantari/v1/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g0gOz3wa5GD2qnm.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Gantari" - }, - { - "src": "http://fonts.gstatic.com/s/gantari/v1/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g2gOj3wa5GD2qnm.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Gantari" - }, - { - "src": "http://fonts.gstatic.com/s/gantari/v1/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g1-Oj3wa5GD2qnm.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Gantari" - }, - { - "src": "http://fonts.gstatic.com/s/gantari/v1/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g0gOj3wa5GD2qnm.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Gantari" - }, - { - "src": "http://fonts.gstatic.com/s/gantari/v1/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g0SOj3wa5GD2qnm.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Gantari" - }, - { - "src": "http://fonts.gstatic.com/s/gantari/v1/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g3-PT3wa5GD2qnm.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Gantari" - }, - { - "src": "http://fonts.gstatic.com/s/gantari/v1/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g3HPT3wa5GD2qnm.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Gantari" - }, - { - "src": "http://fonts.gstatic.com/s/gantari/v1/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g2gPT3wa5GD2qnm.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Gantari" - }, - { - "src": "http://fonts.gstatic.com/s/gantari/v1/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g2JPT3wa5GD2qnm.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Gantari" - }, - { - "src": "http://fonts.gstatic.com/s/gantari/v1/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoedWyYZWh37nmpWc.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Gantari" - }, - { - "src": "http://fonts.gstatic.com/s/gantari/v1/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoeVWzYZWh37nmpWc.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Gantari" - }, - { - "src": "http://fonts.gstatic.com/s/gantari/v1/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoeYuzYZWh37nmpWc.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Gantari" - }, - { - "src": "http://fonts.gstatic.com/s/gantari/v1/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoedWzYZWh37nmpWc.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Gantari" - }, - { - "src": "http://fonts.gstatic.com/s/gantari/v1/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoeeezYZWh37nmpWc.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Gantari" - }, - { - "src": "http://fonts.gstatic.com/s/gantari/v1/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoeQu0YZWh37nmpWc.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Gantari" - }, - { - "src": "http://fonts.gstatic.com/s/gantari/v1/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoeTK0YZWh37nmpWc.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Gantari" - }, - { - "src": "http://fonts.gstatic.com/s/gantari/v1/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoeVW0YZWh37nmpWc.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Gantari" - }, - { - "src": "http://fonts.gstatic.com/s/gantari/v1/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoeXy0YZWh37nmpWc.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Gantari" - } - ] - }, - { - "name": "Gayathri", - "fontFamily": "Gayathri, sans-serif", - "slug": "gayathri", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gayathri/v15/MCoWzAb429DbBilWLLhc-pvSA_gA2W8.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Gayathri" - }, - { - "src": "http://fonts.gstatic.com/s/gayathri/v15/MCoQzAb429DbBilWLIA48J_wBugA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Gayathri" - }, - { - "src": "http://fonts.gstatic.com/s/gayathri/v15/MCoXzAb429DbBilWLLiE37v4LfQJwHbn.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Gayathri" - } - ] - }, - { - "name": "Gelasio", - "fontFamily": "Gelasio, serif", - "slug": "gelasio", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gelasio/v10/cIf9MaFfvUQxTTqSxCmrYGkHgIs.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Gelasio" - }, - { - "src": "http://fonts.gstatic.com/s/gelasio/v10/cIf_MaFfvUQxTTqS9CuhZEsCkIt9QQ.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Gelasio" - }, - { - "src": "http://fonts.gstatic.com/s/gelasio/v10/cIf4MaFfvUQxTTqS_N2CRGEsnIJkWL4.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Gelasio" - }, - { - "src": "http://fonts.gstatic.com/s/gelasio/v10/cIf6MaFfvUQxTTqS9CuZkGImmKBhSL7Y1Q.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Gelasio" - }, - { - "src": "http://fonts.gstatic.com/s/gelasio/v10/cIf4MaFfvUQxTTqS_PGFRGEsnIJkWL4.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Gelasio" - }, - { - "src": "http://fonts.gstatic.com/s/gelasio/v10/cIf6MaFfvUQxTTqS9CuZvGUmmKBhSL7Y1Q.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Gelasio" - }, - { - "src": "http://fonts.gstatic.com/s/gelasio/v10/cIf4MaFfvUQxTTqS_JWERGEsnIJkWL4.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Gelasio" - }, - { - "src": "http://fonts.gstatic.com/s/gelasio/v10/cIf6MaFfvUQxTTqS9CuZ2GQmmKBhSL7Y1Q.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Gelasio" - } - ] - }, - { - "name": "Gemunu Libre", - "fontFamily": "Gemunu Libre, sans-serif", - "slug": "gemunu-libre", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gemunulibre/v12/X7n34bQ6Cfy7jKGXVE_YlqnbEQAFP-PIuTCp05iJPvSLeMXPIWA.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Gemunu Libre" - }, - { - "src": "http://fonts.gstatic.com/s/gemunulibre/v12/X7n34bQ6Cfy7jKGXVE_YlqnbEQAFP-PIuTCp00aJPvSLeMXPIWA.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Gemunu Libre" - }, - { - "src": "http://fonts.gstatic.com/s/gemunulibre/v12/X7n34bQ6Cfy7jKGXVE_YlqnbEQAFP-PIuTCp0xiJPvSLeMXPIWA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Gemunu Libre" - }, - { - "src": "http://fonts.gstatic.com/s/gemunulibre/v12/X7n34bQ6Cfy7jKGXVE_YlqnbEQAFP-PIuTCp0yqJPvSLeMXPIWA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Gemunu Libre" - }, - { - "src": "http://fonts.gstatic.com/s/gemunulibre/v12/X7n34bQ6Cfy7jKGXVE_YlqnbEQAFP-PIuTCp08aOPvSLeMXPIWA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Gemunu Libre" - }, - { - "src": "http://fonts.gstatic.com/s/gemunulibre/v12/X7n34bQ6Cfy7jKGXVE_YlqnbEQAFP-PIuTCp0_-OPvSLeMXPIWA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Gemunu Libre" - }, - { - "src": "http://fonts.gstatic.com/s/gemunulibre/v12/X7n34bQ6Cfy7jKGXVE_YlqnbEQAFP-PIuTCp05iOPvSLeMXPIWA.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Gemunu Libre" - } - ] - }, - { - "name": "Genos", - "fontFamily": "Genos, sans-serif", - "slug": "genos", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/genos/v10/SlGNmQqPqpUOYTYjacb0Hc91fTwVqknorUK6K7ZsAg.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Genos" - }, - { - "src": "http://fonts.gstatic.com/s/genos/v10/SlGNmQqPqpUOYTYjacb0Hc91fTwVKkjorUK6K7ZsAg.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Genos" - }, - { - "src": "http://fonts.gstatic.com/s/genos/v10/SlGNmQqPqpUOYTYjacb0Hc91fTwV9EjorUK6K7ZsAg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Genos" - }, - { - "src": "http://fonts.gstatic.com/s/genos/v10/SlGNmQqPqpUOYTYjacb0Hc91fTwVqkjorUK6K7ZsAg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Genos" - }, - { - "src": "http://fonts.gstatic.com/s/genos/v10/SlGNmQqPqpUOYTYjacb0Hc91fTwVmEjorUK6K7ZsAg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Genos" - }, - { - "src": "http://fonts.gstatic.com/s/genos/v10/SlGNmQqPqpUOYTYjacb0Hc91fTwVdE_orUK6K7ZsAg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Genos" - }, - { - "src": "http://fonts.gstatic.com/s/genos/v10/SlGNmQqPqpUOYTYjacb0Hc91fTwVTU_orUK6K7ZsAg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Genos" - }, - { - "src": "http://fonts.gstatic.com/s/genos/v10/SlGNmQqPqpUOYTYjacb0Hc91fTwVKk_orUK6K7ZsAg.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Genos" - }, - { - "src": "http://fonts.gstatic.com/s/genos/v10/SlGNmQqPqpUOYTYjacb0Hc91fTwVA0_orUK6K7ZsAg.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Genos" - }, - { - "src": "http://fonts.gstatic.com/s/genos/v10/SlGPmQqPqpUOYRwqWzksdKTv0zsAYgsA70i-CbN8Ard7.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Genos" - }, - { - "src": "http://fonts.gstatic.com/s/genos/v10/SlGPmQqPqpUOYRwqWzksdKTv0zsAYguA7ki-CbN8Ard7.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Genos" - }, - { - "src": "http://fonts.gstatic.com/s/genos/v10/SlGPmQqPqpUOYRwqWzksdKTv0zsAYgte7ki-CbN8Ard7.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Genos" - }, - { - "src": "http://fonts.gstatic.com/s/genos/v10/SlGPmQqPqpUOYRwqWzksdKTv0zsAYgsA7ki-CbN8Ard7.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Genos" - }, - { - "src": "http://fonts.gstatic.com/s/genos/v10/SlGPmQqPqpUOYRwqWzksdKTv0zsAYgsy7ki-CbN8Ard7.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Genos" - }, - { - "src": "http://fonts.gstatic.com/s/genos/v10/SlGPmQqPqpUOYRwqWzksdKTv0zsAYgve6Ui-CbN8Ard7.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Genos" - }, - { - "src": "http://fonts.gstatic.com/s/genos/v10/SlGPmQqPqpUOYRwqWzksdKTv0zsAYgvn6Ui-CbN8Ard7.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Genos" - }, - { - "src": "http://fonts.gstatic.com/s/genos/v10/SlGPmQqPqpUOYRwqWzksdKTv0zsAYguA6Ui-CbN8Ard7.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Genos" - }, - { - "src": "http://fonts.gstatic.com/s/genos/v10/SlGPmQqPqpUOYRwqWzksdKTv0zsAYgup6Ui-CbN8Ard7.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Genos" - } - ] - }, - { - "name": "Gentium Book Plus", - "fontFamily": "Gentium Book Plus, serif", - "slug": "gentium-book-plus", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gentiumbookplus/v1/vEFL2-RHBgUK5fbjKxRpbBtJPyRpofKfdbLOrdPV.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Gentium Book Plus" - }, - { - "src": "http://fonts.gstatic.com/s/gentiumbookplus/v1/vEFN2-RHBgUK5fbjKxRpbBtJPyRpocKdf7bsqMPVZb4.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Gentium Book Plus" - }, - { - "src": "http://fonts.gstatic.com/s/gentiumbookplus/v1/vEFO2-RHBgUK5fbjKxRpbBtJPyRpocojWpbGhs_cfKe1.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Gentium Book Plus" - }, - { - "src": "http://fonts.gstatic.com/s/gentiumbookplus/v1/vEFA2-RHBgUK5fbjKxRpbBtJPyRpocKdRwrDjMv-ebe1Els.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Gentium Book Plus" - } - ] - }, - { - "name": "Gentium Plus", - "fontFamily": "Gentium Plus, serif", - "slug": "gentium-plus", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gentiumplus/v2/Iurd6Ytw-oSPaZ00r2bNe8VpjJtM6G0t9w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Gentium Plus" - }, - { - "src": "http://fonts.gstatic.com/s/gentiumplus/v2/IurD6Ytw-oSPaZ00r2bNe8VZjpFIymg9957e.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Gentium Plus" - }, - { - "src": "http://fonts.gstatic.com/s/gentiumplus/v2/IurC6Ytw-oSPaZ00r2bNe8VRMLRo4EYx_ofHsw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Gentium Plus" - }, - { - "src": "http://fonts.gstatic.com/s/gentiumplus/v2/IurA6Ytw-oSPaZ00r2bNe8VZjqn05Uw13ILXs-h6.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Gentium Plus" - } - ] - }, - { - "name": "Geo", - "fontFamily": "Geo, sans-serif", - "slug": "geo", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/geo/v19/CSRz4zRZlufVL3BmQjlCbQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Geo" - }, - { - "src": "http://fonts.gstatic.com/s/geo/v19/CSRx4zRZluflLXpiYDxSbf8r.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Geo" - } - ] - }, - { - "name": "Geologica", - "fontFamily": "Geologica, sans-serif", - "slug": "geologica", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/geologica/v1/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqDx_qQ-MYAXWnqFs.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Geologica" - }, - { - "src": "http://fonts.gstatic.com/s/geologica/v1/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqD5_rQ-MYAXWnqFs.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Geologica" - }, - { - "src": "http://fonts.gstatic.com/s/geologica/v1/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqD0HrQ-MYAXWnqFs.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Geologica" - }, - { - "src": "http://fonts.gstatic.com/s/geologica/v1/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqDx_rQ-MYAXWnqFs.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Geologica" - }, - { - "src": "http://fonts.gstatic.com/s/geologica/v1/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqDy3rQ-MYAXWnqFs.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Geologica" - }, - { - "src": "http://fonts.gstatic.com/s/geologica/v1/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqD8HsQ-MYAXWnqFs.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Geologica" - }, - { - "src": "http://fonts.gstatic.com/s/geologica/v1/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqD_jsQ-MYAXWnqFs.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Geologica" - }, - { - "src": "http://fonts.gstatic.com/s/geologica/v1/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqD5_sQ-MYAXWnqFs.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Geologica" - }, - { - "src": "http://fonts.gstatic.com/s/geologica/v1/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqD7bsQ-MYAXWnqFs.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Geologica" - } - ] - }, - { - "name": "Georama", - "fontFamily": "Georama, sans-serif", - "slug": "georama", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/georama/v8/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5GvktmQsL5_tgbg.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Georama" - }, - { - "src": "http://fonts.gstatic.com/s/georama/v8/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5mvgtmQsL5_tgbg.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Georama" - }, - { - "src": "http://fonts.gstatic.com/s/georama/v8/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5RPgtmQsL5_tgbg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Georama" - }, - { - "src": "http://fonts.gstatic.com/s/georama/v8/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5GvgtmQsL5_tgbg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Georama" - }, - { - "src": "http://fonts.gstatic.com/s/georama/v8/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5KPgtmQsL5_tgbg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Georama" - }, - { - "src": "http://fonts.gstatic.com/s/georama/v8/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5xP8tmQsL5_tgbg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Georama" - }, - { - "src": "http://fonts.gstatic.com/s/georama/v8/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5_f8tmQsL5_tgbg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Georama" - }, - { - "src": "http://fonts.gstatic.com/s/georama/v8/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5mv8tmQsL5_tgbg.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Georama" - }, - { - "src": "http://fonts.gstatic.com/s/georama/v8/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5s_8tmQsL5_tgbg.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Georama" - }, - { - "src": "http://fonts.gstatic.com/s/georama/v8/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rvF2wEPxf5wbh3T.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Georama" - }, - { - "src": "http://fonts.gstatic.com/s/georama/v8/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rtF2gEPxf5wbh3T.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Georama" - }, - { - "src": "http://fonts.gstatic.com/s/georama/v8/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rub2gEPxf5wbh3T.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Georama" - }, - { - "src": "http://fonts.gstatic.com/s/georama/v8/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rvF2gEPxf5wbh3T.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Georama" - }, - { - "src": "http://fonts.gstatic.com/s/georama/v8/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rv32gEPxf5wbh3T.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Georama" - }, - { - "src": "http://fonts.gstatic.com/s/georama/v8/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rsb3QEPxf5wbh3T.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Georama" - }, - { - "src": "http://fonts.gstatic.com/s/georama/v8/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rsi3QEPxf5wbh3T.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Georama" - }, - { - "src": "http://fonts.gstatic.com/s/georama/v8/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rtF3QEPxf5wbh3T.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Georama" - }, - { - "src": "http://fonts.gstatic.com/s/georama/v8/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rts3QEPxf5wbh3T.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Georama" - } - ] - }, - { - "name": "Geostar", - "fontFamily": "Geostar, system-ui", - "slug": "geostar", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/geostar/v22/sykz-yx4n701VLOftSq9-trEvlQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Geostar" - } - ] - }, - { - "name": "Geostar Fill", - "fontFamily": "Geostar Fill, system-ui", - "slug": "geostar-fill", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/geostarfill/v22/AMOWz4SWuWiXFfjEohxQ9os0U1K2w9lb4g.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Geostar Fill" - } - ] - }, - { - "name": "Germania One", - "fontFamily": "Germania One, system-ui", - "slug": "germania-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/germaniaone/v20/Fh4yPjrqIyv2ucM2qzBjeS3ezAJONau6ew.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Germania One" - } - ] - }, - { - "name": "Gideon Roman", - "fontFamily": "Gideon Roman, system-ui", - "slug": "gideon-roman", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gideonroman/v8/e3tmeuGrVOys8sxzZgWlmXoge0PWovdU4w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Gideon Roman" - } - ] - }, - { - "name": "Gidugu", - "fontFamily": "Gidugu, sans-serif", - "slug": "gidugu", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gidugu/v21/L0x8DFMkk1Uf6w3RvPCmRSlUig.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Gidugu" - } - ] - }, - { - "name": "Gilda Display", - "fontFamily": "Gilda Display, serif", - "slug": "gilda-display", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gildadisplay/v14/t5tmIRoYMoaYG0WEOh7HwMeR7TnFrpOHYh4.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Gilda Display" - } - ] - }, - { - "name": "Girassol", - "fontFamily": "Girassol, system-ui", - "slug": "girassol", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/girassol/v17/JTUUjIo_-DK48laaNC9Nz2pJzxbi.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Girassol" - } - ] - }, - { - "name": "Give You Glory", - "fontFamily": "Give You Glory, cursive", - "slug": "give-you-glory", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/giveyouglory/v15/8QIQdiHOgt3vv4LR7ahjw9-XYc1zB4ZD6rwa.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Give You Glory" - } - ] - }, - { - "name": "Glass Antiqua", - "fontFamily": "Glass Antiqua, system-ui", - "slug": "glass-antiqua", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/glassantiqua/v20/xfu30Wr0Wn3NOQM2piC0uXOjnL_wN6fRUkY.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Glass Antiqua" - } - ] - }, - { - "name": "Glegoo", - "fontFamily": "Glegoo, serif", - "slug": "glegoo", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/glegoo/v14/_Xmt-HQyrTKWaw2Ji6mZAI91xw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Glegoo" - }, - { - "src": "http://fonts.gstatic.com/s/glegoo/v14/_Xmu-HQyrTKWaw2xN4a9CKRpzimMsg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Glegoo" - } - ] - }, - { - "name": "Gloock", - "fontFamily": "Gloock, serif", - "slug": "gloock", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gloock/v2/Iurb6YFw84WUY4N5jxylBrdRjQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Gloock" - } - ] - }, - { - "name": "Gloria Hallelujah", - "fontFamily": "Gloria Hallelujah, cursive", - "slug": "gloria-hallelujah", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gloriahallelujah/v17/LYjYdHv3kUk9BMV96EIswT9DIbW-MLSy3TKEvkCF.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Gloria Hallelujah" - } - ] - }, - { - "name": "Glory", - "fontFamily": "Glory, sans-serif", - "slug": "glory", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/glory/v13/q5uasoi9Lf1w5t3Est24nq9blIRQwIiDpn-dDi9EOQ.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Glory" - }, - { - "src": "http://fonts.gstatic.com/s/glory/v13/q5uasoi9Lf1w5t3Est24nq9blIRQQImDpn-dDi9EOQ.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Glory" - }, - { - "src": "http://fonts.gstatic.com/s/glory/v13/q5uasoi9Lf1w5t3Est24nq9blIRQnomDpn-dDi9EOQ.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Glory" - }, - { - "src": "http://fonts.gstatic.com/s/glory/v13/q5uasoi9Lf1w5t3Est24nq9blIRQwImDpn-dDi9EOQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Glory" - }, - { - "src": "http://fonts.gstatic.com/s/glory/v13/q5uasoi9Lf1w5t3Est24nq9blIRQ8omDpn-dDi9EOQ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Glory" - }, - { - "src": "http://fonts.gstatic.com/s/glory/v13/q5uasoi9Lf1w5t3Est24nq9blIRQHo6Dpn-dDi9EOQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Glory" - }, - { - "src": "http://fonts.gstatic.com/s/glory/v13/q5uasoi9Lf1w5t3Est24nq9blIRQJ46Dpn-dDi9EOQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Glory" - }, - { - "src": "http://fonts.gstatic.com/s/glory/v13/q5uasoi9Lf1w5t3Est24nq9blIRQQI6Dpn-dDi9EOQ.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Glory" - }, - { - "src": "http://fonts.gstatic.com/s/glory/v13/q5uYsoi9Lf1w5vfNgCJg98TBOoNFCMpr5HWZLCpUOaM6.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Glory" - }, - { - "src": "http://fonts.gstatic.com/s/glory/v13/q5uYsoi9Lf1w5vfNgCJg98TBOoNFCMrr5XWZLCpUOaM6.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Glory" - }, - { - "src": "http://fonts.gstatic.com/s/glory/v13/q5uYsoi9Lf1w5vfNgCJg98TBOoNFCMo15XWZLCpUOaM6.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Glory" - }, - { - "src": "http://fonts.gstatic.com/s/glory/v13/q5uYsoi9Lf1w5vfNgCJg98TBOoNFCMpr5XWZLCpUOaM6.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Glory" - }, - { - "src": "http://fonts.gstatic.com/s/glory/v13/q5uYsoi9Lf1w5vfNgCJg98TBOoNFCMpZ5XWZLCpUOaM6.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Glory" - }, - { - "src": "http://fonts.gstatic.com/s/glory/v13/q5uYsoi9Lf1w5vfNgCJg98TBOoNFCMq14nWZLCpUOaM6.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Glory" - }, - { - "src": "http://fonts.gstatic.com/s/glory/v13/q5uYsoi9Lf1w5vfNgCJg98TBOoNFCMqM4nWZLCpUOaM6.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Glory" - }, - { - "src": "http://fonts.gstatic.com/s/glory/v13/q5uYsoi9Lf1w5vfNgCJg98TBOoNFCMrr4nWZLCpUOaM6.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Glory" - } - ] - }, - { - "name": "Gluten", - "fontFamily": "Gluten, system-ui", - "slug": "gluten", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gluten/v10/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8Vb7B1Luni7ciJh.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Gluten" - }, - { - "src": "http://fonts.gstatic.com/s/gluten/v10/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8Xb7R1Luni7ciJh.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Gluten" - }, - { - "src": "http://fonts.gstatic.com/s/gluten/v10/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8UF7R1Luni7ciJh.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Gluten" - }, - { - "src": "http://fonts.gstatic.com/s/gluten/v10/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8Vb7R1Luni7ciJh.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Gluten" - }, - { - "src": "http://fonts.gstatic.com/s/gluten/v10/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8Vp7R1Luni7ciJh.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Gluten" - }, - { - "src": "http://fonts.gstatic.com/s/gluten/v10/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8WF6h1Luni7ciJh.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Gluten" - }, - { - "src": "http://fonts.gstatic.com/s/gluten/v10/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8W86h1Luni7ciJh.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Gluten" - }, - { - "src": "http://fonts.gstatic.com/s/gluten/v10/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8Xb6h1Luni7ciJh.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Gluten" - }, - { - "src": "http://fonts.gstatic.com/s/gluten/v10/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8Xy6h1Luni7ciJh.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Gluten" - } - ] - }, - { - "name": "Goblin One", - "fontFamily": "Goblin One, system-ui", - "slug": "goblin-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/goblinone/v22/CSR64z1ZnOqZRjRCBVY_TOcATNt_pOU.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Goblin One" - } - ] - }, - { - "name": "Gochi Hand", - "fontFamily": "Gochi Hand, cursive", - "slug": "gochi-hand", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gochihand/v19/hES06XlsOjtJsgCkx1PkTo71-n0nXWA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Gochi Hand" - } - ] - }, - { - "name": "Goldman", - "fontFamily": "Goldman, system-ui", - "slug": "goldman", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/goldman/v16/pe0uMIWbN4JFplR2LDJ4Bt-7G98.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Goldman" - }, - { - "src": "http://fonts.gstatic.com/s/goldman/v16/pe0rMIWbN4JFplR2FI5XIteQB9Zra1U.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Goldman" - } - ] - }, - { - "name": "Golos Text", - "fontFamily": "Golos Text, sans-serif", - "slug": "golos-text", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/golostext/v4/q5uXsoe9Lv5t7Meb31EcOR9UdVTNs822plVRRQ5cEr8zXcyx.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Golos Text" - }, - { - "src": "http://fonts.gstatic.com/s/golostext/v4/q5uXsoe9Lv5t7Meb31EcOR9UdVTNs822plVjRQ5cEr8zXcyx.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Golos Text" - }, - { - "src": "http://fonts.gstatic.com/s/golostext/v4/q5uXsoe9Lv5t7Meb31EcOR9UdVTNs822plWPQg5cEr8zXcyx.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Golos Text" - }, - { - "src": "http://fonts.gstatic.com/s/golostext/v4/q5uXsoe9Lv5t7Meb31EcOR9UdVTNs822plW2Qg5cEr8zXcyx.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Golos Text" - }, - { - "src": "http://fonts.gstatic.com/s/golostext/v4/q5uXsoe9Lv5t7Meb31EcOR9UdVTNs822plXRQg5cEr8zXcyx.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Golos Text" - }, - { - "src": "http://fonts.gstatic.com/s/golostext/v4/q5uXsoe9Lv5t7Meb31EcOR9UdVTNs822plX4Qg5cEr8zXcyx.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Golos Text" - } - ] - }, - { - "name": "Gorditas", - "fontFamily": "Gorditas, system-ui", - "slug": "gorditas", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gorditas/v20/ll8_K2aTVD26DsPEtQDoDa4AlxYb.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Gorditas" - }, - { - "src": "http://fonts.gstatic.com/s/gorditas/v20/ll84K2aTVD26DsPEtThUIooIvAoShA1i.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Gorditas" - } - ] - }, - { - "name": "Gothic A1", - "fontFamily": "Gothic A1, sans-serif", - "slug": "gothic-a1", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gothica1/v13/CSR74z5ZnPydRjlCCwlCCMcqYtd2vfwk.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Gothic A1" - }, - { - "src": "http://fonts.gstatic.com/s/gothica1/v13/CSR44z5ZnPydRjlCCwlCpOYKSPl6tOU9Eg.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Gothic A1" - }, - { - "src": "http://fonts.gstatic.com/s/gothica1/v13/CSR44z5ZnPydRjlCCwlCwOUKSPl6tOU9Eg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Gothic A1" - }, - { - "src": "http://fonts.gstatic.com/s/gothica1/v13/CSR94z5ZnPydRjlCCwl6bM0uQNJmvQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Gothic A1" - }, - { - "src": "http://fonts.gstatic.com/s/gothica1/v13/CSR44z5ZnPydRjlCCwlCmOQKSPl6tOU9Eg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Gothic A1" - }, - { - "src": "http://fonts.gstatic.com/s/gothica1/v13/CSR44z5ZnPydRjlCCwlCtOMKSPl6tOU9Eg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Gothic A1" - }, - { - "src": "http://fonts.gstatic.com/s/gothica1/v13/CSR44z5ZnPydRjlCCwlC0OIKSPl6tOU9Eg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Gothic A1" - }, - { - "src": "http://fonts.gstatic.com/s/gothica1/v13/CSR44z5ZnPydRjlCCwlCzOEKSPl6tOU9Eg.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Gothic A1" - }, - { - "src": "http://fonts.gstatic.com/s/gothica1/v13/CSR44z5ZnPydRjlCCwlC6OAKSPl6tOU9Eg.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Gothic A1" - } - ] - }, - { - "name": "Gotu", - "fontFamily": "Gotu, sans-serif", - "slug": "gotu", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gotu/v14/o-0FIpksx3QOlH0Lioh6-hU.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Gotu" - } - ] - }, - { - "name": "Goudy Bookletter 1911", - "fontFamily": "Goudy Bookletter 1911, serif", - "slug": "goudy-bookletter-1911", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/goudybookletter1911/v15/sykt-z54laciWfKv-kX8krex0jDiD2HbY6I5tRbXZ4IXAA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Goudy Bookletter 1911" - } - ] - }, - { - "name": "Gowun Batang", - "fontFamily": "Gowun Batang, serif", - "slug": "gowun-batang", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gowunbatang/v7/ijwSs5nhRMIjYsdSgcMa3wRhXLH-yuAtLw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Gowun Batang" - }, - { - "src": "http://fonts.gstatic.com/s/gowunbatang/v7/ijwNs5nhRMIjYsdSgcMa3wRZ4J7awssxJii23w.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Gowun Batang" - } - ] - }, - { - "name": "Gowun Dodum", - "fontFamily": "Gowun Dodum, sans-serif", - "slug": "gowun-dodum", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gowundodum/v7/3Jn5SD_00GqwlBnWc1TUJF0FfORL0fNy.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Gowun Dodum" - } - ] - }, - { - "name": "Graduate", - "fontFamily": "Graduate, system-ui", - "slug": "graduate", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/graduate/v13/C8cg4cs3o2n15t_2YxgR6X2NZAn2.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Graduate" - } - ] - }, - { - "name": "Grand Hotel", - "fontFamily": "Grand Hotel, cursive", - "slug": "grand-hotel", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/grandhotel/v14/7Au7p_IgjDKdCRWuR1azpmQNEl0O0kEx.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Grand Hotel" - } - ] - }, - { - "name": "Grandstander", - "fontFamily": "Grandstander, system-ui", - "slug": "grandstander", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD1-_D3jWttFGmQk.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Grandstander" - }, - { - "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD9--D3jWttFGmQk.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Grandstander" - }, - { - "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQDwG-D3jWttFGmQk.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Grandstander" - }, - { - "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD1--D3jWttFGmQk.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Grandstander" - }, - { - "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD22-D3jWttFGmQk.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Grandstander" - }, - { - "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD4G5D3jWttFGmQk.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Grandstander" - }, - { - "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD7i5D3jWttFGmQk.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Grandstander" - }, - { - "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD9-5D3jWttFGmQk.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Grandstander" - }, - { - "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD_a5D3jWttFGmQk.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Grandstander" - }, - { - "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf95zrcsvNDiQlBYQ.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Grandstander" - }, - { - "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf9ZzvcsvNDiQlBYQ.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Grandstander" - }, - { - "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf9uTvcsvNDiQlBYQ.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Grandstander" - }, - { - "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf95zvcsvNDiQlBYQ.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Grandstander" - }, - { - "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf91TvcsvNDiQlBYQ.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Grandstander" - }, - { - "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf9OTzcsvNDiQlBYQ.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Grandstander" - }, - { - "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf9ADzcsvNDiQlBYQ.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Grandstander" - }, - { - "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf9ZzzcsvNDiQlBYQ.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Grandstander" - }, - { - "src": "http://fonts.gstatic.com/s/grandstander/v15/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf9TjzcsvNDiQlBYQ.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Grandstander" - } - ] - }, - { - "name": "Grape Nuts", - "fontFamily": "Grape Nuts, cursive", - "slug": "grape-nuts", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/grapenuts/v2/syk2-yF4iLM2RfKj4F7k3tLvol2RN1E.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Grape Nuts" - } - ] - }, - { - "name": "Gravitas One", - "fontFamily": "Gravitas One, system-ui", - "slug": "gravitas-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gravitasone/v15/5h1diZ4hJ3cblKy3LWakKQmaDWRNr3DzbQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Gravitas One" - } - ] - }, - { - "name": "Great Vibes", - "fontFamily": "Great Vibes, cursive", - "slug": "great-vibes", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/greatvibes/v15/RWmMoKWR9v4ksMfaWd_JN-XCg6UKDXlq.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Great Vibes" - } - ] - }, - { - "name": "Grechen Fuemen", - "fontFamily": "Grechen Fuemen, cursive", - "slug": "grechen-fuemen", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/grechenfuemen/v7/vEFI2_tHEQ4d5ObgKxBzZh0MAWgc-NaXXq7H.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Grechen Fuemen" - } - ] - }, - { - "name": "Grenze", - "fontFamily": "Grenze, serif", - "slug": "grenze", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZRFGb7hR12BxqPm2IjuAkalnmd.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Grenze" - }, - { - "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZXFGb7hR12BxqH_VpHsg04k2md0kI.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Grenze" - }, - { - "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZQFGb7hR12BxqPN0MDkicWn2CEyw.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Grenze" - }, - { - "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZWFGb7hR12BxqH_Vrrky0SvWWUy1uW.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Grenze" - }, - { - "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZQFGb7hR12BxqPU0ADkicWn2CEyw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Grenze" - }, - { - "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZWFGb7hR12BxqH_VqPkC0SvWWUy1uW.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Grenze" - }, - { - "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZTFGb7hR12Bxq3_2gnmgwKlg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Grenze" - }, - { - "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZRFGb7hR12BxqH_WIjuAkalnmd.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Grenze" - }, - { - "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZQFGb7hR12BxqPC0EDkicWn2CEyw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Grenze" - }, - { - "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZWFGb7hR12BxqH_VrXkS0SvWWUy1uW.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Grenze" - }, - { - "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZQFGb7hR12BxqPJ0YDkicWn2CEyw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Grenze" - }, - { - "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZWFGb7hR12BxqH_Vr7li0SvWWUy1uW.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Grenze" - }, - { - "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZQFGb7hR12BxqPQ0cDkicWn2CEyw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Grenze" - }, - { - "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZWFGb7hR12BxqH_Vqfly0SvWWUy1uW.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Grenze" - }, - { - "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZQFGb7hR12BxqPX0QDkicWn2CEyw.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Grenze" - }, - { - "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZWFGb7hR12BxqH_VqDlC0SvWWUy1uW.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Grenze" - }, - { - "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZQFGb7hR12BxqPe0UDkicWn2CEyw.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Grenze" - }, - { - "src": "http://fonts.gstatic.com/s/grenze/v15/O4ZWFGb7hR12BxqH_VqnlS0SvWWUy1uW.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Grenze" - } - ] - }, - { - "name": "Grenze Gotisch", - "fontFamily": "Grenze Gotisch, system-ui", - "slug": "grenze-gotisch", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/grenzegotisch/v16/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5Lz5UcICdYPSd_w.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Grenze Gotisch" - }, - { - "src": "http://fonts.gstatic.com/s/grenzegotisch/v16/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5rz9UcICdYPSd_w.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Grenze Gotisch" - }, - { - "src": "http://fonts.gstatic.com/s/grenzegotisch/v16/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5cT9UcICdYPSd_w.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Grenze Gotisch" - }, - { - "src": "http://fonts.gstatic.com/s/grenzegotisch/v16/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5Lz9UcICdYPSd_w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Grenze Gotisch" - }, - { - "src": "http://fonts.gstatic.com/s/grenzegotisch/v16/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5HT9UcICdYPSd_w.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Grenze Gotisch" - }, - { - "src": "http://fonts.gstatic.com/s/grenzegotisch/v16/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i58ThUcICdYPSd_w.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Grenze Gotisch" - }, - { - "src": "http://fonts.gstatic.com/s/grenzegotisch/v16/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5yDhUcICdYPSd_w.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Grenze Gotisch" - }, - { - "src": "http://fonts.gstatic.com/s/grenzegotisch/v16/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5rzhUcICdYPSd_w.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Grenze Gotisch" - }, - { - "src": "http://fonts.gstatic.com/s/grenzegotisch/v16/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5hjhUcICdYPSd_w.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Grenze Gotisch" - } - ] - }, - { - "name": "Grey Qo", - "fontFamily": "Grey Qo, cursive", - "slug": "grey-qo", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/greyqo/v7/BXRrvF_Nmv_TyXxNDOtQ9Wf0QcE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Grey Qo" - } - ] - }, - { - "name": "Griffy", - "fontFamily": "Griffy, system-ui", - "slug": "griffy", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/griffy/v22/FwZa7-ox2FQh9kfwSNSEwM2zpA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Griffy" - } - ] - }, - { - "name": "Gruppo", - "fontFamily": "Gruppo, sans-serif", - "slug": "gruppo", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gruppo/v17/WwkfxPmzE06v_ZWFWXDAOIEQUQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Gruppo" - } - ] - }, - { - "name": "Gudea", - "fontFamily": "Gudea, sans-serif", - "slug": "gudea", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gudea/v15/neIFzCqgsI0mp-CP9IGON7Ez.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Gudea" - }, - { - "src": "http://fonts.gstatic.com/s/gudea/v15/neILzCqgsI0mp9CN_oWsMqEzSJQ.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Gudea" - }, - { - "src": "http://fonts.gstatic.com/s/gudea/v15/neIIzCqgsI0mp9gz26WGHK06UY30.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Gudea" - } - ] - }, - { - "name": "Gugi", - "fontFamily": "Gugi, system-ui", - "slug": "gugi", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gugi/v13/A2BVn5dXywshVA6A9DEfgqM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Gugi" - } - ] - }, - { - "name": "Gulzar", - "fontFamily": "Gulzar, serif", - "slug": "gulzar", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gulzar/v8/Wnz6HAc9eB3HB2ILYTwZqg_MPQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Gulzar" - } - ] - }, - { - "name": "Gupter", - "fontFamily": "Gupter, serif", - "slug": "gupter", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gupter/v14/2-cm9JNmxJqPO1QUYZa_Wu_lpA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Gupter" - }, - { - "src": "http://fonts.gstatic.com/s/gupter/v14/2-cl9JNmxJqPO1Qslb-bUsT5rZhaZg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Gupter" - }, - { - "src": "http://fonts.gstatic.com/s/gupter/v14/2-cl9JNmxJqPO1Qs3bmbUsT5rZhaZg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Gupter" - } - ] - }, - { - "name": "Gurajada", - "fontFamily": "Gurajada, serif", - "slug": "gurajada", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gurajada/v15/FwZY7-Qx308m-l-0Kd6A4sijpFu_.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Gurajada" - } - ] - }, - { - "name": "Gwendolyn", - "fontFamily": "Gwendolyn, cursive", - "slug": "gwendolyn", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/gwendolyn/v5/qkBXXvoO_M3CSss-d7ee5JRLkAXbMQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Gwendolyn" - }, - { - "src": "http://fonts.gstatic.com/s/gwendolyn/v5/qkBSXvoO_M3CSss-d7emWLtvmC7HONiSFQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Gwendolyn" - } - ] - }, - { - "name": "Habibi", - "fontFamily": "Habibi, serif", - "slug": "habibi", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/habibi/v21/CSR-4zFWkuqcTTNCShJeZOYySQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Habibi" - } - ] - }, - { - "name": "Hachi Maru Pop", - "fontFamily": "Hachi Maru Pop, cursive", - "slug": "hachi-maru-pop", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/hachimarupop/v17/HI_TiYoRLqpLrEiMAuO9Ysfz7rW1EM_btd8u.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Hachi Maru Pop" - } - ] - }, - { - "name": "Hahmlet", - "fontFamily": "Hahmlet, serif", - "slug": "hahmlet", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/hahmlet/v13/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RhKOdjobsO-aVxn.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Hahmlet" - }, - { - "src": "http://fonts.gstatic.com/s/hahmlet/v13/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RjKONjobsO-aVxn.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Hahmlet" - }, - { - "src": "http://fonts.gstatic.com/s/hahmlet/v13/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RgUONjobsO-aVxn.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Hahmlet" - }, - { - "src": "http://fonts.gstatic.com/s/hahmlet/v13/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RhKONjobsO-aVxn.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Hahmlet" - }, - { - "src": "http://fonts.gstatic.com/s/hahmlet/v13/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4Rh4ONjobsO-aVxn.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Hahmlet" - }, - { - "src": "http://fonts.gstatic.com/s/hahmlet/v13/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RiUP9jobsO-aVxn.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Hahmlet" - }, - { - "src": "http://fonts.gstatic.com/s/hahmlet/v13/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RitP9jobsO-aVxn.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Hahmlet" - }, - { - "src": "http://fonts.gstatic.com/s/hahmlet/v13/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RjKP9jobsO-aVxn.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Hahmlet" - }, - { - "src": "http://fonts.gstatic.com/s/hahmlet/v13/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RjjP9jobsO-aVxn.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Hahmlet" - } - ] - }, - { - "name": "Halant", - "fontFamily": "Halant, serif", - "slug": "halant", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/halant/v14/u-490qaujRI2Pbsvc_pCmwZqcwdRXg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Halant" - }, - { - "src": "http://fonts.gstatic.com/s/halant/v14/u-4-0qaujRI2PbsX39Jmky12eg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Halant" - }, - { - "src": "http://fonts.gstatic.com/s/halant/v14/u-490qaujRI2PbsvK_tCmwZqcwdRXg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Halant" - }, - { - "src": "http://fonts.gstatic.com/s/halant/v14/u-490qaujRI2PbsvB_xCmwZqcwdRXg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Halant" - }, - { - "src": "http://fonts.gstatic.com/s/halant/v14/u-490qaujRI2PbsvY_1CmwZqcwdRXg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Halant" - } - ] - }, - { - "name": "Hammersmith One", - "fontFamily": "Hammersmith One, sans-serif", - "slug": "hammersmith-one", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/hammersmithone/v17/qWcyB624q4L_C4jGQ9IK0O_dFlnbshsks4MRXw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Hammersmith One" - } - ] - }, - { - "name": "Hanalei", - "fontFamily": "Hanalei, system-ui", - "slug": "hanalei", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/hanalei/v23/E21n_dD8iufIjBRHXzgmVydREus.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Hanalei" - } - ] - }, - { - "name": "Hanalei Fill", - "fontFamily": "Hanalei Fill, system-ui", - "slug": "hanalei-fill", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/hanaleifill/v22/fC1mPYtObGbfyQznIaQzPQiMVwLBplm9aw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Hanalei Fill" - } - ] - }, - { - "name": "Handlee", - "fontFamily": "Handlee, cursive", - "slug": "handlee", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/handlee/v14/-F6xfjBsISg9aMakDmr6oilJ3ik.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Handlee" - } - ] - }, - { - "name": "Hanken Grotesk", - "fontFamily": "Hanken Grotesk, sans-serif", - "slug": "hanken-grotesk", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_Ncs2da4fpNzXhRKA.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Hanken Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_NcM2Za4fpNzXhRKA.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Hanken Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_Nc7WZa4fpNzXhRKA.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Hanken Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_Ncs2Za4fpNzXhRKA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Hanken Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_NcgWZa4fpNzXhRKA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Hanken Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_NcbWFa4fpNzXhRKA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Hanken Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_NcVGFa4fpNzXhRKA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Hanken Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_NcM2Fa4fpNzXhRKA.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Hanken Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_NcGmFa4fpNzXhRKA.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Hanken Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyWyo_BJ731BKMSK.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Hanken Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyUyovBJ731BKMSK.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Hanken Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyXsovBJ731BKMSK.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Hanken Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyWyovBJ731BKMSK.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Hanken Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyWAovBJ731BKMSK.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Hanken Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyVspfBJ731BKMSK.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Hanken Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyVVpfBJ731BKMSK.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Hanken Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyUypfBJ731BKMSK.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Hanken Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/hankengrotesk/v8/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyUbpfBJ731BKMSK.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Hanken Grotesk" - } - ] - }, - { - "name": "Hanuman", - "fontFamily": "Hanuman, serif", - "slug": "hanuman", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/hanuman/v22/VuJzdNvD15HhpJJBQMLdPKNiaRpFvg.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Hanuman" - }, - { - "src": "http://fonts.gstatic.com/s/hanuman/v22/VuJ0dNvD15HhpJJBQAr_HIlMZRNcp0o.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Hanuman" - }, - { - "src": "http://fonts.gstatic.com/s/hanuman/v22/VuJxdNvD15HhpJJBeKbXOIFneRo.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Hanuman" - }, - { - "src": "http://fonts.gstatic.com/s/hanuman/v22/VuJ0dNvD15HhpJJBQBr4HIlMZRNcp0o.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Hanuman" - }, - { - "src": "http://fonts.gstatic.com/s/hanuman/v22/VuJ0dNvD15HhpJJBQCL6HIlMZRNcp0o.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Hanuman" - } - ] - }, - { - "name": "Happy Monkey", - "fontFamily": "Happy Monkey, system-ui", - "slug": "happy-monkey", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/happymonkey/v14/K2F2fZZcl-9SXwl5F_C4R_OABwD2bWqVjw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Happy Monkey" - } - ] - }, - { - "name": "Harmattan", - "fontFamily": "Harmattan, sans-serif", - "slug": "harmattan", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/harmattan/v19/goksH6L2DkFvVvRp9XpTS0CjkP1Yog.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Harmattan" - }, - { - "src": "http://fonts.gstatic.com/s/harmattan/v19/gokpH6L2DkFvVvRp9Xprv2mHmNZEq6TTFw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Harmattan" - }, - { - "src": "http://fonts.gstatic.com/s/harmattan/v19/gokpH6L2DkFvVvRp9Xprk26HmNZEq6TTFw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Harmattan" - }, - { - "src": "http://fonts.gstatic.com/s/harmattan/v19/gokpH6L2DkFvVvRp9Xpr92-HmNZEq6TTFw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Harmattan" - } - ] - }, - { - "name": "Headland One", - "fontFamily": "Headland One, serif", - "slug": "headland-one", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/headlandone/v16/yYLu0hHR2vKnp89Tk1TCq3Tx0PlTeZ3mJA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Headland One" - } - ] - }, - { - "name": "Heebo", - "fontFamily": "Heebo, sans-serif", - "slug": "heebo", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/heebo/v21/NGSpv5_NC0k9P_v6ZUCbLRAHxK1EiS2cckOnz02SXQ.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Heebo" - }, - { - "src": "http://fonts.gstatic.com/s/heebo/v21/NGSpv5_NC0k9P_v6ZUCbLRAHxK1ECSycckOnz02SXQ.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Heebo" - }, - { - "src": "http://fonts.gstatic.com/s/heebo/v21/NGSpv5_NC0k9P_v6ZUCbLRAHxK1E1yycckOnz02SXQ.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Heebo" - }, - { - "src": "http://fonts.gstatic.com/s/heebo/v21/NGSpv5_NC0k9P_v6ZUCbLRAHxK1EiSycckOnz02SXQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Heebo" - }, - { - "src": "http://fonts.gstatic.com/s/heebo/v21/NGSpv5_NC0k9P_v6ZUCbLRAHxK1EuyycckOnz02SXQ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Heebo" - }, - { - "src": "http://fonts.gstatic.com/s/heebo/v21/NGSpv5_NC0k9P_v6ZUCbLRAHxK1EVyucckOnz02SXQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Heebo" - }, - { - "src": "http://fonts.gstatic.com/s/heebo/v21/NGSpv5_NC0k9P_v6ZUCbLRAHxK1EbiucckOnz02SXQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Heebo" - }, - { - "src": "http://fonts.gstatic.com/s/heebo/v21/NGSpv5_NC0k9P_v6ZUCbLRAHxK1ECSucckOnz02SXQ.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Heebo" - }, - { - "src": "http://fonts.gstatic.com/s/heebo/v21/NGSpv5_NC0k9P_v6ZUCbLRAHxK1EICucckOnz02SXQ.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Heebo" - } - ] - }, - { - "name": "Henny Penny", - "fontFamily": "Henny Penny, system-ui", - "slug": "henny-penny", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/hennypenny/v17/wXKvE3UZookzsxz_kjGSfMQqt3M7tMDT.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Henny Penny" - } - ] - }, - { - "name": "Hepta Slab", - "fontFamily": "Hepta Slab, serif", - "slug": "hepta-slab", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/heptaslab/v21/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5HvkV5jfbY5B0NBkz.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Hepta Slab" - }, - { - "src": "http://fonts.gstatic.com/s/heptaslab/v21/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5HvmV5zfbY5B0NBkz.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Hepta Slab" - }, - { - "src": "http://fonts.gstatic.com/s/heptaslab/v21/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5HvlL5zfbY5B0NBkz.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Hepta Slab" - }, - { - "src": "http://fonts.gstatic.com/s/heptaslab/v21/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5HvkV5zfbY5B0NBkz.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Hepta Slab" - }, - { - "src": "http://fonts.gstatic.com/s/heptaslab/v21/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5Hvkn5zfbY5B0NBkz.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Hepta Slab" - }, - { - "src": "http://fonts.gstatic.com/s/heptaslab/v21/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5HvnL4DfbY5B0NBkz.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Hepta Slab" - }, - { - "src": "http://fonts.gstatic.com/s/heptaslab/v21/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5Hvny4DfbY5B0NBkz.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Hepta Slab" - }, - { - "src": "http://fonts.gstatic.com/s/heptaslab/v21/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5HvmV4DfbY5B0NBkz.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Hepta Slab" - }, - { - "src": "http://fonts.gstatic.com/s/heptaslab/v21/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5Hvm84DfbY5B0NBkz.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Hepta Slab" - } - ] - }, - { - "name": "Herr Von Muellerhoff", - "fontFamily": "Herr Von Muellerhoff, cursive", - "slug": "herr-von-muellerhoff", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/herrvonmuellerhoff/v16/WBL6rFjRZkREW8WqmCWYLgCkQKXb4CAft3c6_qJY3QPQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Herr Von Muellerhoff" - } - ] - }, - { - "name": "Hi Melody", - "fontFamily": "Hi Melody, cursive", - "slug": "hi-melody", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/himelody/v13/46ktlbP8Vnz0pJcqCTbEf29E31BBGA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Hi Melody" - } - ] - }, - { - "name": "Hina Mincho", - "fontFamily": "Hina Mincho, serif", - "slug": "hina-mincho", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/hinamincho/v9/2sDaZGBRhpXa2Jjz5w5LAGW8KbkVZTHR.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Hina Mincho" - } - ] - }, - { - "name": "Hind", - "fontFamily": "Hind, sans-serif", - "slug": "hind", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/hind/v16/5aU19_a8oxmIfMJaIRuYjDpf5Vw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Hind" - }, - { - "src": "http://fonts.gstatic.com/s/hind/v16/5aU69_a8oxmIRG5yBROzkDM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Hind" - }, - { - "src": "http://fonts.gstatic.com/s/hind/v16/5aU19_a8oxmIfJpbIRuYjDpf5Vw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Hind" - }, - { - "src": "http://fonts.gstatic.com/s/hind/v16/5aU19_a8oxmIfLZcIRuYjDpf5Vw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Hind" - }, - { - "src": "http://fonts.gstatic.com/s/hind/v16/5aU19_a8oxmIfNJdIRuYjDpf5Vw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Hind" - } - ] - }, - { - "name": "Hind Guntur", - "fontFamily": "Hind Guntur, sans-serif", - "slug": "hind-guntur", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/hindguntur/v12/wXKyE3UZrok56nvamSuJd_yGn1czn9zaj5Ju.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Hind Guntur" - }, - { - "src": "http://fonts.gstatic.com/s/hindguntur/v12/wXKvE3UZrok56nvamSuJd8Qqt3M7tMDT.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Hind Guntur" - }, - { - "src": "http://fonts.gstatic.com/s/hindguntur/v12/wXKyE3UZrok56nvamSuJd_zenlczn9zaj5Ju.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Hind Guntur" - }, - { - "src": "http://fonts.gstatic.com/s/hindguntur/v12/wXKyE3UZrok56nvamSuJd_zymVczn9zaj5Ju.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Hind Guntur" - }, - { - "src": "http://fonts.gstatic.com/s/hindguntur/v12/wXKyE3UZrok56nvamSuJd_yWmFczn9zaj5Ju.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Hind Guntur" - } - ] - }, - { - "name": "Hind Madurai", - "fontFamily": "Hind Madurai, sans-serif", - "slug": "hind-madurai", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/hindmadurai/v11/f0Xu0e2p98ZvDXdZQIOcpqjfXaUnecsoMJ0b_g.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Hind Madurai" - }, - { - "src": "http://fonts.gstatic.com/s/hindmadurai/v11/f0Xx0e2p98ZvDXdZQIOcpqjn8Y0DceA0OQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Hind Madurai" - }, - { - "src": "http://fonts.gstatic.com/s/hindmadurai/v11/f0Xu0e2p98ZvDXdZQIOcpqjfBaQnecsoMJ0b_g.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Hind Madurai" - }, - { - "src": "http://fonts.gstatic.com/s/hindmadurai/v11/f0Xu0e2p98ZvDXdZQIOcpqjfKaMnecsoMJ0b_g.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Hind Madurai" - }, - { - "src": "http://fonts.gstatic.com/s/hindmadurai/v11/f0Xu0e2p98ZvDXdZQIOcpqjfTaInecsoMJ0b_g.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Hind Madurai" - } - ] - }, - { - "name": "Hind Siliguri", - "fontFamily": "Hind Siliguri, sans-serif", - "slug": "hind-siliguri", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/hindsiliguri/v12/ijwOs5juQtsyLLR5jN4cxBEoRDf44uEfKiGvxts.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Hind Siliguri" - }, - { - "src": "http://fonts.gstatic.com/s/hindsiliguri/v12/ijwTs5juQtsyLLR5jN4cxBEofJvQxuk0Nig.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Hind Siliguri" - }, - { - "src": "http://fonts.gstatic.com/s/hindsiliguri/v12/ijwOs5juQtsyLLR5jN4cxBEoRG_54uEfKiGvxts.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Hind Siliguri" - }, - { - "src": "http://fonts.gstatic.com/s/hindsiliguri/v12/ijwOs5juQtsyLLR5jN4cxBEoREP-4uEfKiGvxts.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Hind Siliguri" - }, - { - "src": "http://fonts.gstatic.com/s/hindsiliguri/v12/ijwOs5juQtsyLLR5jN4cxBEoRCf_4uEfKiGvxts.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Hind Siliguri" - } - ] - }, - { - "name": "Hind Vadodara", - "fontFamily": "Hind Vadodara, sans-serif", - "slug": "hind-vadodara", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/hindvadodara/v13/neIQzCKvrIcn5pbuuuriV9tTSDn3iXM0oSOL2Yw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Hind Vadodara" - }, - { - "src": "http://fonts.gstatic.com/s/hindvadodara/v13/neINzCKvrIcn5pbuuuriV9tTcJXfrXsfvSo.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Hind Vadodara" - }, - { - "src": "http://fonts.gstatic.com/s/hindvadodara/v13/neIQzCKvrIcn5pbuuuriV9tTSGH2iXM0oSOL2Yw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Hind Vadodara" - }, - { - "src": "http://fonts.gstatic.com/s/hindvadodara/v13/neIQzCKvrIcn5pbuuuriV9tTSE3xiXM0oSOL2Yw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Hind Vadodara" - }, - { - "src": "http://fonts.gstatic.com/s/hindvadodara/v13/neIQzCKvrIcn5pbuuuriV9tTSCnwiXM0oSOL2Yw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Hind Vadodara" - } - ] - }, - { - "name": "Holtwood One SC", - "fontFamily": "Holtwood One SC, serif", - "slug": "holtwood-one-sc", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/holtwoodonesc/v16/yYLx0hLR0P-3vMFSk1TCq3Txg5B3cbb6LZttyg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Holtwood One SC" - } - ] - }, - { - "name": "Homemade Apple", - "fontFamily": "Homemade Apple, cursive", - "slug": "homemade-apple", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/homemadeapple/v18/Qw3EZQFXECDrI2q789EKQZJob3x9Vnksi4M7.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Homemade Apple" - } - ] - }, - { - "name": "Homenaje", - "fontFamily": "Homenaje, sans-serif", - "slug": "homenaje", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/homenaje/v16/FwZY7-Q-xVAi_l-6Ld6A4sijpFu_.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Homenaje" - } - ] - }, - { - "name": "Hubballi", - "fontFamily": "Hubballi, system-ui", - "slug": "hubballi", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/hubballi/v4/o-0JIpUj3WIZ1RFN56B7yBBNYuSF.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Hubballi" - } - ] - }, - { - "name": "Hurricane", - "fontFamily": "Hurricane, cursive", - "slug": "hurricane", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/hurricane/v5/pe0sMIuULZxTolZ5YldyAv2-C99ycg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Hurricane" - } - ] - }, - { - "name": "IBM Plex Mono", - "fontFamily": "IBM Plex Mono, monospace", - "slug": "ibm-plex-mono", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ibmplexmono/v19/-F6pfjptAgt5VM-kVkqdyU8n3kwq0n1hj-sNFQ.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "IBM Plex Mono" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexmono/v19/-F6rfjptAgt5VM-kVkqdyU8n1ioStndlre4dFcFh.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "IBM Plex Mono" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexmono/v19/-F6qfjptAgt5VM-kVkqdyU8n3uAL8ldPg-IUDNg.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "IBM Plex Mono" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexmono/v19/-F6sfjptAgt5VM-kVkqdyU8n1ioSGlZFh8ARHNh4zg.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "IBM Plex Mono" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexmono/v19/-F6qfjptAgt5VM-kVkqdyU8n3oQI8ldPg-IUDNg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "IBM Plex Mono" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexmono/v19/-F6sfjptAgt5VM-kVkqdyU8n1ioSflVFh8ARHNh4zg.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "IBM Plex Mono" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexmono/v19/-F63fjptAgt5VM-kVkqdyU8n5igg1l9kn-s.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "IBM Plex Mono" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexmono/v19/-F6pfjptAgt5VM-kVkqdyU8n1ioq0n1hj-sNFQ.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "IBM Plex Mono" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexmono/v19/-F6qfjptAgt5VM-kVkqdyU8n3twJ8ldPg-IUDNg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "IBM Plex Mono" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexmono/v19/-F6sfjptAgt5VM-kVkqdyU8n1ioSJlRFh8ARHNh4zg.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "IBM Plex Mono" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexmono/v19/-F6qfjptAgt5VM-kVkqdyU8n3vAO8ldPg-IUDNg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "IBM Plex Mono" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexmono/v19/-F6sfjptAgt5VM-kVkqdyU8n1ioSClNFh8ARHNh4zg.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "IBM Plex Mono" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexmono/v19/-F6qfjptAgt5VM-kVkqdyU8n3pQP8ldPg-IUDNg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "IBM Plex Mono" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexmono/v19/-F6sfjptAgt5VM-kVkqdyU8n1ioSblJFh8ARHNh4zg.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "IBM Plex Mono" - } - ] - }, - { - "name": "IBM Plex Sans", - "fontFamily": "IBM Plex Sans, sans-serif", - "slug": "ibm-plex-sans", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ibmplexsans/v19/zYX-KVElMYYaJe8bpLHnCwDKjbLeEKxIedbzDw.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsans/v19/zYX8KVElMYYaJe8bpLHnCwDKhdTmdKZMW9PjD3N8.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "IBM Plex Sans" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsans/v19/zYX9KVElMYYaJe8bpLHnCwDKjR7_MIZmdd_qFmo.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsans/v19/zYX7KVElMYYaJe8bpLHnCwDKhdTm2Idscf3vBmpl8A.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "IBM Plex Sans" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsans/v19/zYX9KVElMYYaJe8bpLHnCwDKjXr8MIZmdd_qFmo.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsans/v19/zYX7KVElMYYaJe8bpLHnCwDKhdTmvIRscf3vBmpl8A.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "IBM Plex Sans" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsans/v19/zYXgKVElMYYaJe8bpLHnCwDKtdbUFI5NadY.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsans/v19/zYX-KVElMYYaJe8bpLHnCwDKhdTeEKxIedbzDw.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "IBM Plex Sans" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsans/v19/zYX9KVElMYYaJe8bpLHnCwDKjSL9MIZmdd_qFmo.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsans/v19/zYX7KVElMYYaJe8bpLHnCwDKhdTm5IVscf3vBmpl8A.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "IBM Plex Sans" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsans/v19/zYX9KVElMYYaJe8bpLHnCwDKjQ76MIZmdd_qFmo.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsans/v19/zYX7KVElMYYaJe8bpLHnCwDKhdTmyIJscf3vBmpl8A.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "IBM Plex Sans" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsans/v19/zYX9KVElMYYaJe8bpLHnCwDKjWr7MIZmdd_qFmo.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsans/v19/zYX7KVElMYYaJe8bpLHnCwDKhdTmrINscf3vBmpl8A.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "IBM Plex Sans" - } - ] - }, - { - "name": "IBM Plex Sans Arabic", - "fontFamily": "IBM Plex Sans Arabic, sans-serif", - "slug": "ibm-plex-sans-arabic", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ibmplexsansarabic/v12/Qw3MZRtWPQCuHme67tEYUIx3Kh0PHR9N6YNe3PC5eMlAMg0.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Arabic" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsansarabic/v12/Qw3NZRtWPQCuHme67tEYUIx3Kh0PHR9N6YPy_dCTVsVJKxTs.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Arabic" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsansarabic/v12/Qw3NZRtWPQCuHme67tEYUIx3Kh0PHR9N6YOW_tCTVsVJKxTs.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Arabic" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsansarabic/v12/Qw3CZRtWPQCuHme67tEYUIx3Kh0PHR9N6bs61vSbfdlA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Arabic" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsansarabic/v12/Qw3NZRtWPQCuHme67tEYUIx3Kh0PHR9N6YPO_9CTVsVJKxTs.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Arabic" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsansarabic/v12/Qw3NZRtWPQCuHme67tEYUIx3Kh0PHR9N6YPi-NCTVsVJKxTs.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Arabic" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsansarabic/v12/Qw3NZRtWPQCuHme67tEYUIx3Kh0PHR9N6YOG-dCTVsVJKxTs.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Arabic" - } - ] - }, - { - "name": "IBM Plex Sans Condensed", - "fontFamily": "IBM Plex Sans Condensed, sans-serif", - "slug": "ibm-plex-sans-condensed", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8nN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHY7KyKvBgYsMDhM.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8hN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas8M_LhakJHhOgBg.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "IBM Plex Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8gN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHY5m6Yvrr4cFFwq5.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8iN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas8GPqpYMnEhq5H1w.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "IBM Plex Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8gN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHY4C6ovrr4cFFwq5.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8iN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas8AfppYMnEhq5H1w.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "IBM Plex Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8lN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHbauwq_jhJsM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8nN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYasyKvBgYsMDhM.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "IBM Plex Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8gN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHY5a64vrr4cFFwq5.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8iN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas8F_opYMnEhq5H1w.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "IBM Plex Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8gN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHY527Ivrr4cFFwq5.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8iN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas8HPvpYMnEhq5H1w.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "IBM Plex Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8gN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHY4S7Yvrr4cFFwq5.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8iN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas8BfupYMnEhq5H1w.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "IBM Plex Sans Condensed" - } - ] - }, - { - "name": "IBM Plex Sans Devanagari", - "fontFamily": "IBM Plex Sans Devanagari, sans-serif", - "slug": "ibm-plex-sans-devanagari", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ibmplexsansdevanagari/v11/XRXB3JCMvG4IDoS9SubXB6W-UX5iehIMBFR2-O_HMUjwUcjwCEQq.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Devanagari" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsansdevanagari/v11/XRXA3JCMvG4IDoS9SubXB6W-UX5iehIMBFR2-O_HnWnQe-b8AV0z0w.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Devanagari" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsansdevanagari/v11/XRXA3JCMvG4IDoS9SubXB6W-UX5iehIMBFR2-O_H-WrQe-b8AV0z0w.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Devanagari" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsansdevanagari/v11/XRXH3JCMvG4IDoS9SubXB6W-UX5iehIMBFR2-O__VUL0c83gCA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Devanagari" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsansdevanagari/v11/XRXA3JCMvG4IDoS9SubXB6W-UX5iehIMBFR2-O_HoWvQe-b8AV0z0w.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Devanagari" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsansdevanagari/v11/XRXA3JCMvG4IDoS9SubXB6W-UX5iehIMBFR2-O_HjWzQe-b8AV0z0w.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Devanagari" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsansdevanagari/v11/XRXA3JCMvG4IDoS9SubXB6W-UX5iehIMBFR2-O_H6W3Qe-b8AV0z0w.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Devanagari" - } - ] - }, - { - "name": "IBM Plex Sans Hebrew", - "fontFamily": "IBM Plex Sans Hebrew, sans-serif", - "slug": "ibm-plex-sans-hebrew", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ibmplexsanshebrew/v11/BCa4qYENg9Kw1mpLpO0bGM5lfHAAZHhDXEXB-l0VqDaM7C4.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Hebrew" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsanshebrew/v11/BCa5qYENg9Kw1mpLpO0bGM5lfHAAZHhDXEVt230_hjqF9Tc2.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Hebrew" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsanshebrew/v11/BCa5qYENg9Kw1mpLpO0bGM5lfHAAZHhDXEUJ2H0_hjqF9Tc2.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Hebrew" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsanshebrew/v11/BCa2qYENg9Kw1mpLpO0bGM5lfHAAZHhDXH2l8Fk3rSaM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Hebrew" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsanshebrew/v11/BCa5qYENg9Kw1mpLpO0bGM5lfHAAZHhDXEVR2X0_hjqF9Tc2.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Hebrew" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsanshebrew/v11/BCa5qYENg9Kw1mpLpO0bGM5lfHAAZHhDXEV93n0_hjqF9Tc2.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Hebrew" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsanshebrew/v11/BCa5qYENg9Kw1mpLpO0bGM5lfHAAZHhDXEUZ330_hjqF9Tc2.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Hebrew" - } - ] - }, - { - "name": "IBM Plex Sans JP", - "fontFamily": "IBM Plex Sans JP, sans-serif", - "slug": "ibm-plex-sans-jp", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ibmplexsansjp/v5/Z9XLDn9KbTDf6_f7dISNqYf_tvPT7E7yjPB7twdmHQ.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans JP" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsansjp/v5/Z9XKDn9KbTDf6_f7dISNqYf_tvPT7OLTrNpVuw5_BAM.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans JP" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsansjp/v5/Z9XKDn9KbTDf6_f7dISNqYf_tvPT7IbQrNpVuw5_BAM.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans JP" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsansjp/v5/Z9XNDn9KbTDf6_f7dISNqYf_tvPT1Cr4iNJ-pwc.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans JP" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsansjp/v5/Z9XKDn9KbTDf6_f7dISNqYf_tvPT7N7RrNpVuw5_BAM.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans JP" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsansjp/v5/Z9XKDn9KbTDf6_f7dISNqYf_tvPT7PLWrNpVuw5_BAM.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans JP" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsansjp/v5/Z9XKDn9KbTDf6_f7dISNqYf_tvPT7JbXrNpVuw5_BAM.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans JP" - } - ] - }, - { - "name": "IBM Plex Sans KR", - "fontFamily": "IBM Plex Sans KR, sans-serif", - "slug": "ibm-plex-sans-kr", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ibmplexsanskr/v10/vEFM2-VJISZe3O_rc3ZVYh4aTwNOyra_X5zCpMrMfA.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans KR" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsanskr/v10/vEFN2-VJISZe3O_rc3ZVYh4aTwNOyhqef7bsqMPVZb4.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans KR" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsanskr/v10/vEFN2-VJISZe3O_rc3ZVYh4aTwNOyn6df7bsqMPVZb4.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans KR" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsanskr/v10/vEFK2-VJISZe3O_rc3ZVYh4aTwNO8tK1W77HtMo.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans KR" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsanskr/v10/vEFN2-VJISZe3O_rc3ZVYh4aTwNOyiacf7bsqMPVZb4.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans KR" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsanskr/v10/vEFN2-VJISZe3O_rc3ZVYh4aTwNOygqbf7bsqMPVZb4.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans KR" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsanskr/v10/vEFN2-VJISZe3O_rc3ZVYh4aTwNOym6af7bsqMPVZb4.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans KR" - } - ] - }, - { - "name": "IBM Plex Sans Thai", - "fontFamily": "IBM Plex Sans Thai, sans-serif", - "slug": "ibm-plex-sans-thai", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ibmplexsansthai/v10/m8JNje1VVIzcq1HzJq2AEdo2Tj_qvLqEatYlR8ZKUqcX.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Thai" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsansthai/v10/m8JMje1VVIzcq1HzJq2AEdo2Tj_qvLqExvcFbehGW74OXw.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Thai" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsansthai/v10/m8JMje1VVIzcq1HzJq2AEdo2Tj_qvLqEovQFbehGW74OXw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Thai" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsansthai/v10/m8JPje1VVIzcq1HzJq2AEdo2Tj_qvLq8DtwhZcNaUg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Thai" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsansthai/v10/m8JMje1VVIzcq1HzJq2AEdo2Tj_qvLqE-vUFbehGW74OXw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Thai" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsansthai/v10/m8JMje1VVIzcq1HzJq2AEdo2Tj_qvLqE1vIFbehGW74OXw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Thai" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsansthai/v10/m8JMje1VVIzcq1HzJq2AEdo2Tj_qvLqEsvMFbehGW74OXw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Thai" - } - ] - }, - { - "name": "IBM Plex Sans Thai Looped", - "fontFamily": "IBM Plex Sans Thai Looped, sans-serif", - "slug": "ibm-plex-sans-thai-looped", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ibmplexsansthailooped/v11/tss5AoJJRAhL3BTrK3r2xxbFhvKfyBB6l7hHT30L_HaKpHOtFCQ76Q.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Thai Looped" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsansthailooped/v11/tss6AoJJRAhL3BTrK3r2xxbFhvKfyBB6l7hHT30L_NqrhFmDGC0i8Cc.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Thai Looped" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsansthailooped/v11/tss6AoJJRAhL3BTrK3r2xxbFhvKfyBB6l7hHT30L_L6ohFmDGC0i8Cc.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Thai Looped" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsansthailooped/v11/tss_AoJJRAhL3BTrK3r2xxbFhvKfyBB6l7hHT30LxBKAoFGoBCQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Thai Looped" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsansthailooped/v11/tss6AoJJRAhL3BTrK3r2xxbFhvKfyBB6l7hHT30L_OaphFmDGC0i8Cc.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Thai Looped" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsansthailooped/v11/tss6AoJJRAhL3BTrK3r2xxbFhvKfyBB6l7hHT30L_MquhFmDGC0i8Cc.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Thai Looped" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexsansthailooped/v11/tss6AoJJRAhL3BTrK3r2xxbFhvKfyBB6l7hHT30L_K6vhFmDGC0i8Cc.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "IBM Plex Sans Thai Looped" - } - ] - }, - { - "name": "IBM Plex Serif", - "fontFamily": "IBM Plex Serif, serif", - "slug": "ibm-plex-serif", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ibmplexserif/v19/jizBREVNn1dOx-zrZ2X3pZvkTi182zIZj1bIkNo.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "IBM Plex Serif" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexserif/v19/jizHREVNn1dOx-zrZ2X3pZvkTiUa41YTi3TNgNq55w.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "IBM Plex Serif" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexserif/v19/jizAREVNn1dOx-zrZ2X3pZvkTi3Q-hIzoVrBicOg.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "IBM Plex Serif" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexserif/v19/jizGREVNn1dOx-zrZ2X3pZvkTiUa4_oyq17jjNOg_oc.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "IBM Plex Serif" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexserif/v19/jizAREVNn1dOx-zrZ2X3pZvkTi20-RIzoVrBicOg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "IBM Plex Serif" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexserif/v19/jizGREVNn1dOx-zrZ2X3pZvkTiUa454xq17jjNOg_oc.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "IBM Plex Serif" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexserif/v19/jizDREVNn1dOx-zrZ2X3pZvkThUY0TY7ikbI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "IBM Plex Serif" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexserif/v19/jizBREVNn1dOx-zrZ2X3pZvkTiUa2zIZj1bIkNo.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "IBM Plex Serif" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexserif/v19/jizAREVNn1dOx-zrZ2X3pZvkTi3s-BIzoVrBicOg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "IBM Plex Serif" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexserif/v19/jizGREVNn1dOx-zrZ2X3pZvkTiUa48Ywq17jjNOg_oc.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "IBM Plex Serif" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexserif/v19/jizAREVNn1dOx-zrZ2X3pZvkTi3A_xIzoVrBicOg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "IBM Plex Serif" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexserif/v19/jizGREVNn1dOx-zrZ2X3pZvkTiUa4-o3q17jjNOg_oc.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "IBM Plex Serif" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexserif/v19/jizAREVNn1dOx-zrZ2X3pZvkTi2k_hIzoVrBicOg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "IBM Plex Serif" - }, - { - "src": "http://fonts.gstatic.com/s/ibmplexserif/v19/jizGREVNn1dOx-zrZ2X3pZvkTiUa4442q17jjNOg_oc.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "IBM Plex Serif" - } - ] - }, - { - "name": "IM Fell DW Pica", - "fontFamily": "IM Fell DW Pica, serif", - "slug": "im-fell-dw-pica", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/imfelldwpica/v16/2sDGZGRQotv9nbn2qSl0TxXVYNw9ZAPUvi88MQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "IM Fell DW Pica" - }, - { - "src": "http://fonts.gstatic.com/s/imfelldwpica/v16/2sDEZGRQotv9nbn2qSl0TxXVYNwNZgnQnCosMXm0.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "IM Fell DW Pica" - } - ] - }, - { - "name": "IM Fell DW Pica SC", - "fontFamily": "IM Fell DW Pica SC, serif", - "slug": "im-fell-dw-pica-sc", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/imfelldwpicasc/v21/0ybjGCAu5PfqkvtGVU15aBhXz3EUrnTW-BiKEUiBGA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "IM Fell DW Pica SC" - } - ] - }, - { - "name": "IM Fell Double Pica", - "fontFamily": "IM Fell Double Pica, serif", - "slug": "im-fell-double-pica", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/imfelldoublepica/v14/3XF2EqMq_94s9PeKF7Fg4gOKINyMtZ8rT0S1UL5Ayp0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "IM Fell Double Pica" - }, - { - "src": "http://fonts.gstatic.com/s/imfelldoublepica/v14/3XF0EqMq_94s9PeKF7Fg4gOKINyMtZ8rf0a_VJxF2p2G8g.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "IM Fell Double Pica" - } - ] - }, - { - "name": "IM Fell Double Pica SC", - "fontFamily": "IM Fell Double Pica SC, serif", - "slug": "im-fell-double-pica-sc", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/imfelldoublepicasc/v21/neIazDmuiMkFo6zj_sHpQ8teNbWlwBB_hXjJ4Y0Eeru2dGg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "IM Fell Double Pica SC" - } - ] - }, - { - "name": "IM Fell English", - "fontFamily": "IM Fell English, serif", - "slug": "im-fell-english", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/imfellenglish/v14/Ktk1ALSLW8zDe0rthJysWrnLsAz3F6mZVY9Y5w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "IM Fell English" - }, - { - "src": "http://fonts.gstatic.com/s/imfellenglish/v14/Ktk3ALSLW8zDe0rthJysWrnLsAzHFaOdd4pI59zg.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "IM Fell English" - } - ] - }, - { - "name": "IM Fell English SC", - "fontFamily": "IM Fell English SC, serif", - "slug": "im-fell-english-sc", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/imfellenglishsc/v16/a8IENpD3CDX-4zrWfr1VY879qFF05pZLO4gOg0shzA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "IM Fell English SC" - } - ] - }, - { - "name": "IM Fell French Canon", - "fontFamily": "IM Fell French Canon, serif", - "slug": "im-fell-french-canon", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/imfellfrenchcanon/v21/-F6ufiNtDWYfYc-tDiyiw08rrghJszkK6coVPt1ozoPz.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "IM Fell French Canon" - }, - { - "src": "http://fonts.gstatic.com/s/imfellfrenchcanon/v21/-F6gfiNtDWYfYc-tDiyiw08rrghJszkK6foXNNlKy5PzzrU.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "IM Fell French Canon" - } - ] - }, - { - "name": "IM Fell French Canon SC", - "fontFamily": "IM Fell French Canon SC, serif", - "slug": "im-fell-french-canon-sc", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/imfellfrenchcanonsc/v22/FBVmdCru5-ifcor2bgq9V89khWcmQghEURY7H3c0UBCVIVqH.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "IM Fell French Canon SC" - } - ] - }, - { - "name": "IM Fell Great Primer", - "fontFamily": "IM Fell Great Primer, serif", - "slug": "im-fell-great-primer", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/imfellgreatprimer/v21/bx6aNwSJtayYxOkbYFsT6hMsLzX7u85rJorXvDo3SQY1.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "IM Fell Great Primer" - }, - { - "src": "http://fonts.gstatic.com/s/imfellgreatprimer/v21/bx6UNwSJtayYxOkbYFsT6hMsLzX7u85rJrrVtj4VTBY1N6U.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "IM Fell Great Primer" - } - ] - }, - { - "name": "IM Fell Great Primer SC", - "fontFamily": "IM Fell Great Primer SC, serif", - "slug": "im-fell-great-primer-sc", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/imfellgreatprimersc/v21/ga6daxBOxyt6sCqz3fjZCTFCTUDMHagsQKdDTLf9BXz0s8FG.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "IM Fell Great Primer SC" - } - ] - }, - { - "name": "Ibarra Real Nova", - "fontFamily": "Ibarra Real Nova, serif", - "slug": "ibarra-real-nova", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ibarrarealnova/v25/sZlSdQiA-DBIDCcaWtQzL4BZHoiDundw4ATyjed3EXdg5MDtVT9TWIvS.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Ibarra Real Nova" - }, - { - "src": "http://fonts.gstatic.com/s/ibarrarealnova/v25/sZlSdQiA-DBIDCcaWtQzL4BZHoiDundw4ATyjed3EXdS5MDtVT9TWIvS.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Ibarra Real Nova" - }, - { - "src": "http://fonts.gstatic.com/s/ibarrarealnova/v25/sZlSdQiA-DBIDCcaWtQzL4BZHoiDundw4ATyjed3EXe-48DtVT9TWIvS.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Ibarra Real Nova" - }, - { - "src": "http://fonts.gstatic.com/s/ibarrarealnova/v25/sZlSdQiA-DBIDCcaWtQzL4BZHoiDundw4ATyjed3EXeH48DtVT9TWIvS.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Ibarra Real Nova" - }, - { - "src": "http://fonts.gstatic.com/s/ibarrarealnova/v25/sZlsdQiA-DBIDCcaWtQzL4BZHoiDkH5CH9yb5n3ZFmKopyiuXztxXZvSkTo.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Ibarra Real Nova" - }, - { - "src": "http://fonts.gstatic.com/s/ibarrarealnova/v25/sZlsdQiA-DBIDCcaWtQzL4BZHoiDkH5CH9yb5n3ZFmKopxquXztxXZvSkTo.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Ibarra Real Nova" - }, - { - "src": "http://fonts.gstatic.com/s/ibarrarealnova/v25/sZlsdQiA-DBIDCcaWtQzL4BZHoiDkH5CH9yb5n3ZFmKop_apXztxXZvSkTo.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Ibarra Real Nova" - }, - { - "src": "http://fonts.gstatic.com/s/ibarrarealnova/v25/sZlsdQiA-DBIDCcaWtQzL4BZHoiDkH5CH9yb5n3ZFmKop8-pXztxXZvSkTo.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Ibarra Real Nova" - } - ] - }, - { - "name": "Iceberg", - "fontFamily": "Iceberg, system-ui", - "slug": "iceberg", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/iceberg/v20/8QIJdijAiM7o-qnZuIgOq7jkAOw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Iceberg" - } - ] - }, - { - "name": "Iceland", - "fontFamily": "Iceland, system-ui", - "slug": "iceland", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/iceland/v16/rax9HiuFsdMNOnWPWKxGADBbg0s.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Iceland" - } - ] - }, - { - "name": "Imbue", - "fontFamily": "Imbue, serif", - "slug": "imbue", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/imbue/v21/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoP8iWfOsNNK-Q4xY.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Imbue" - }, - { - "src": "http://fonts.gstatic.com/s/imbue/v21/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoP0iXfOsNNK-Q4xY.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Imbue" - }, - { - "src": "http://fonts.gstatic.com/s/imbue/v21/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoP5aXfOsNNK-Q4xY.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Imbue" - }, - { - "src": "http://fonts.gstatic.com/s/imbue/v21/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoP8iXfOsNNK-Q4xY.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Imbue" - }, - { - "src": "http://fonts.gstatic.com/s/imbue/v21/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoP_qXfOsNNK-Q4xY.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Imbue" - }, - { - "src": "http://fonts.gstatic.com/s/imbue/v21/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoPxaQfOsNNK-Q4xY.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Imbue" - }, - { - "src": "http://fonts.gstatic.com/s/imbue/v21/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoPy-QfOsNNK-Q4xY.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Imbue" - }, - { - "src": "http://fonts.gstatic.com/s/imbue/v21/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoP0iQfOsNNK-Q4xY.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Imbue" - }, - { - "src": "http://fonts.gstatic.com/s/imbue/v21/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoP2GQfOsNNK-Q4xY.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Imbue" - } - ] - }, - { - "name": "Imperial Script", - "fontFamily": "Imperial Script, cursive", - "slug": "imperial-script", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/imperialscript/v3/5DCPAKrpzy_H98IV2ISnZBbGrVNvPenlvttWNg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Imperial Script" - } - ] - }, - { - "name": "Imprima", - "fontFamily": "Imprima, sans-serif", - "slug": "imprima", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/imprima/v18/VEMxRoN7sY3yuy-7-oWHyDzktPo.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Imprima" - } - ] - }, - { - "name": "Inconsolata", - "fontFamily": "Inconsolata, monospace", - "slug": "inconsolata", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/inconsolata/v31/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7LppwU8aRr8lleY2co.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Inconsolata" - }, - { - "src": "http://fonts.gstatic.com/s/inconsolata/v31/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7Lpp9s8aRr8lleY2co.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Inconsolata" - }, - { - "src": "http://fonts.gstatic.com/s/inconsolata/v31/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7Lpp4U8aRr8lleY2co.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Inconsolata" - }, - { - "src": "http://fonts.gstatic.com/s/inconsolata/v31/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7Lpp7c8aRr8lleY2co.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Inconsolata" - }, - { - "src": "http://fonts.gstatic.com/s/inconsolata/v31/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7Lpp1s7aRr8lleY2co.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Inconsolata" - }, - { - "src": "http://fonts.gstatic.com/s/inconsolata/v31/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7Lpp2I7aRr8lleY2co.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Inconsolata" - }, - { - "src": "http://fonts.gstatic.com/s/inconsolata/v31/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7LppwU7aRr8lleY2co.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Inconsolata" - }, - { - "src": "http://fonts.gstatic.com/s/inconsolata/v31/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7Lppyw7aRr8lleY2co.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Inconsolata" - } - ] - }, - { - "name": "Inder", - "fontFamily": "Inder, sans-serif", - "slug": "inder", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/inder/v14/w8gUH2YoQe8_4vq6pw-P3U4O.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Inder" - } - ] - }, - { - "name": "Indie Flower", - "fontFamily": "Indie Flower, cursive", - "slug": "indie-flower", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/indieflower/v17/m8JVjfNVeKWVnh3QMuKkFcZlbkGG1dKEDw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Indie Flower" - } - ] - }, - { - "name": "Ingrid Darling", - "fontFamily": "Ingrid Darling, cursive", - "slug": "ingrid-darling", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ingriddarling/v2/LDIrapaJNxUtSuFdw-9yf4rCPsLOub458jGL.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Ingrid Darling" - } - ] - }, - { - "name": "Inika", - "fontFamily": "Inika, serif", - "slug": "inika", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/inika/v21/rnCm-x5X3QP-phTHRcc2s2XH.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Inika" - }, - { - "src": "http://fonts.gstatic.com/s/inika/v21/rnCr-x5X3QP-pix7auM-mHnOSOuk.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Inika" - } - ] - }, - { - "name": "Inknut Antiqua", - "fontFamily": "Inknut Antiqua, serif", - "slug": "inknut-antiqua", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/inknutantiqua/v14/Y4GRYax7VC4ot_qNB4nYpBdaKU2vwrj5bBoIYJNf.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Inknut Antiqua" - }, - { - "src": "http://fonts.gstatic.com/s/inknutantiqua/v14/Y4GSYax7VC4ot_qNB4nYpBdaKXUD6pzxRwYB.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Inknut Antiqua" - }, - { - "src": "http://fonts.gstatic.com/s/inknutantiqua/v14/Y4GRYax7VC4ot_qNB4nYpBdaKU33w7j5bBoIYJNf.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Inknut Antiqua" - }, - { - "src": "http://fonts.gstatic.com/s/inknutantiqua/v14/Y4GRYax7VC4ot_qNB4nYpBdaKU3bxLj5bBoIYJNf.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Inknut Antiqua" - }, - { - "src": "http://fonts.gstatic.com/s/inknutantiqua/v14/Y4GRYax7VC4ot_qNB4nYpBdaKU2_xbj5bBoIYJNf.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Inknut Antiqua" - }, - { - "src": "http://fonts.gstatic.com/s/inknutantiqua/v14/Y4GRYax7VC4ot_qNB4nYpBdaKU2jxrj5bBoIYJNf.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Inknut Antiqua" - }, - { - "src": "http://fonts.gstatic.com/s/inknutantiqua/v14/Y4GRYax7VC4ot_qNB4nYpBdaKU2Hx7j5bBoIYJNf.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Inknut Antiqua" - } - ] - }, - { - "name": "Inria Sans", - "fontFamily": "Inria Sans, sans-serif", - "slug": "inria-sans", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/inriasans/v14/ptRPTiqXYfZMCOiVj9kQ3ELaDQtFqeY3fX4.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Inria Sans" - }, - { - "src": "http://fonts.gstatic.com/s/inriasans/v14/ptRRTiqXYfZMCOiVj9kQ1OzAgQlPrcQybX4pQA.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Inria Sans" - }, - { - "src": "http://fonts.gstatic.com/s/inriasans/v14/ptRMTiqXYfZMCOiVj9kQ5O7yKQNute8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Inria Sans" - }, - { - "src": "http://fonts.gstatic.com/s/inriasans/v14/ptROTiqXYfZMCOiVj9kQ1Oz4LSFrpe8uZA.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Inria Sans" - }, - { - "src": "http://fonts.gstatic.com/s/inriasans/v14/ptRPTiqXYfZMCOiVj9kQ3FLdDQtFqeY3fX4.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Inria Sans" - }, - { - "src": "http://fonts.gstatic.com/s/inriasans/v14/ptRRTiqXYfZMCOiVj9kQ1OzAkQ5PrcQybX4pQA.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Inria Sans" - } - ] - }, - { - "name": "Inria Serif", - "fontFamily": "Inria Serif, serif", - "slug": "inria-serif", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/inriaserif/v14/fC14PYxPY3rXxEndZJAzN3wAVQjFhFyta3xN.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Inria Serif" - }, - { - "src": "http://fonts.gstatic.com/s/inriaserif/v14/fC16PYxPY3rXxEndZJAzN3SuT4THjliPbmxN0_E.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Inria Serif" - }, - { - "src": "http://fonts.gstatic.com/s/inriaserif/v14/fC1lPYxPY3rXxEndZJAzN0SsfSzNr0Ck.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Inria Serif" - }, - { - "src": "http://fonts.gstatic.com/s/inriaserif/v14/fC1nPYxPY3rXxEndZJAzN3SudyjvqlCkcmU.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Inria Serif" - }, - { - "src": "http://fonts.gstatic.com/s/inriaserif/v14/fC14PYxPY3rXxEndZJAzN3wQUgjFhFyta3xN.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Inria Serif" - }, - { - "src": "http://fonts.gstatic.com/s/inriaserif/v14/fC16PYxPY3rXxEndZJAzN3SuT5TAjliPbmxN0_E.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Inria Serif" - } - ] - }, - { - "name": "Inspiration", - "fontFamily": "Inspiration, cursive", - "slug": "inspiration", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/inspiration/v3/x3dkckPPZa6L4wIg5cZOEvoGnSrlBBsy.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Inspiration" - } - ] - }, - { - "name": "Instrument Sans", - "fontFamily": "Instrument Sans, sans-serif", - "slug": "instrument-sans", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/instrumentsans/v1/pximypc9vsFDm051Uf6KVwgkfoSxQ0GsQv8ToedPibnr-yp2JGEJOH9npSTF-Qf1mS0v3_7Y.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Instrument Sans" - }, - { - "src": "http://fonts.gstatic.com/s/instrumentsans/v1/pximypc9vsFDm051Uf6KVwgkfoSxQ0GsQv8ToedPibnr-yp2JGEJOH9npST3-Qf1mS0v3_7Y.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Instrument Sans" - }, - { - "src": "http://fonts.gstatic.com/s/instrumentsans/v1/pximypc9vsFDm051Uf6KVwgkfoSxQ0GsQv8ToedPibnr-yp2JGEJOH9npSQb_gf1mS0v3_7Y.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Instrument Sans" - }, - { - "src": "http://fonts.gstatic.com/s/instrumentsans/v1/pximypc9vsFDm051Uf6KVwgkfoSxQ0GsQv8ToedPibnr-yp2JGEJOH9npSQi_gf1mS0v3_7Y.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Instrument Sans" - }, - { - "src": "http://fonts.gstatic.com/s/instrumentsans/v1/pxigypc9vsFDm051Uf6KVwgkfoSbSnNPooZAN0lInHGpCWNE27lgU-XJojENuu-2kykN2u7YUwU.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Instrument Sans" - }, - { - "src": "http://fonts.gstatic.com/s/instrumentsans/v1/pxigypc9vsFDm051Uf6KVwgkfoSbSnNPooZAN0lInHGpCWNE27lgU-XJojENut22kykN2u7YUwU.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Instrument Sans" - }, - { - "src": "http://fonts.gstatic.com/s/instrumentsans/v1/pxigypc9vsFDm051Uf6KVwgkfoSbSnNPooZAN0lInHGpCWNE27lgU-XJojENujGxkykN2u7YUwU.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Instrument Sans" - }, - { - "src": "http://fonts.gstatic.com/s/instrumentsans/v1/pxigypc9vsFDm051Uf6KVwgkfoSbSnNPooZAN0lInHGpCWNE27lgU-XJojENugixkykN2u7YUwU.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Instrument Sans" - } - ] - }, - { - "name": "Instrument Serif", - "fontFamily": "Instrument Serif, serif", - "slug": "instrument-serif", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/instrumentserif/v4/jizBRFtNs2ka5fXjeivQ4LroWlx-2zIZj1bIkNo.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Instrument Serif" - }, - { - "src": "http://fonts.gstatic.com/s/instrumentserif/v4/jizHRFtNs2ka5fXjeivQ4LroWlx-6zATi3TNgNq55w.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Instrument Serif" - } - ] - }, - { - "name": "Inter", - "fontFamily": "Inter, sans-serif", - "slug": "inter", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/inter/v12/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyeMZhrib2Bg-4.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Inter" - }, - { - "src": "http://fonts.gstatic.com/s/inter/v12/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuDyfMZhrib2Bg-4.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Inter" - }, - { - "src": "http://fonts.gstatic.com/s/inter/v12/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuOKfMZhrib2Bg-4.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Inter" - }, - { - "src": "http://fonts.gstatic.com/s/inter/v12/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfMZhrib2Bg-4.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Inter" - }, - { - "src": "http://fonts.gstatic.com/s/inter/v12/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuI6fMZhrib2Bg-4.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Inter" - }, - { - "src": "http://fonts.gstatic.com/s/inter/v12/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuGKYMZhrib2Bg-4.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Inter" - }, - { - "src": "http://fonts.gstatic.com/s/inter/v12/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuFuYMZhrib2Bg-4.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Inter" - }, - { - "src": "http://fonts.gstatic.com/s/inter/v12/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuDyYMZhrib2Bg-4.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Inter" - }, - { - "src": "http://fonts.gstatic.com/s/inter/v12/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuBWYMZhrib2Bg-4.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Inter" - } - ] - }, - { - "name": "Inter Tight", - "fontFamily": "Inter Tight, sans-serif", - "slug": "inter-tight", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/intertight/v3/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mjDw6qXCRToK8EPg.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Inter Tight" - }, - { - "src": "http://fonts.gstatic.com/s/intertight/v3/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mjjw-qXCRToK8EPg.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Inter Tight" - }, - { - "src": "http://fonts.gstatic.com/s/intertight/v3/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mjUQ-qXCRToK8EPg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Inter Tight" - }, - { - "src": "http://fonts.gstatic.com/s/intertight/v3/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mjDw-qXCRToK8EPg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Inter Tight" - }, - { - "src": "http://fonts.gstatic.com/s/intertight/v3/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mjPQ-qXCRToK8EPg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Inter Tight" - }, - { - "src": "http://fonts.gstatic.com/s/intertight/v3/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mj0QiqXCRToK8EPg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Inter Tight" - }, - { - "src": "http://fonts.gstatic.com/s/intertight/v3/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mj6AiqXCRToK8EPg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Inter Tight" - }, - { - "src": "http://fonts.gstatic.com/s/intertight/v3/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mjjwiqXCRToK8EPg.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Inter Tight" - }, - { - "src": "http://fonts.gstatic.com/s/intertight/v3/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mjpgiqXCRToK8EPg.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Inter Tight" - }, - { - "src": "http://fonts.gstatic.com/s/intertight/v3/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0xCHi5XgqoUPvi5.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Inter Tight" - }, - { - "src": "http://fonts.gstatic.com/s/intertight/v3/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0zCHy5XgqoUPvi5.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Inter Tight" - }, - { - "src": "http://fonts.gstatic.com/s/intertight/v3/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0wcHy5XgqoUPvi5.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Inter Tight" - }, - { - "src": "http://fonts.gstatic.com/s/intertight/v3/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0xCHy5XgqoUPvi5.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Inter Tight" - }, - { - "src": "http://fonts.gstatic.com/s/intertight/v3/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0xwHy5XgqoUPvi5.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Inter Tight" - }, - { - "src": "http://fonts.gstatic.com/s/intertight/v3/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0ycGC5XgqoUPvi5.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Inter Tight" - }, - { - "src": "http://fonts.gstatic.com/s/intertight/v3/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0ylGC5XgqoUPvi5.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Inter Tight" - }, - { - "src": "http://fonts.gstatic.com/s/intertight/v3/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0zCGC5XgqoUPvi5.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Inter Tight" - }, - { - "src": "http://fonts.gstatic.com/s/intertight/v3/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0zrGC5XgqoUPvi5.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Inter Tight" - } - ] - }, - { - "name": "Irish Grover", - "fontFamily": "Irish Grover, system-ui", - "slug": "irish-grover", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/irishgrover/v23/buExpoi6YtLz2QW7LA4flVgf-P5Oaiw4cw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Irish Grover" - } - ] - }, - { - "name": "Island Moments", - "fontFamily": "Island Moments, cursive", - "slug": "island-moments", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/islandmoments/v3/NaPBcZfVGvBdxIt7Ar0qzkXJF-TGIohbZ6SY.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Island Moments" - } - ] - }, - { - "name": "Istok Web", - "fontFamily": "Istok Web, sans-serif", - "slug": "istok-web", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/istokweb/v21/3qTvojGmgSyUukBzKslZAWF-9kIIaQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Istok Web" - }, - { - "src": "http://fonts.gstatic.com/s/istokweb/v21/3qTpojGmgSyUukBzKslpA2t61EcYaQ7F.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Istok Web" - }, - { - "src": "http://fonts.gstatic.com/s/istokweb/v21/3qTqojGmgSyUukBzKslhvU5a_mkUYBfcMw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Istok Web" - }, - { - "src": "http://fonts.gstatic.com/s/istokweb/v21/3qT0ojGmgSyUukBzKslpA1PG-2MQQhLMMygN.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Istok Web" - } - ] - }, - { - "name": "Italiana", - "fontFamily": "Italiana, serif", - "slug": "italiana", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/italiana/v16/QldNNTtLsx4E__B0XTmRY31Wx7Vv.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Italiana" - } - ] - }, - { - "name": "Italianno", - "fontFamily": "Italianno, cursive", - "slug": "italianno", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/italianno/v17/dg4n_p3sv6gCJkwzT6Rnj5YpQwM-gg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Italianno" - } - ] - }, - { - "name": "Itim", - "fontFamily": "Itim, cursive", - "slug": "itim", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/itim/v11/0nknC9ziJOYewARKkc7ZdwU.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Itim" - } - ] - }, - { - "name": "Jacques Francois", - "fontFamily": "Jacques Francois, serif", - "slug": "jacques-francois", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/jacquesfrancois/v20/ZXu9e04ZvKeOOHIe1TMahbcIU2cgmcPqoeRWfbs.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Jacques Francois" - } - ] - }, - { - "name": "Jacques Francois Shadow", - "fontFamily": "Jacques Francois Shadow, system-ui", - "slug": "jacques-francois-shadow", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/jacquesfrancoisshadow/v21/KR1FBtOz8PKTMk-kqdkLVrvR0ECFrB6Pin-2_q8VsHuV5ULS.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Jacques Francois Shadow" - } - ] - }, - { - "name": "Jaldi", - "fontFamily": "Jaldi, sans-serif", - "slug": "jaldi", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/jaldi/v12/or3sQ67z0_CI30NUZpD_B6g8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Jaldi" - }, - { - "src": "http://fonts.gstatic.com/s/jaldi/v12/or3hQ67z0_CI33voSbT3LLQ1niPn.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Jaldi" - } - ] - }, - { - "name": "JetBrains Mono", - "fontFamily": "JetBrains Mono, monospace", - "slug": "jetbrains-mono", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/jetbrainsmono/v18/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yK1jPVmUsaaDhw.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "JetBrains Mono" - }, - { - "src": "http://fonts.gstatic.com/s/jetbrainsmono/v18/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8SKxjPVmUsaaDhw.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "JetBrains Mono" - }, - { - "src": "http://fonts.gstatic.com/s/jetbrainsmono/v18/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8lqxjPVmUsaaDhw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "JetBrains Mono" - }, - { - "src": "http://fonts.gstatic.com/s/jetbrainsmono/v18/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKxjPVmUsaaDhw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "JetBrains Mono" - }, - { - "src": "http://fonts.gstatic.com/s/jetbrainsmono/v18/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8-qxjPVmUsaaDhw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "JetBrains Mono" - }, - { - "src": "http://fonts.gstatic.com/s/jetbrainsmono/v18/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8FqtjPVmUsaaDhw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "JetBrains Mono" - }, - { - "src": "http://fonts.gstatic.com/s/jetbrainsmono/v18/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8L6tjPVmUsaaDhw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "JetBrains Mono" - }, - { - "src": "http://fonts.gstatic.com/s/jetbrainsmono/v18/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8SKtjPVmUsaaDhw.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "JetBrains Mono" - }, - { - "src": "http://fonts.gstatic.com/s/jetbrainsmono/v18/tDba2o-flEEny0FZhsfKu5WU4xD-IQ-PuZJJXxfpAO-Lf1OQk6OThxPA.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "JetBrains Mono" - }, - { - "src": "http://fonts.gstatic.com/s/jetbrainsmono/v18/tDba2o-flEEny0FZhsfKu5WU4xD-IQ-PuZJJXxfpAO8LflOQk6OThxPA.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "JetBrains Mono" - }, - { - "src": "http://fonts.gstatic.com/s/jetbrainsmono/v18/tDba2o-flEEny0FZhsfKu5WU4xD-IQ-PuZJJXxfpAO_VflOQk6OThxPA.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "JetBrains Mono" - }, - { - "src": "http://fonts.gstatic.com/s/jetbrainsmono/v18/tDba2o-flEEny0FZhsfKu5WU4xD-IQ-PuZJJXxfpAO-LflOQk6OThxPA.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "JetBrains Mono" - }, - { - "src": "http://fonts.gstatic.com/s/jetbrainsmono/v18/tDba2o-flEEny0FZhsfKu5WU4xD-IQ-PuZJJXxfpAO-5flOQk6OThxPA.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "JetBrains Mono" - }, - { - "src": "http://fonts.gstatic.com/s/jetbrainsmono/v18/tDba2o-flEEny0FZhsfKu5WU4xD-IQ-PuZJJXxfpAO9VeVOQk6OThxPA.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "JetBrains Mono" - }, - { - "src": "http://fonts.gstatic.com/s/jetbrainsmono/v18/tDba2o-flEEny0FZhsfKu5WU4xD-IQ-PuZJJXxfpAO9seVOQk6OThxPA.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "JetBrains Mono" - }, - { - "src": "http://fonts.gstatic.com/s/jetbrainsmono/v18/tDba2o-flEEny0FZhsfKu5WU4xD-IQ-PuZJJXxfpAO8LeVOQk6OThxPA.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "JetBrains Mono" - } - ] - }, - { - "name": "Jim Nightshade", - "fontFamily": "Jim Nightshade, cursive", - "slug": "jim-nightshade", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/jimnightshade/v20/PlIkFlu9Pb08Q8HLM1PxmB0g-OS4V3qKaMxD.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Jim Nightshade" - } - ] - }, - { - "name": "Joan", - "fontFamily": "Joan, serif", - "slug": "joan", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/joan/v2/ZXupe1oZsqWRbRdH8X1p_Ng.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Joan" - } - ] - }, - { - "name": "Jockey One", - "fontFamily": "Jockey One, sans-serif", - "slug": "jockey-one", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/jockeyone/v16/HTxpL2g2KjCFj4x8WI6ArIb7HYOk4xc.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Jockey One" - } - ] - }, - { - "name": "Jolly Lodger", - "fontFamily": "Jolly Lodger, system-ui", - "slug": "jolly-lodger", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/jollylodger/v20/BXRsvFTAh_bGkA1uQ48dlB3VWerT3ZyuqA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Jolly Lodger" - } - ] - }, - { - "name": "Jomhuria", - "fontFamily": "Jomhuria, system-ui", - "slug": "jomhuria", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/jomhuria/v18/Dxxp8j-TMXf-llKur2b1MOGbC3Dh.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Jomhuria" - } - ] - }, - { - "name": "Jomolhari", - "fontFamily": "Jomolhari, serif", - "slug": "jomolhari", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/jomolhari/v14/EvONzA1M1Iw_CBd2hsQCF1IZKq5INg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Jomolhari" - } - ] - }, - { - "name": "Josefin Sans", - "fontFamily": "Josefin Sans, sans-serif", - "slug": "josefin-sans", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/josefinsans/v26/Qw3PZQNVED7rKGKxtqIqX5E-AVSJrOCfjY46_DjRXMFrLgTsQV0.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Josefin Sans" - }, - { - "src": "http://fonts.gstatic.com/s/josefinsans/v26/Qw3PZQNVED7rKGKxtqIqX5E-AVSJrOCfjY46_LjQXMFrLgTsQV0.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Josefin Sans" - }, - { - "src": "http://fonts.gstatic.com/s/josefinsans/v26/Qw3PZQNVED7rKGKxtqIqX5E-AVSJrOCfjY46_GbQXMFrLgTsQV0.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Josefin Sans" - }, - { - "src": "http://fonts.gstatic.com/s/josefinsans/v26/Qw3PZQNVED7rKGKxtqIqX5E-AVSJrOCfjY46_DjQXMFrLgTsQV0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Josefin Sans" - }, - { - "src": "http://fonts.gstatic.com/s/josefinsans/v26/Qw3PZQNVED7rKGKxtqIqX5E-AVSJrOCfjY46_ArQXMFrLgTsQV0.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Josefin Sans" - }, - { - "src": "http://fonts.gstatic.com/s/josefinsans/v26/Qw3PZQNVED7rKGKxtqIqX5E-AVSJrOCfjY46_ObXXMFrLgTsQV0.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Josefin Sans" - }, - { - "src": "http://fonts.gstatic.com/s/josefinsans/v26/Qw3PZQNVED7rKGKxtqIqX5E-AVSJrOCfjY46_N_XXMFrLgTsQV0.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Josefin Sans" - }, - { - "src": "http://fonts.gstatic.com/s/josefinsans/v26/Qw3JZQNVED7rKGKxtqIqX5EUCGZ2dIn0FyA96fCTtINhKibpUV3MEQ.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Josefin Sans" - }, - { - "src": "http://fonts.gstatic.com/s/josefinsans/v26/Qw3JZQNVED7rKGKxtqIqX5EUCGZ2dIn0FyA96fCTNIJhKibpUV3MEQ.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Josefin Sans" - }, - { - "src": "http://fonts.gstatic.com/s/josefinsans/v26/Qw3JZQNVED7rKGKxtqIqX5EUCGZ2dIn0FyA96fCT6oJhKibpUV3MEQ.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Josefin Sans" - }, - { - "src": "http://fonts.gstatic.com/s/josefinsans/v26/Qw3JZQNVED7rKGKxtqIqX5EUCGZ2dIn0FyA96fCTtIJhKibpUV3MEQ.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Josefin Sans" - }, - { - "src": "http://fonts.gstatic.com/s/josefinsans/v26/Qw3JZQNVED7rKGKxtqIqX5EUCGZ2dIn0FyA96fCThoJhKibpUV3MEQ.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Josefin Sans" - }, - { - "src": "http://fonts.gstatic.com/s/josefinsans/v26/Qw3JZQNVED7rKGKxtqIqX5EUCGZ2dIn0FyA96fCTaoVhKibpUV3MEQ.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Josefin Sans" - }, - { - "src": "http://fonts.gstatic.com/s/josefinsans/v26/Qw3JZQNVED7rKGKxtqIqX5EUCGZ2dIn0FyA96fCTU4VhKibpUV3MEQ.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Josefin Sans" - } - ] - }, - { - "name": "Josefin Slab", - "fontFamily": "Josefin Slab, serif", - "slug": "josefin-slab", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/josefinslab/v24/lW-swjwOK3Ps5GSJlNNkMalNpiZe_ldbOR4W71mtd3k3K6CcEyI.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Josefin Slab" - }, - { - "src": "http://fonts.gstatic.com/s/josefinslab/v24/lW-swjwOK3Ps5GSJlNNkMalNpiZe_ldbOR4W79msd3k3K6CcEyI.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Josefin Slab" - }, - { - "src": "http://fonts.gstatic.com/s/josefinslab/v24/lW-swjwOK3Ps5GSJlNNkMalNpiZe_ldbOR4W7wesd3k3K6CcEyI.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Josefin Slab" - }, - { - "src": "http://fonts.gstatic.com/s/josefinslab/v24/lW-swjwOK3Ps5GSJlNNkMalNpiZe_ldbOR4W71msd3k3K6CcEyI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Josefin Slab" - }, - { - "src": "http://fonts.gstatic.com/s/josefinslab/v24/lW-swjwOK3Ps5GSJlNNkMalNpiZe_ldbOR4W72usd3k3K6CcEyI.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Josefin Slab" - }, - { - "src": "http://fonts.gstatic.com/s/josefinslab/v24/lW-swjwOK3Ps5GSJlNNkMalNpiZe_ldbOR4W74erd3k3K6CcEyI.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Josefin Slab" - }, - { - "src": "http://fonts.gstatic.com/s/josefinslab/v24/lW-swjwOK3Ps5GSJlNNkMalNpiZe_ldbOR4W776rd3k3K6CcEyI.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Josefin Slab" - }, - { - "src": "http://fonts.gstatic.com/s/josefinslab/v24/lW-qwjwOK3Ps5GSJlNNkMalnrxShJj4wo7AR-pHvnzs9L4KZAyK43w.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Josefin Slab" - }, - { - "src": "http://fonts.gstatic.com/s/josefinslab/v24/lW-qwjwOK3Ps5GSJlNNkMalnrxShJj4wo7AR-pHvHzo9L4KZAyK43w.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Josefin Slab" - }, - { - "src": "http://fonts.gstatic.com/s/josefinslab/v24/lW-qwjwOK3Ps5GSJlNNkMalnrxShJj4wo7AR-pHvwTo9L4KZAyK43w.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Josefin Slab" - }, - { - "src": "http://fonts.gstatic.com/s/josefinslab/v24/lW-qwjwOK3Ps5GSJlNNkMalnrxShJj4wo7AR-pHvnzo9L4KZAyK43w.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Josefin Slab" - }, - { - "src": "http://fonts.gstatic.com/s/josefinslab/v24/lW-qwjwOK3Ps5GSJlNNkMalnrxShJj4wo7AR-pHvrTo9L4KZAyK43w.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Josefin Slab" - }, - { - "src": "http://fonts.gstatic.com/s/josefinslab/v24/lW-qwjwOK3Ps5GSJlNNkMalnrxShJj4wo7AR-pHvQT09L4KZAyK43w.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Josefin Slab" - }, - { - "src": "http://fonts.gstatic.com/s/josefinslab/v24/lW-qwjwOK3Ps5GSJlNNkMalnrxShJj4wo7AR-pHveD09L4KZAyK43w.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Josefin Slab" - } - ] - }, - { - "name": "Jost", - "fontFamily": "Jost, sans-serif", - "slug": "jost", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/jost/v14/92zPtBhPNqw79Ij1E865zBUv7myjJAVGPokMmuHL.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Jost" - }, - { - "src": "http://fonts.gstatic.com/s/jost/v14/92zPtBhPNqw79Ij1E865zBUv7mwjJQVGPokMmuHL.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Jost" - }, - { - "src": "http://fonts.gstatic.com/s/jost/v14/92zPtBhPNqw79Ij1E865zBUv7mz9JQVGPokMmuHL.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Jost" - }, - { - "src": "http://fonts.gstatic.com/s/jost/v14/92zPtBhPNqw79Ij1E865zBUv7myjJQVGPokMmuHL.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Jost" - }, - { - "src": "http://fonts.gstatic.com/s/jost/v14/92zPtBhPNqw79Ij1E865zBUv7myRJQVGPokMmuHL.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Jost" - }, - { - "src": "http://fonts.gstatic.com/s/jost/v14/92zPtBhPNqw79Ij1E865zBUv7mx9IgVGPokMmuHL.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Jost" - }, - { - "src": "http://fonts.gstatic.com/s/jost/v14/92zPtBhPNqw79Ij1E865zBUv7mxEIgVGPokMmuHL.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Jost" - }, - { - "src": "http://fonts.gstatic.com/s/jost/v14/92zPtBhPNqw79Ij1E865zBUv7mwjIgVGPokMmuHL.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Jost" - }, - { - "src": "http://fonts.gstatic.com/s/jost/v14/92zPtBhPNqw79Ij1E865zBUv7mwKIgVGPokMmuHL.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Jost" - }, - { - "src": "http://fonts.gstatic.com/s/jost/v14/92zJtBhPNqw73oHH7BbQp4-B6XlrZu0ENI0un_HLMEo.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Jost" - }, - { - "src": "http://fonts.gstatic.com/s/jost/v14/92zJtBhPNqw73oHH7BbQp4-B6XlrZm0FNI0un_HLMEo.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Jost" - }, - { - "src": "http://fonts.gstatic.com/s/jost/v14/92zJtBhPNqw73oHH7BbQp4-B6XlrZrMFNI0un_HLMEo.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Jost" - }, - { - "src": "http://fonts.gstatic.com/s/jost/v14/92zJtBhPNqw73oHH7BbQp4-B6XlrZu0FNI0un_HLMEo.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Jost" - }, - { - "src": "http://fonts.gstatic.com/s/jost/v14/92zJtBhPNqw73oHH7BbQp4-B6XlrZt8FNI0un_HLMEo.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Jost" - }, - { - "src": "http://fonts.gstatic.com/s/jost/v14/92zJtBhPNqw73oHH7BbQp4-B6XlrZjMCNI0un_HLMEo.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Jost" - }, - { - "src": "http://fonts.gstatic.com/s/jost/v14/92zJtBhPNqw73oHH7BbQp4-B6XlrZgoCNI0un_HLMEo.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Jost" - }, - { - "src": "http://fonts.gstatic.com/s/jost/v14/92zJtBhPNqw73oHH7BbQp4-B6XlrZm0CNI0un_HLMEo.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Jost" - }, - { - "src": "http://fonts.gstatic.com/s/jost/v14/92zJtBhPNqw73oHH7BbQp4-B6XlrZkQCNI0un_HLMEo.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Jost" - } - ] - }, - { - "name": "Joti One", - "fontFamily": "Joti One, system-ui", - "slug": "joti-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/jotione/v22/Z9XVDmdJQAmWm9TwaYTe4u2El6GC.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Joti One" - } - ] - }, - { - "name": "Jua", - "fontFamily": "Jua, sans-serif", - "slug": "jua", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/jua/v13/co3KmW9ljjAjc-DZCsKgsg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Jua" - } - ] - }, - { - "name": "Judson", - "fontFamily": "Judson, serif", - "slug": "judson", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/judson/v19/FeVRS0Fbvbc14VxRD7N01bV7kg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Judson" - }, - { - "src": "http://fonts.gstatic.com/s/judson/v19/FeVTS0Fbvbc14VxhDblw97BrknZf.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Judson" - }, - { - "src": "http://fonts.gstatic.com/s/judson/v19/FeVSS0Fbvbc14Vxps5xQ3Z5nm29Gww.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Judson" - } - ] - }, - { - "name": "Julee", - "fontFamily": "Julee, cursive", - "slug": "julee", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/julee/v25/TuGfUVB3RpZPQ6ZLodgzydtk.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Julee" - } - ] - }, - { - "name": "Julius Sans One", - "fontFamily": "Julius Sans One, sans-serif", - "slug": "julius-sans-one", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/juliussansone/v14/1Pt2g8TAX_SGgBGUi0tGOYEga5W-xXEW6aGXHw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Julius Sans One" - } - ] - }, - { - "name": "Junge", - "fontFamily": "Junge, serif", - "slug": "junge", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/junge/v20/gokgH670Gl1lUqAdvhB7SnKm.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Junge" - } - ] - }, - { - "name": "Jura", - "fontFamily": "Jura, sans-serif", - "slug": "jura", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/jura/v29/z7NOdRfiaC4Vd8hhoPzfb5vBTP0D7auhTfmrH_rt.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Jura" - }, - { - "src": "http://fonts.gstatic.com/s/jura/v29/z7NOdRfiaC4Vd8hhoPzfb5vBTP1d7auhTfmrH_rt.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Jura" - }, - { - "src": "http://fonts.gstatic.com/s/jura/v29/z7NOdRfiaC4Vd8hhoPzfb5vBTP1v7auhTfmrH_rt.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Jura" - }, - { - "src": "http://fonts.gstatic.com/s/jura/v29/z7NOdRfiaC4Vd8hhoPzfb5vBTP2D6quhTfmrH_rt.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Jura" - }, - { - "src": "http://fonts.gstatic.com/s/jura/v29/z7NOdRfiaC4Vd8hhoPzfb5vBTP266quhTfmrH_rt.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Jura" - } - ] - }, - { - "name": "Just Another Hand", - "fontFamily": "Just Another Hand, cursive", - "slug": "just-another-hand", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/justanotherhand/v19/845CNN4-AJyIGvIou-6yJKyptyOpOcr_BmmlS5aw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Just Another Hand" - } - ] - }, - { - "name": "Just Me Again Down Here", - "fontFamily": "Just Me Again Down Here, cursive", - "slug": "just-me-again-down-here", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/justmeagaindownhere/v24/MwQmbgXtz-Wc6RUEGNMc0QpRrfUh2hSdBBMoAuwHvqDwc_fg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Just Me Again Down Here" - } - ] - }, - { - "name": "K2D", - "fontFamily": "K2D, sans-serif", - "slug": "k2d", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/k2d/v9/J7aRnpF2V0ErE6UpvrIw74NL.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "K2D" - }, - { - "src": "http://fonts.gstatic.com/s/k2d/v9/J7afnpF2V0EjdZ1NtLYS6pNLAjk.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "K2D" - }, - { - "src": "http://fonts.gstatic.com/s/k2d/v9/J7aenpF2V0Erv4QJlJw85ppSGw.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "K2D" - }, - { - "src": "http://fonts.gstatic.com/s/k2d/v9/J7acnpF2V0EjdZ3hlZY4xJ9CGyAa.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "K2D" - }, - { - "src": "http://fonts.gstatic.com/s/k2d/v9/J7aenpF2V0Er24cJlJw85ppSGw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "K2D" - }, - { - "src": "http://fonts.gstatic.com/s/k2d/v9/J7acnpF2V0EjdZ2FlpY4xJ9CGyAa.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "K2D" - }, - { - "src": "http://fonts.gstatic.com/s/k2d/v9/J7aTnpF2V0ETd68tnLcg7w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "K2D" - }, - { - "src": "http://fonts.gstatic.com/s/k2d/v9/J7aRnpF2V0EjdaUpvrIw74NL.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "K2D" - }, - { - "src": "http://fonts.gstatic.com/s/k2d/v9/J7aenpF2V0Erg4YJlJw85ppSGw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "K2D" - }, - { - "src": "http://fonts.gstatic.com/s/k2d/v9/J7acnpF2V0EjdZ3dl5Y4xJ9CGyAa.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "K2D" - }, - { - "src": "http://fonts.gstatic.com/s/k2d/v9/J7aenpF2V0Err4EJlJw85ppSGw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "K2D" - }, - { - "src": "http://fonts.gstatic.com/s/k2d/v9/J7acnpF2V0EjdZ3xkJY4xJ9CGyAa.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "K2D" - }, - { - "src": "http://fonts.gstatic.com/s/k2d/v9/J7aenpF2V0Ery4AJlJw85ppSGw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "K2D" - }, - { - "src": "http://fonts.gstatic.com/s/k2d/v9/J7acnpF2V0EjdZ2VkZY4xJ9CGyAa.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "K2D" - }, - { - "src": "http://fonts.gstatic.com/s/k2d/v9/J7aenpF2V0Er14MJlJw85ppSGw.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "K2D" - }, - { - "src": "http://fonts.gstatic.com/s/k2d/v9/J7acnpF2V0EjdZ2JkpY4xJ9CGyAa.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "K2D" - } - ] - }, - { - "name": "Kadwa", - "fontFamily": "Kadwa, serif", - "slug": "kadwa", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kadwa/v10/rnCm-x5V0g7iphTHRcc2s2XH.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kadwa" - }, - { - "src": "http://fonts.gstatic.com/s/kadwa/v10/rnCr-x5V0g7ipix7auM-mHnOSOuk.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Kadwa" - } - ] - }, - { - "name": "Kaisei Decol", - "fontFamily": "Kaisei Decol, serif", - "slug": "kaisei-decol", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kaiseidecol/v8/bMrwmSqP45sidWf3QmfFW6iyW1EP22OjoA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kaisei Decol" - }, - { - "src": "http://fonts.gstatic.com/s/kaiseidecol/v8/bMrvmSqP45sidWf3QmfFW6iKr3gr00i_qb57kA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Kaisei Decol" - }, - { - "src": "http://fonts.gstatic.com/s/kaiseidecol/v8/bMrvmSqP45sidWf3QmfFW6iK534r00i_qb57kA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Kaisei Decol" - } - ] - }, - { - "name": "Kaisei HarunoUmi", - "fontFamily": "Kaisei HarunoUmi, serif", - "slug": "kaisei-harunoumi", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kaiseiharunoumi/v8/HI_RiZQSLqBQoAHhK_C6N_nzy_jcGsv5sM8u3mk.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kaisei HarunoUmi" - }, - { - "src": "http://fonts.gstatic.com/s/kaiseiharunoumi/v8/HI_WiZQSLqBQoAHhK_C6N_nzy_jcIj_QlMcFwmC9FAU.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Kaisei HarunoUmi" - }, - { - "src": "http://fonts.gstatic.com/s/kaiseiharunoumi/v8/HI_WiZQSLqBQoAHhK_C6N_nzy_jcInfWlMcFwmC9FAU.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Kaisei HarunoUmi" - } - ] - }, - { - "name": "Kaisei Opti", - "fontFamily": "Kaisei Opti, serif", - "slug": "kaisei-opti", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kaiseiopti/v8/QldKNThJphYb8_g6c2nlIFle7KlmxuHx.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kaisei Opti" - }, - { - "src": "http://fonts.gstatic.com/s/kaiseiopti/v8/QldXNThJphYb8_g6c2nlIGGqxY1u7f34DYwn.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Kaisei Opti" - }, - { - "src": "http://fonts.gstatic.com/s/kaiseiopti/v8/QldXNThJphYb8_g6c2nlIGHiw41u7f34DYwn.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Kaisei Opti" - } - ] - }, - { - "name": "Kaisei Tokumin", - "fontFamily": "Kaisei Tokumin, serif", - "slug": "kaisei-tokumin", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kaiseitokumin/v8/Gg8sN5wdZg7xCwuMsylww2ZiQkJf1l0pj946.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kaisei Tokumin" - }, - { - "src": "http://fonts.gstatic.com/s/kaiseitokumin/v8/Gg8vN5wdZg7xCwuMsylww2ZiQnqr_3khpMIzeI6v.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Kaisei Tokumin" - }, - { - "src": "http://fonts.gstatic.com/s/kaiseitokumin/v8/Gg8vN5wdZg7xCwuMsylww2ZiQnrj-XkhpMIzeI6v.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Kaisei Tokumin" - }, - { - "src": "http://fonts.gstatic.com/s/kaiseitokumin/v8/Gg8vN5wdZg7xCwuMsylww2ZiQnr_-nkhpMIzeI6v.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Kaisei Tokumin" - } - ] - }, - { - "name": "Kalam", - "fontFamily": "Kalam, cursive", - "slug": "kalam", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kalam/v16/YA9Qr0Wd4kDdMtD6GgLLmCUItqGt.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Kalam" - }, - { - "src": "http://fonts.gstatic.com/s/kalam/v16/YA9dr0Wd4kDdMuhWMibDszkB.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kalam" - }, - { - "src": "http://fonts.gstatic.com/s/kalam/v16/YA9Qr0Wd4kDdMtDqHQLLmCUItqGt.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Kalam" - } - ] - }, - { - "name": "Kameron", - "fontFamily": "Kameron, serif", - "slug": "kameron", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kameron/v15/vm82dR7vXErQxuznsL4wL-XIYH8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kameron" - }, - { - "src": "http://fonts.gstatic.com/s/kameron/v15/vm8zdR7vXErQxuzniAIfC-3jfHb--NY.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Kameron" - } - ] - }, - { - "name": "Kanit", - "fontFamily": "Kanit, sans-serif", - "slug": "kanit", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kanit/v13/nKKX-Go6G5tXcr72GwWKcaxALFs.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Kanit" - }, - { - "src": "http://fonts.gstatic.com/s/kanit/v13/nKKV-Go6G5tXcraQI2GAdY5FPFtrGw.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Kanit" - }, - { - "src": "http://fonts.gstatic.com/s/kanit/v13/nKKU-Go6G5tXcr5aOiWgX6BJNUJy.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Kanit" - }, - { - "src": "http://fonts.gstatic.com/s/kanit/v13/nKKS-Go6G5tXcraQI82hVaRrMFJyAu4.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Kanit" - }, - { - "src": "http://fonts.gstatic.com/s/kanit/v13/nKKU-Go6G5tXcr4-OSWgX6BJNUJy.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Kanit" - }, - { - "src": "http://fonts.gstatic.com/s/kanit/v13/nKKS-Go6G5tXcraQI6miVaRrMFJyAu4.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Kanit" - }, - { - "src": "http://fonts.gstatic.com/s/kanit/v13/nKKZ-Go6G5tXcoaSEQGodLxA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kanit" - }, - { - "src": "http://fonts.gstatic.com/s/kanit/v13/nKKX-Go6G5tXcraQGwWKcaxALFs.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Kanit" - }, - { - "src": "http://fonts.gstatic.com/s/kanit/v13/nKKU-Go6G5tXcr5mOCWgX6BJNUJy.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Kanit" - }, - { - "src": "http://fonts.gstatic.com/s/kanit/v13/nKKS-Go6G5tXcraQI_GjVaRrMFJyAu4.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Kanit" - }, - { - "src": "http://fonts.gstatic.com/s/kanit/v13/nKKU-Go6G5tXcr5KPyWgX6BJNUJy.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Kanit" - }, - { - "src": "http://fonts.gstatic.com/s/kanit/v13/nKKS-Go6G5tXcraQI92kVaRrMFJyAu4.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Kanit" - }, - { - "src": "http://fonts.gstatic.com/s/kanit/v13/nKKU-Go6G5tXcr4uPiWgX6BJNUJy.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Kanit" - }, - { - "src": "http://fonts.gstatic.com/s/kanit/v13/nKKS-Go6G5tXcraQI7mlVaRrMFJyAu4.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Kanit" - }, - { - "src": "http://fonts.gstatic.com/s/kanit/v13/nKKU-Go6G5tXcr4yPSWgX6BJNUJy.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Kanit" - }, - { - "src": "http://fonts.gstatic.com/s/kanit/v13/nKKS-Go6G5tXcraQI6WmVaRrMFJyAu4.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Kanit" - }, - { - "src": "http://fonts.gstatic.com/s/kanit/v13/nKKU-Go6G5tXcr4WPCWgX6BJNUJy.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Kanit" - }, - { - "src": "http://fonts.gstatic.com/s/kanit/v13/nKKS-Go6G5tXcraQI4GnVaRrMFJyAu4.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Kanit" - } - ] - }, - { - "name": "Kantumruy Pro", - "fontFamily": "Kantumruy Pro, sans-serif", - "slug": "kantumruy-pro", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kantumruypro/v8/1q2TY5aECkp34vEBSPFOmJxwvk_pilU8OGNfyg1urUs0M34dR6dW.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Kantumruy Pro" - }, - { - "src": "http://fonts.gstatic.com/s/kantumruypro/v8/1q2TY5aECkp34vEBSPFOmJxwvk_pilU8OGNfyg3urEs0M34dR6dW.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Kantumruy Pro" - }, - { - "src": "http://fonts.gstatic.com/s/kantumruypro/v8/1q2TY5aECkp34vEBSPFOmJxwvk_pilU8OGNfyg0wrEs0M34dR6dW.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Kantumruy Pro" - }, - { - "src": "http://fonts.gstatic.com/s/kantumruypro/v8/1q2TY5aECkp34vEBSPFOmJxwvk_pilU8OGNfyg1urEs0M34dR6dW.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kantumruy Pro" - }, - { - "src": "http://fonts.gstatic.com/s/kantumruypro/v8/1q2TY5aECkp34vEBSPFOmJxwvk_pilU8OGNfyg1crEs0M34dR6dW.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Kantumruy Pro" - }, - { - "src": "http://fonts.gstatic.com/s/kantumruypro/v8/1q2TY5aECkp34vEBSPFOmJxwvk_pilU8OGNfyg2wq0s0M34dR6dW.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Kantumruy Pro" - }, - { - "src": "http://fonts.gstatic.com/s/kantumruypro/v8/1q2TY5aECkp34vEBSPFOmJxwvk_pilU8OGNfyg2Jq0s0M34dR6dW.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Kantumruy Pro" - }, - { - "src": "http://fonts.gstatic.com/s/kantumruypro/v8/1q2RY5aECkp34vEBSPFOmJxwlEbbdY1VU_nxzRim76N2OXo_QrdWlcU.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Kantumruy Pro" - }, - { - "src": "http://fonts.gstatic.com/s/kantumruypro/v8/1q2RY5aECkp34vEBSPFOmJxwlEbbdY1VU_nxzRim7yN3OXo_QrdWlcU.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Kantumruy Pro" - }, - { - "src": "http://fonts.gstatic.com/s/kantumruypro/v8/1q2RY5aECkp34vEBSPFOmJxwlEbbdY1VU_nxzRim7_13OXo_QrdWlcU.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Kantumruy Pro" - }, - { - "src": "http://fonts.gstatic.com/s/kantumruypro/v8/1q2RY5aECkp34vEBSPFOmJxwlEbbdY1VU_nxzRim76N3OXo_QrdWlcU.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Kantumruy Pro" - }, - { - "src": "http://fonts.gstatic.com/s/kantumruypro/v8/1q2RY5aECkp34vEBSPFOmJxwlEbbdY1VU_nxzRim75F3OXo_QrdWlcU.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Kantumruy Pro" - }, - { - "src": "http://fonts.gstatic.com/s/kantumruypro/v8/1q2RY5aECkp34vEBSPFOmJxwlEbbdY1VU_nxzRim731wOXo_QrdWlcU.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Kantumruy Pro" - }, - { - "src": "http://fonts.gstatic.com/s/kantumruypro/v8/1q2RY5aECkp34vEBSPFOmJxwlEbbdY1VU_nxzRim70RwOXo_QrdWlcU.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Kantumruy Pro" - } - ] - }, - { - "name": "Karantina", - "fontFamily": "Karantina, system-ui", - "slug": "karantina", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/karantina/v11/buExpo24ccnh31GVMABxXCgf-P5Oaiw4cw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Karantina" - }, - { - "src": "http://fonts.gstatic.com/s/karantina/v11/buE0po24ccnh31GVMABJ8AA78NVSYw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Karantina" - }, - { - "src": "http://fonts.gstatic.com/s/karantina/v11/buExpo24ccnh31GVMABxTC8f-P5Oaiw4cw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Karantina" - } - ] - }, - { - "name": "Karla", - "fontFamily": "Karla, sans-serif", - "slug": "karla", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/karla/v30/qkBIXvYC6trAT55ZBi1ueQVIjQTDeJqqFENLR7fHGw.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Karla" - }, - { - "src": "http://fonts.gstatic.com/s/karla/v30/qkBIXvYC6trAT55ZBi1ueQVIjQTDppqqFENLR7fHGw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Karla" - }, - { - "src": "http://fonts.gstatic.com/s/karla/v30/qkBIXvYC6trAT55ZBi1ueQVIjQTD-JqqFENLR7fHGw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Karla" - }, - { - "src": "http://fonts.gstatic.com/s/karla/v30/qkBIXvYC6trAT55ZBi1ueQVIjQTDypqqFENLR7fHGw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Karla" - }, - { - "src": "http://fonts.gstatic.com/s/karla/v30/qkBIXvYC6trAT55ZBi1ueQVIjQTDJp2qFENLR7fHGw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Karla" - }, - { - "src": "http://fonts.gstatic.com/s/karla/v30/qkBIXvYC6trAT55ZBi1ueQVIjQTDH52qFENLR7fHGw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Karla" - }, - { - "src": "http://fonts.gstatic.com/s/karla/v30/qkBIXvYC6trAT55ZBi1ueQVIjQTDeJ2qFENLR7fHGw.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Karla" - }, - { - "src": "http://fonts.gstatic.com/s/karla/v30/qkBKXvYC6trAT7RQNNK2EG7SIwPWMNnCV0lPZbLXGxGR.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Karla" - }, - { - "src": "http://fonts.gstatic.com/s/karla/v30/qkBKXvYC6trAT7RQNNK2EG7SIwPWMNkcV0lPZbLXGxGR.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Karla" - }, - { - "src": "http://fonts.gstatic.com/s/karla/v30/qkBKXvYC6trAT7RQNNK2EG7SIwPWMNlCV0lPZbLXGxGR.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Karla" - }, - { - "src": "http://fonts.gstatic.com/s/karla/v30/qkBKXvYC6trAT7RQNNK2EG7SIwPWMNlwV0lPZbLXGxGR.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Karla" - }, - { - "src": "http://fonts.gstatic.com/s/karla/v30/qkBKXvYC6trAT7RQNNK2EG7SIwPWMNmcUElPZbLXGxGR.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Karla" - }, - { - "src": "http://fonts.gstatic.com/s/karla/v30/qkBKXvYC6trAT7RQNNK2EG7SIwPWMNmlUElPZbLXGxGR.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Karla" - }, - { - "src": "http://fonts.gstatic.com/s/karla/v30/qkBKXvYC6trAT7RQNNK2EG7SIwPWMNnCUElPZbLXGxGR.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Karla" - } - ] - }, - { - "name": "Karma", - "fontFamily": "Karma, serif", - "slug": "karma", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/karma/v16/va9F4kzAzMZRGLjDY8Z_uqzGQC_-.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Karma" - }, - { - "src": "http://fonts.gstatic.com/s/karma/v16/va9I4kzAzMZRGIBvS-J3kbDP.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Karma" - }, - { - "src": "http://fonts.gstatic.com/s/karma/v16/va9F4kzAzMZRGLibYsZ_uqzGQC_-.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Karma" - }, - { - "src": "http://fonts.gstatic.com/s/karma/v16/va9F4kzAzMZRGLi3ZcZ_uqzGQC_-.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Karma" - }, - { - "src": "http://fonts.gstatic.com/s/karma/v16/va9F4kzAzMZRGLjTZMZ_uqzGQC_-.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Karma" - } - ] - }, - { - "name": "Katibeh", - "fontFamily": "Katibeh, system-ui", - "slug": "katibeh", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/katibeh/v17/ZGjXol5MQJog4bxDaC1RVDNdGDs.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Katibeh" - } - ] - }, - { - "name": "Kaushan Script", - "fontFamily": "Kaushan Script, cursive", - "slug": "kaushan-script", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kaushanscript/v14/vm8vdRfvXFLG3OLnsO15WYS5DF7_ytN3M48a.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kaushan Script" - } - ] - }, - { - "name": "Kavivanar", - "fontFamily": "Kavivanar, cursive", - "slug": "kavivanar", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kavivanar/v18/o-0IIpQgyXYSwhxP7_Jb4j5Ba_2c7A.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kavivanar" - } - ] - }, - { - "name": "Kavoon", - "fontFamily": "Kavoon, system-ui", - "slug": "kavoon", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kavoon/v21/pxiFyp4_scRYhlU4NLr6f1pdEQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kavoon" - } - ] - }, - { - "name": "Kdam Thmor Pro", - "fontFamily": "Kdam Thmor Pro, sans-serif", - "slug": "kdam-thmor-pro", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kdamthmorpro/v1/EJRPQgAzVdcI-Qdvt34jzurnGA7_j89I8ZWb.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kdam Thmor Pro" - } - ] - }, - { - "name": "Keania One", - "fontFamily": "Keania One, system-ui", - "slug": "keania-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/keaniaone/v21/zOL54pXJk65E8pXardnuycRuv-hHkOs.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Keania One" - } - ] - }, - { - "name": "Kelly Slab", - "fontFamily": "Kelly Slab, system-ui", - "slug": "kelly-slab", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kellyslab/v15/-W_7XJX0Rz3cxUnJC5t6TkMBf50kbiM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kelly Slab" - } - ] - }, - { - "name": "Kenia", - "fontFamily": "Kenia, system-ui", - "slug": "kenia", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kenia/v24/jizURE5PuHQH9qCONUGswfGM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kenia" - } - ] - }, - { - "name": "Khand", - "fontFamily": "Khand, sans-serif", - "slug": "khand", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/khand/v17/TwMN-IINQlQQ0bL5cFE3ZwaH__-C.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Khand" - }, - { - "src": "http://fonts.gstatic.com/s/khand/v17/TwMA-IINQlQQ0YpVWHU_TBqO.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Khand" - }, - { - "src": "http://fonts.gstatic.com/s/khand/v17/TwMN-IINQlQQ0bKhcVE3ZwaH__-C.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Khand" - }, - { - "src": "http://fonts.gstatic.com/s/khand/v17/TwMN-IINQlQQ0bKNdlE3ZwaH__-C.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Khand" - }, - { - "src": "http://fonts.gstatic.com/s/khand/v17/TwMN-IINQlQQ0bLpd1E3ZwaH__-C.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Khand" - } - ] - }, - { - "name": "Khmer", - "fontFamily": "Khmer, system-ui", - "slug": "khmer", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/khmer/v25/MjQImit_vPPwpF-BpN2EeYmD.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Khmer" - } - ] - }, - { - "name": "Khula", - "fontFamily": "Khula, sans-serif", - "slug": "khula", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/khula/v12/OpNPnoEOns3V7G-ljCvUrC59XwXD.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Khula" - }, - { - "src": "http://fonts.gstatic.com/s/khula/v12/OpNCnoEOns3V7FcJpA_chzJ0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Khula" - }, - { - "src": "http://fonts.gstatic.com/s/khula/v12/OpNPnoEOns3V7G_RiivUrC59XwXD.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Khula" - }, - { - "src": "http://fonts.gstatic.com/s/khula/v12/OpNPnoEOns3V7G-1iyvUrC59XwXD.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Khula" - }, - { - "src": "http://fonts.gstatic.com/s/khula/v12/OpNPnoEOns3V7G-piCvUrC59XwXD.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Khula" - } - ] - }, - { - "name": "Kings", - "fontFamily": "Kings, cursive", - "slug": "kings", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kings/v5/8AtnGsK4O5CYXU_Iq6GSPaHS.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kings" - } - ] - }, - { - "name": "Kirang Haerang", - "fontFamily": "Kirang Haerang, system-ui", - "slug": "kirang-haerang", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kiranghaerang/v20/E21-_dn_gvvIjhYON1lpIU4-bcqvWPaJq4no.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kirang Haerang" - } - ] - }, - { - "name": "Kite One", - "fontFamily": "Kite One, sans-serif", - "slug": "kite-one", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kiteone/v22/70lQu7shLnA_E02vyq1b6HnGO4uA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kite One" - } - ] - }, - { - "name": "Kiwi Maru", - "fontFamily": "Kiwi Maru, serif", - "slug": "kiwi-maru", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kiwimaru/v14/R70djykGkuuDep-hRg6gNCi0Vxn9R5ShnA.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Kiwi Maru" - }, - { - "src": "http://fonts.gstatic.com/s/kiwimaru/v14/R70YjykGkuuDep-hRg6YmACQXzLhTg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kiwi Maru" - }, - { - "src": "http://fonts.gstatic.com/s/kiwimaru/v14/R70djykGkuuDep-hRg6gbCm0Vxn9R5ShnA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Kiwi Maru" - } - ] - }, - { - "name": "Klee One", - "fontFamily": "Klee One, cursive", - "slug": "klee-one", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kleeone/v7/LDIxapCLNRc6A8oT4q4AOeekWPrP.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Klee One" - }, - { - "src": "http://fonts.gstatic.com/s/kleeone/v7/LDI2apCLNRc6A8oT4pbYF8Osc-bGkqIw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Klee One" - } - ] - }, - { - "name": "Knewave", - "fontFamily": "Knewave, system-ui", - "slug": "knewave", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/knewave/v14/sykz-yx0lLcxQaSItSq9-trEvlQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Knewave" - } - ] - }, - { - "name": "KoHo", - "fontFamily": "KoHo, sans-serif", - "slug": "koho", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/koho/v16/K2FxfZ5fmddNPuE1WJ75JoKhHys.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "KoHo" - }, - { - "src": "http://fonts.gstatic.com/s/koho/v16/K2FzfZ5fmddNNisssJ_zIqCkDyvqZA.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "KoHo" - }, - { - "src": "http://fonts.gstatic.com/s/koho/v16/K2FxfZ5fmddNPoU2WJ75JoKhHys.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "KoHo" - }, - { - "src": "http://fonts.gstatic.com/s/koho/v16/K2FzfZ5fmddNNiss1JzzIqCkDyvqZA.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "KoHo" - }, - { - "src": "http://fonts.gstatic.com/s/koho/v16/K2F-fZ5fmddNBikefJbSOos.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "KoHo" - }, - { - "src": "http://fonts.gstatic.com/s/koho/v16/K2FwfZ5fmddNNisUeLTXKou4Bg.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "KoHo" - }, - { - "src": "http://fonts.gstatic.com/s/koho/v16/K2FxfZ5fmddNPt03WJ75JoKhHys.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "KoHo" - }, - { - "src": "http://fonts.gstatic.com/s/koho/v16/K2FzfZ5fmddNNissjJ3zIqCkDyvqZA.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "KoHo" - }, - { - "src": "http://fonts.gstatic.com/s/koho/v16/K2FxfZ5fmddNPvEwWJ75JoKhHys.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "KoHo" - }, - { - "src": "http://fonts.gstatic.com/s/koho/v16/K2FzfZ5fmddNNissoJrzIqCkDyvqZA.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "KoHo" - }, - { - "src": "http://fonts.gstatic.com/s/koho/v16/K2FxfZ5fmddNPpUxWJ75JoKhHys.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "KoHo" - }, - { - "src": "http://fonts.gstatic.com/s/koho/v16/K2FzfZ5fmddNNissxJvzIqCkDyvqZA.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "KoHo" - } - ] - }, - { - "name": "Kodchasan", - "fontFamily": "Kodchasan, sans-serif", - "slug": "kodchasan", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kodchasan/v17/1cX0aUPOAJv9sG4I-DJeR1Cggeqo3eMeoA.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Kodchasan" - }, - { - "src": "http://fonts.gstatic.com/s/kodchasan/v17/1cXqaUPOAJv9sG4I-DJWjUlIgOCs_-YOoIgN.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Kodchasan" - }, - { - "src": "http://fonts.gstatic.com/s/kodchasan/v17/1cX0aUPOAJv9sG4I-DJeI1Oggeqo3eMeoA.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Kodchasan" - }, - { - "src": "http://fonts.gstatic.com/s/kodchasan/v17/1cXqaUPOAJv9sG4I-DJWjUksg-Cs_-YOoIgN.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Kodchasan" - }, - { - "src": "http://fonts.gstatic.com/s/kodchasan/v17/1cXxaUPOAJv9sG4I-DJmj3uEicG01A.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kodchasan" - }, - { - "src": "http://fonts.gstatic.com/s/kodchasan/v17/1cX3aUPOAJv9sG4I-DJWjXGAq8Sk1PoH.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Kodchasan" - }, - { - "src": "http://fonts.gstatic.com/s/kodchasan/v17/1cX0aUPOAJv9sG4I-DJee1Kggeqo3eMeoA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Kodchasan" - }, - { - "src": "http://fonts.gstatic.com/s/kodchasan/v17/1cXqaUPOAJv9sG4I-DJWjUl0guCs_-YOoIgN.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Kodchasan" - }, - { - "src": "http://fonts.gstatic.com/s/kodchasan/v17/1cX0aUPOAJv9sG4I-DJeV1Wggeqo3eMeoA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Kodchasan" - }, - { - "src": "http://fonts.gstatic.com/s/kodchasan/v17/1cXqaUPOAJv9sG4I-DJWjUlYheCs_-YOoIgN.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Kodchasan" - }, - { - "src": "http://fonts.gstatic.com/s/kodchasan/v17/1cX0aUPOAJv9sG4I-DJeM1Sggeqo3eMeoA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Kodchasan" - }, - { - "src": "http://fonts.gstatic.com/s/kodchasan/v17/1cXqaUPOAJv9sG4I-DJWjUk8hOCs_-YOoIgN.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Kodchasan" - } - ] - }, - { - "name": "Koh Santepheap", - "fontFamily": "Koh Santepheap, system-ui", - "slug": "koh-santepheap", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kohsantepheap/v9/gNMfW3p6SJbwyGj2rBZyeOrTjNuFHVyTtjNJUWU.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Koh Santepheap" - }, - { - "src": "http://fonts.gstatic.com/s/kohsantepheap/v9/gNMeW3p6SJbwyGj2rBZyeOrTjNtNP3y5mD9ASHz5.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Koh Santepheap" - }, - { - "src": "http://fonts.gstatic.com/s/kohsantepheap/v9/gNMdW3p6SJbwyGj2rBZyeOrTjOPhF1ixsyNJ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Koh Santepheap" - }, - { - "src": "http://fonts.gstatic.com/s/kohsantepheap/v9/gNMeW3p6SJbwyGj2rBZyeOrTjNtdOHy5mD9ASHz5.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Koh Santepheap" - }, - { - "src": "http://fonts.gstatic.com/s/kohsantepheap/v9/gNMeW3p6SJbwyGj2rBZyeOrTjNtlOny5mD9ASHz5.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Koh Santepheap" - } - ] - }, - { - "name": "Kolker Brush", - "fontFamily": "Kolker Brush, cursive", - "slug": "kolker-brush", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kolkerbrush/v3/iJWDBXWRZjfKWdvmzwvvog3-7KJ6x8qNUQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kolker Brush" - } - ] - }, - { - "name": "Konkhmer Sleokchher", - "fontFamily": "Konkhmer Sleokchher, system-ui", - "slug": "konkhmer-sleokchher", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/konkhmersleokchher/v2/_Xmw-GE-rjmabA_M-aPOZOsCrUv825LFI3507E0d-W0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Konkhmer Sleokchher" - } - ] - }, - { - "name": "Kosugi", - "fontFamily": "Kosugi, sans-serif", - "slug": "kosugi", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kosugi/v15/pxiFyp4_v8FCjlI4NLr6f1pdEQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kosugi" - } - ] - }, - { - "name": "Kosugi Maru", - "fontFamily": "Kosugi Maru, sans-serif", - "slug": "kosugi-maru", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kosugimaru/v14/0nksC9PgP_wGh21A2KeqGiTqivr9iBq_.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kosugi Maru" - } - ] - }, - { - "name": "Kotta One", - "fontFamily": "Kotta One, serif", - "slug": "kotta-one", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kottaone/v20/S6u_w41LXzPc_jlfNWqPHA3s5dwt7w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kotta One" - } - ] - }, - { - "name": "Koulen", - "fontFamily": "Koulen, system-ui", - "slug": "koulen", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/koulen/v25/AMOQz46as3KIBPeWgnA9kuYMUg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Koulen" - } - ] - }, - { - "name": "Kranky", - "fontFamily": "Kranky, system-ui", - "slug": "kranky", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kranky/v24/hESw6XVgJzlPsFnMpheEZo_H_w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kranky" - } - ] - }, - { - "name": "Kreon", - "fontFamily": "Kreon, serif", - "slug": "kreon", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kreon/v37/t5t9IRIUKY-TFF_LW5lnMR3v2DnvPNimejUfp2dWNg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Kreon" - }, - { - "src": "http://fonts.gstatic.com/s/kreon/v37/t5t9IRIUKY-TFF_LW5lnMR3v2DnvYtimejUfp2dWNg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kreon" - }, - { - "src": "http://fonts.gstatic.com/s/kreon/v37/t5t9IRIUKY-TFF_LW5lnMR3v2DnvUNimejUfp2dWNg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Kreon" - }, - { - "src": "http://fonts.gstatic.com/s/kreon/v37/t5t9IRIUKY-TFF_LW5lnMR3v2DnvvN-mejUfp2dWNg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Kreon" - }, - { - "src": "http://fonts.gstatic.com/s/kreon/v37/t5t9IRIUKY-TFF_LW5lnMR3v2Dnvhd-mejUfp2dWNg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Kreon" - } - ] - }, - { - "name": "Kristi", - "fontFamily": "Kristi, cursive", - "slug": "kristi", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kristi/v17/uK_y4ricdeU6zwdRCh0TMv6EXw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kristi" - } - ] - }, - { - "name": "Krona One", - "fontFamily": "Krona One, sans-serif", - "slug": "krona-one", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kronaone/v14/jAnEgHdjHcjgfIb1ZcUCMY-h3cWkWg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Krona One" - } - ] - }, - { - "name": "Krub", - "fontFamily": "Krub, sans-serif", - "slug": "krub", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/krub/v9/sZlEdRyC6CRYZo47KLF4R6gWaf8.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Krub" - }, - { - "src": "http://fonts.gstatic.com/s/krub/v9/sZlGdRyC6CRYbkQiwLByQ4oTef_6gQ.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Krub" - }, - { - "src": "http://fonts.gstatic.com/s/krub/v9/sZlEdRyC6CRYZuo4KLF4R6gWaf8.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Krub" - }, - { - "src": "http://fonts.gstatic.com/s/krub/v9/sZlGdRyC6CRYbkQipLNyQ4oTef_6gQ.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Krub" - }, - { - "src": "http://fonts.gstatic.com/s/krub/v9/sZlLdRyC6CRYXkYQDLlTW6E.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Krub" - }, - { - "src": "http://fonts.gstatic.com/s/krub/v9/sZlFdRyC6CRYbkQaCJtWS6EPcA.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Krub" - }, - { - "src": "http://fonts.gstatic.com/s/krub/v9/sZlEdRyC6CRYZrI5KLF4R6gWaf8.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Krub" - }, - { - "src": "http://fonts.gstatic.com/s/krub/v9/sZlGdRyC6CRYbkQi_LJyQ4oTef_6gQ.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Krub" - }, - { - "src": "http://fonts.gstatic.com/s/krub/v9/sZlEdRyC6CRYZp4-KLF4R6gWaf8.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Krub" - }, - { - "src": "http://fonts.gstatic.com/s/krub/v9/sZlGdRyC6CRYbkQi0LVyQ4oTef_6gQ.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Krub" - }, - { - "src": "http://fonts.gstatic.com/s/krub/v9/sZlEdRyC6CRYZvo_KLF4R6gWaf8.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Krub" - }, - { - "src": "http://fonts.gstatic.com/s/krub/v9/sZlGdRyC6CRYbkQitLRyQ4oTef_6gQ.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Krub" - } - ] - }, - { - "name": "Kufam", - "fontFamily": "Kufam, sans-serif", - "slug": "kufam", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kufam/v20/C8c-4cY7pG7w_oSJDszBXsKCcBH3lqk7qQCJHvIwYg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kufam" - }, - { - "src": "http://fonts.gstatic.com/s/kufam/v20/C8c-4cY7pG7w_oSJDszBXsKCcBH3pKk7qQCJHvIwYg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Kufam" - }, - { - "src": "http://fonts.gstatic.com/s/kufam/v20/C8c-4cY7pG7w_oSJDszBXsKCcBH3SK47qQCJHvIwYg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Kufam" - }, - { - "src": "http://fonts.gstatic.com/s/kufam/v20/C8c-4cY7pG7w_oSJDszBXsKCcBH3ca47qQCJHvIwYg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Kufam" - }, - { - "src": "http://fonts.gstatic.com/s/kufam/v20/C8c-4cY7pG7w_oSJDszBXsKCcBH3Fq47qQCJHvIwYg.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Kufam" - }, - { - "src": "http://fonts.gstatic.com/s/kufam/v20/C8c-4cY7pG7w_oSJDszBXsKCcBH3P647qQCJHvIwYg.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Kufam" - }, - { - "src": "http://fonts.gstatic.com/s/kufam/v20/C8c84cY7pG7w_q6APDMZN6kY3hbiXurT6gqNPPcgYp0i.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Kufam" - }, - { - "src": "http://fonts.gstatic.com/s/kufam/v20/C8c84cY7pG7w_q6APDMZN6kY3hbiXurh6gqNPPcgYp0i.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Kufam" - }, - { - "src": "http://fonts.gstatic.com/s/kufam/v20/C8c84cY7pG7w_q6APDMZN6kY3hbiXuoN7QqNPPcgYp0i.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Kufam" - }, - { - "src": "http://fonts.gstatic.com/s/kufam/v20/C8c84cY7pG7w_q6APDMZN6kY3hbiXuo07QqNPPcgYp0i.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Kufam" - }, - { - "src": "http://fonts.gstatic.com/s/kufam/v20/C8c84cY7pG7w_q6APDMZN6kY3hbiXupT7QqNPPcgYp0i.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Kufam" - }, - { - "src": "http://fonts.gstatic.com/s/kufam/v20/C8c84cY7pG7w_q6APDMZN6kY3hbiXup67QqNPPcgYp0i.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Kufam" - } - ] - }, - { - "name": "Kulim Park", - "fontFamily": "Kulim Park, sans-serif", - "slug": "kulim-park", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kulimpark/v14/fdN49secq3hflz1Uu3IwjJYNwa5aZbUvGjU.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Kulim Park" - }, - { - "src": "http://fonts.gstatic.com/s/kulimpark/v14/fdNm9secq3hflz1Uu3IwhFwUKa9QYZcqCjVVUA.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Kulim Park" - }, - { - "src": "http://fonts.gstatic.com/s/kulimpark/v14/fdN49secq3hflz1Uu3IwjPIOwa5aZbUvGjU.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Kulim Park" - }, - { - "src": "http://fonts.gstatic.com/s/kulimpark/v14/fdNm9secq3hflz1Uu3IwhFwUTaxQYZcqCjVVUA.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Kulim Park" - }, - { - "src": "http://fonts.gstatic.com/s/kulimpark/v14/fdN79secq3hflz1Uu3IwtF4m5aZxebw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kulim Park" - }, - { - "src": "http://fonts.gstatic.com/s/kulimpark/v14/fdN59secq3hflz1Uu3IwhFws4YR0abw2Aw.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Kulim Park" - }, - { - "src": "http://fonts.gstatic.com/s/kulimpark/v14/fdN49secq3hflz1Uu3IwjIYIwa5aZbUvGjU.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Kulim Park" - }, - { - "src": "http://fonts.gstatic.com/s/kulimpark/v14/fdNm9secq3hflz1Uu3IwhFwUOapQYZcqCjVVUA.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Kulim Park" - }, - { - "src": "http://fonts.gstatic.com/s/kulimpark/v14/fdN49secq3hflz1Uu3IwjOIJwa5aZbUvGjU.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Kulim Park" - }, - { - "src": "http://fonts.gstatic.com/s/kulimpark/v14/fdNm9secq3hflz1Uu3IwhFwUXatQYZcqCjVVUA.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Kulim Park" - } - ] - }, - { - "name": "Kumar One", - "fontFamily": "Kumar One, system-ui", - "slug": "kumar-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kumarone/v18/bMr1mS-P958wYi6YaGeGNO6WU3oT0g.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kumar One" - } - ] - }, - { - "name": "Kumar One Outline", - "fontFamily": "Kumar One Outline, system-ui", - "slug": "kumar-one-outline", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kumaroneoutline/v17/Noao6VH62pyLP0fsrZ-v18wlUEcX9zDwRQu8EGKF.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kumar One Outline" - } - ] - }, - { - "name": "Kumbh Sans", - "fontFamily": "Kumbh Sans, sans-serif", - "slug": "kumbh-sans", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kumbhsans/v20/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQkZcA8bTuUkqaLg.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Kumbh Sans" - }, - { - "src": "http://fonts.gstatic.com/s/kumbhsans/v20/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQEZYA8bTuUkqaLg.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Kumbh Sans" - }, - { - "src": "http://fonts.gstatic.com/s/kumbhsans/v20/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQz5YA8bTuUkqaLg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Kumbh Sans" - }, - { - "src": "http://fonts.gstatic.com/s/kumbhsans/v20/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQkZYA8bTuUkqaLg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kumbh Sans" - }, - { - "src": "http://fonts.gstatic.com/s/kumbhsans/v20/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQo5YA8bTuUkqaLg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Kumbh Sans" - }, - { - "src": "http://fonts.gstatic.com/s/kumbhsans/v20/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQT5EA8bTuUkqaLg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Kumbh Sans" - }, - { - "src": "http://fonts.gstatic.com/s/kumbhsans/v20/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQdpEA8bTuUkqaLg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Kumbh Sans" - }, - { - "src": "http://fonts.gstatic.com/s/kumbhsans/v20/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQEZEA8bTuUkqaLg.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Kumbh Sans" - }, - { - "src": "http://fonts.gstatic.com/s/kumbhsans/v20/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQOJEA8bTuUkqaLg.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Kumbh Sans" - } - ] - }, - { - "name": "Kurale", - "fontFamily": "Kurale, serif", - "slug": "kurale", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/kurale/v11/4iCs6KV9e9dXjho6eAT3v02QFg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Kurale" - } - ] - }, - { - "name": "La Belle Aurore", - "fontFamily": "La Belle Aurore, cursive", - "slug": "la-belle-aurore", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/labelleaurore/v16/RrQIbot8-mNYKnGNDkWlocovHeIIG-eFNVmULg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "La Belle Aurore" - } - ] - }, - { - "name": "Labrada", - "fontFamily": "Labrada, serif", - "slug": "labrada", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/labrada/v2/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9VTSgM4QPdUej17.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Labrada" - }, - { - "src": "http://fonts.gstatic.com/s/labrada/v2/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9XTSwM4QPdUej17.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Labrada" - }, - { - "src": "http://fonts.gstatic.com/s/labrada/v2/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9UNSwM4QPdUej17.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Labrada" - }, - { - "src": "http://fonts.gstatic.com/s/labrada/v2/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9VTSwM4QPdUej17.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Labrada" - }, - { - "src": "http://fonts.gstatic.com/s/labrada/v2/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9VhSwM4QPdUej17.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Labrada" - }, - { - "src": "http://fonts.gstatic.com/s/labrada/v2/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9WNTAM4QPdUej17.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Labrada" - }, - { - "src": "http://fonts.gstatic.com/s/labrada/v2/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9W0TAM4QPdUej17.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Labrada" - }, - { - "src": "http://fonts.gstatic.com/s/labrada/v2/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9XTTAM4QPdUej17.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Labrada" - }, - { - "src": "http://fonts.gstatic.com/s/labrada/v2/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9X6TAM4QPdUej17.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Labrada" - }, - { - "src": "http://fonts.gstatic.com/s/labrada/v2/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCOt6SvN2fy17-dE.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Labrada" - }, - { - "src": "http://fonts.gstatic.com/s/labrada/v2/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCGt7SvN2fy17-dE.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Labrada" - }, - { - "src": "http://fonts.gstatic.com/s/labrada/v2/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCLV7SvN2fy17-dE.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Labrada" - }, - { - "src": "http://fonts.gstatic.com/s/labrada/v2/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCOt7SvN2fy17-dE.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Labrada" - }, - { - "src": "http://fonts.gstatic.com/s/labrada/v2/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCNl7SvN2fy17-dE.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Labrada" - }, - { - "src": "http://fonts.gstatic.com/s/labrada/v2/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCDV8SvN2fy17-dE.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Labrada" - }, - { - "src": "http://fonts.gstatic.com/s/labrada/v2/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCAx8SvN2fy17-dE.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Labrada" - }, - { - "src": "http://fonts.gstatic.com/s/labrada/v2/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCGt8SvN2fy17-dE.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Labrada" - }, - { - "src": "http://fonts.gstatic.com/s/labrada/v2/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCEJ8SvN2fy17-dE.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Labrada" - } - ] - }, - { - "name": "Lacquer", - "fontFamily": "Lacquer, system-ui", - "slug": "lacquer", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/lacquer/v15/EYqzma1QwqpG4_BBB7-AXhttQ5I.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Lacquer" - } - ] - }, - { - "name": "Laila", - "fontFamily": "Laila, sans-serif", - "slug": "laila", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/laila/v13/LYjBdG_8nE8jDLzxogNAh14nVcfe.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Laila" - }, - { - "src": "http://fonts.gstatic.com/s/laila/v13/LYjMdG_8nE8jDIRdiidIrEIu.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Laila" - }, - { - "src": "http://fonts.gstatic.com/s/laila/v13/LYjBdG_8nE8jDLypowNAh14nVcfe.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Laila" - }, - { - "src": "http://fonts.gstatic.com/s/laila/v13/LYjBdG_8nE8jDLyFpANAh14nVcfe.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Laila" - }, - { - "src": "http://fonts.gstatic.com/s/laila/v13/LYjBdG_8nE8jDLzhpQNAh14nVcfe.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Laila" - } - ] - }, - { - "name": "Lakki Reddy", - "fontFamily": "Lakki Reddy, cursive", - "slug": "lakki-reddy", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/lakkireddy/v19/S6u5w49MUSzD9jlCPmvLZQfox9k97-xZ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Lakki Reddy" - } - ] - }, - { - "name": "Lalezar", - "fontFamily": "Lalezar, system-ui", - "slug": "lalezar", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/lalezar/v14/zrfl0HLVx-HwTP82UaDyIiL0RCg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Lalezar" - } - ] - }, - { - "name": "Lancelot", - "fontFamily": "Lancelot, system-ui", - "slug": "lancelot", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/lancelot/v23/J7acnppxBGtQEulG4JY4xJ9CGyAa.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Lancelot" - } - ] - }, - { - "name": "Langar", - "fontFamily": "Langar, system-ui", - "slug": "langar", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/langar/v27/kJEyBukW7AIlgjGVrTVZ99sqrQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Langar" - } - ] - }, - { - "name": "Lateef", - "fontFamily": "Lateef, serif", - "slug": "lateef", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/lateef/v29/hESz6XVnNCxEvkb0bjygbqTb9nQ-RA.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Lateef" - }, - { - "src": "http://fonts.gstatic.com/s/lateef/v29/hESz6XVnNCxEvkb0Cj-gbqTb9nQ-RA.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Lateef" - }, - { - "src": "http://fonts.gstatic.com/s/lateef/v29/hESw6XVnNCxEvkbMpheEZo_H_w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Lateef" - }, - { - "src": "http://fonts.gstatic.com/s/lateef/v29/hESz6XVnNCxEvkb0Uj6gbqTb9nQ-RA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Lateef" - }, - { - "src": "http://fonts.gstatic.com/s/lateef/v29/hESz6XVnNCxEvkb0fjmgbqTb9nQ-RA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Lateef" - }, - { - "src": "http://fonts.gstatic.com/s/lateef/v29/hESz6XVnNCxEvkb0GjigbqTb9nQ-RA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Lateef" - }, - { - "src": "http://fonts.gstatic.com/s/lateef/v29/hESz6XVnNCxEvkb0BjugbqTb9nQ-RA.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Lateef" - } - ] - }, - { - "name": "Lato", - "fontFamily": "Lato, sans-serif", - "slug": "lato", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/lato/v24/S6u8w4BMUTPHh30wWyWrFCbw7A.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Lato" - }, - { - "src": "http://fonts.gstatic.com/s/lato/v24/S6u-w4BMUTPHjxsIPy-vNiPg7MU0.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Lato" - }, - { - "src": "http://fonts.gstatic.com/s/lato/v24/S6u9w4BMUTPHh7USew-FGC_p9dw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Lato" - }, - { - "src": "http://fonts.gstatic.com/s/lato/v24/S6u_w4BMUTPHjxsI9w2PHA3s5dwt7w.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Lato" - }, - { - "src": "http://fonts.gstatic.com/s/lato/v24/S6uyw4BMUTPHvxk6XweuBCY.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Lato" - }, - { - "src": "http://fonts.gstatic.com/s/lato/v24/S6u8w4BMUTPHjxswWyWrFCbw7A.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Lato" - }, - { - "src": "http://fonts.gstatic.com/s/lato/v24/S6u9w4BMUTPHh6UVew-FGC_p9dw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Lato" - }, - { - "src": "http://fonts.gstatic.com/s/lato/v24/S6u_w4BMUTPHjxsI5wqPHA3s5dwt7w.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Lato" - }, - { - "src": "http://fonts.gstatic.com/s/lato/v24/S6u9w4BMUTPHh50Xew-FGC_p9dw.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Lato" - }, - { - "src": "http://fonts.gstatic.com/s/lato/v24/S6u_w4BMUTPHjxsI3wiPHA3s5dwt7w.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Lato" - } - ] - }, - { - "name": "Lavishly Yours", - "fontFamily": "Lavishly Yours, cursive", - "slug": "lavishly-yours", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/lavishlyyours/v2/jizDREVIvGwH5OjiZmX9r5z_WxUY0TY7ikbI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Lavishly Yours" - } - ] - }, - { - "name": "League Gothic", - "fontFamily": "League Gothic, sans-serif", - "slug": "league-gothic", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/leaguegothic/v6/qFdR35CBi4tvBz81xy7WG7ep-BQAY7Krj7feObpH_-amidQ6Q9hn.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "League Gothic" - } - ] - }, - { - "name": "League Script", - "fontFamily": "League Script, cursive", - "slug": "league-script", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/leaguescript/v24/CSR54zpSlumSWj9CGVsoBZdeaNNUuOwkC2s.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "League Script" - } - ] - }, - { - "name": "League Spartan", - "fontFamily": "League Spartan, sans-serif", - "slug": "league-spartan", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/leaguespartan/v11/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvM_oXpBMdcFguczA.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "League Spartan" - }, - { - "src": "http://fonts.gstatic.com/s/leaguespartan/v11/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvMfoTpBMdcFguczA.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "League Spartan" - }, - { - "src": "http://fonts.gstatic.com/s/leaguespartan/v11/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvMoITpBMdcFguczA.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "League Spartan" - }, - { - "src": "http://fonts.gstatic.com/s/leaguespartan/v11/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvM_oTpBMdcFguczA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "League Spartan" - }, - { - "src": "http://fonts.gstatic.com/s/leaguespartan/v11/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvMzITpBMdcFguczA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "League Spartan" - }, - { - "src": "http://fonts.gstatic.com/s/leaguespartan/v11/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvMIIPpBMdcFguczA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "League Spartan" - }, - { - "src": "http://fonts.gstatic.com/s/leaguespartan/v11/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvMGYPpBMdcFguczA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "League Spartan" - }, - { - "src": "http://fonts.gstatic.com/s/leaguespartan/v11/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvMfoPpBMdcFguczA.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "League Spartan" - }, - { - "src": "http://fonts.gstatic.com/s/leaguespartan/v11/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvMV4PpBMdcFguczA.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "League Spartan" - } - ] - }, - { - "name": "Leckerli One", - "fontFamily": "Leckerli One, cursive", - "slug": "leckerli-one", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/leckerlione/v16/V8mCoQH8VCsNttEnxnGQ-1itLZxcBtItFw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Leckerli One" - } - ] - }, - { - "name": "Ledger", - "fontFamily": "Ledger, serif", - "slug": "ledger", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ledger/v16/j8_q6-HK1L3if_sxm8DwHTBhHw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Ledger" - } - ] - }, - { - "name": "Lekton", - "fontFamily": "Lekton, sans-serif", - "slug": "lekton", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/lekton/v17/SZc43FDmLaWmWpBeXxfonUPL6Q.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Lekton" - }, - { - "src": "http://fonts.gstatic.com/s/lekton/v17/SZc63FDmLaWmWpBuXR3sv0bb6StO.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Lekton" - }, - { - "src": "http://fonts.gstatic.com/s/lekton/v17/SZc73FDmLaWmWpBm4zjMlWjX4DJXgQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Lekton" - } - ] - }, - { - "name": "Lemon", - "fontFamily": "Lemon, system-ui", - "slug": "lemon", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/lemon/v15/HI_EiYEVKqRMq0jBSZXAQ4-d.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Lemon" - } - ] - }, - { - "name": "Lemonada", - "fontFamily": "Lemonada, system-ui", - "slug": "lemonada", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/lemonada/v26/0QI-MXFD9oygTWy_R-FFlwV-bgfR7QJGJOt2mfWc3Z2pTg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Lemonada" - }, - { - "src": "http://fonts.gstatic.com/s/lemonada/v26/0QI-MXFD9oygTWy_R-FFlwV-bgfR7QJGeut2mfWc3Z2pTg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Lemonada" - }, - { - "src": "http://fonts.gstatic.com/s/lemonada/v26/0QI-MXFD9oygTWy_R-FFlwV-bgfR7QJGSOt2mfWc3Z2pTg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Lemonada" - }, - { - "src": "http://fonts.gstatic.com/s/lemonada/v26/0QI-MXFD9oygTWy_R-FFlwV-bgfR7QJGpOx2mfWc3Z2pTg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Lemonada" - }, - { - "src": "http://fonts.gstatic.com/s/lemonada/v26/0QI-MXFD9oygTWy_R-FFlwV-bgfR7QJGnex2mfWc3Z2pTg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Lemonada" - } - ] - }, - { - "name": "Lexend", - "fontFamily": "Lexend, sans-serif", - "slug": "lexend", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/lexend/v18/wlptgwvFAVdoq2_F94zlCfv0bz1WCzsX_LBte6KuGEo.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Lexend" - }, - { - "src": "http://fonts.gstatic.com/s/lexend/v18/wlptgwvFAVdoq2_F94zlCfv0bz1WC7sW_LBte6KuGEo.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Lexend" - }, - { - "src": "http://fonts.gstatic.com/s/lexend/v18/wlptgwvFAVdoq2_F94zlCfv0bz1WC2UW_LBte6KuGEo.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Lexend" - }, - { - "src": "http://fonts.gstatic.com/s/lexend/v18/wlptgwvFAVdoq2_F94zlCfv0bz1WCzsW_LBte6KuGEo.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Lexend" - }, - { - "src": "http://fonts.gstatic.com/s/lexend/v18/wlptgwvFAVdoq2_F94zlCfv0bz1WCwkW_LBte6KuGEo.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Lexend" - }, - { - "src": "http://fonts.gstatic.com/s/lexend/v18/wlptgwvFAVdoq2_F94zlCfv0bz1WC-UR_LBte6KuGEo.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Lexend" - }, - { - "src": "http://fonts.gstatic.com/s/lexend/v18/wlptgwvFAVdoq2_F94zlCfv0bz1WC9wR_LBte6KuGEo.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Lexend" - }, - { - "src": "http://fonts.gstatic.com/s/lexend/v18/wlptgwvFAVdoq2_F94zlCfv0bz1WC7sR_LBte6KuGEo.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Lexend" - }, - { - "src": "http://fonts.gstatic.com/s/lexend/v18/wlptgwvFAVdoq2_F94zlCfv0bz1WC5IR_LBte6KuGEo.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Lexend" - } - ] - }, - { - "name": "Lexend Deca", - "fontFamily": "Lexend Deca, sans-serif", - "slug": "lexend-deca", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/lexenddeca/v21/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U48MxArBPCqLNflg.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Lexend Deca" - }, - { - "src": "http://fonts.gstatic.com/s/lexenddeca/v21/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4cM1ArBPCqLNflg.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Lexend Deca" - }, - { - "src": "http://fonts.gstatic.com/s/lexenddeca/v21/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4rs1ArBPCqLNflg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Lexend Deca" - }, - { - "src": "http://fonts.gstatic.com/s/lexenddeca/v21/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U48M1ArBPCqLNflg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Lexend Deca" - }, - { - "src": "http://fonts.gstatic.com/s/lexenddeca/v21/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4ws1ArBPCqLNflg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Lexend Deca" - }, - { - "src": "http://fonts.gstatic.com/s/lexenddeca/v21/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4LspArBPCqLNflg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Lexend Deca" - }, - { - "src": "http://fonts.gstatic.com/s/lexenddeca/v21/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4F8pArBPCqLNflg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Lexend Deca" - }, - { - "src": "http://fonts.gstatic.com/s/lexenddeca/v21/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4cMpArBPCqLNflg.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Lexend Deca" - }, - { - "src": "http://fonts.gstatic.com/s/lexenddeca/v21/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4WcpArBPCqLNflg.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Lexend Deca" - } - ] - }, - { - "name": "Lexend Exa", - "fontFamily": "Lexend Exa, sans-serif", - "slug": "lexend-exa", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/lexendexa/v30/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9r7T6bHHJ8BRq0b.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Lexend Exa" - }, - { - "src": "http://fonts.gstatic.com/s/lexendexa/v30/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9p7TqbHHJ8BRq0b.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Lexend Exa" - }, - { - "src": "http://fonts.gstatic.com/s/lexendexa/v30/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9qlTqbHHJ8BRq0b.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Lexend Exa" - }, - { - "src": "http://fonts.gstatic.com/s/lexendexa/v30/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9r7TqbHHJ8BRq0b.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Lexend Exa" - }, - { - "src": "http://fonts.gstatic.com/s/lexendexa/v30/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9rJTqbHHJ8BRq0b.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Lexend Exa" - }, - { - "src": "http://fonts.gstatic.com/s/lexendexa/v30/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9olSabHHJ8BRq0b.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Lexend Exa" - }, - { - "src": "http://fonts.gstatic.com/s/lexendexa/v30/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9ocSabHHJ8BRq0b.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Lexend Exa" - }, - { - "src": "http://fonts.gstatic.com/s/lexendexa/v30/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9p7SabHHJ8BRq0b.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Lexend Exa" - }, - { - "src": "http://fonts.gstatic.com/s/lexendexa/v30/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9pSSabHHJ8BRq0b.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Lexend Exa" - } - ] - }, - { - "name": "Lexend Giga", - "fontFamily": "Lexend Giga, sans-serif", - "slug": "lexend-giga", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/lexendgiga/v24/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRC2LmE68oo6eepYQ.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Lexend Giga" - }, - { - "src": "http://fonts.gstatic.com/s/lexendgiga/v24/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRCWLiE68oo6eepYQ.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Lexend Giga" - }, - { - "src": "http://fonts.gstatic.com/s/lexendgiga/v24/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRChriE68oo6eepYQ.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Lexend Giga" - }, - { - "src": "http://fonts.gstatic.com/s/lexendgiga/v24/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRC2LiE68oo6eepYQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Lexend Giga" - }, - { - "src": "http://fonts.gstatic.com/s/lexendgiga/v24/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRC6riE68oo6eepYQ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Lexend Giga" - }, - { - "src": "http://fonts.gstatic.com/s/lexendgiga/v24/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRCBr-E68oo6eepYQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Lexend Giga" - }, - { - "src": "http://fonts.gstatic.com/s/lexendgiga/v24/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRCP7-E68oo6eepYQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Lexend Giga" - }, - { - "src": "http://fonts.gstatic.com/s/lexendgiga/v24/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRCWL-E68oo6eepYQ.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Lexend Giga" - }, - { - "src": "http://fonts.gstatic.com/s/lexendgiga/v24/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRCcb-E68oo6eepYQ.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Lexend Giga" - } - ] - }, - { - "name": "Lexend Mega", - "fontFamily": "Lexend Mega, sans-serif", - "slug": "lexend-mega", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/lexendmega/v24/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDL8fivveyiq9EqQw.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Lexend Mega" - }, - { - "src": "http://fonts.gstatic.com/s/lexendmega/v24/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDLcfmvveyiq9EqQw.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Lexend Mega" - }, - { - "src": "http://fonts.gstatic.com/s/lexendmega/v24/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDLr_mvveyiq9EqQw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Lexend Mega" - }, - { - "src": "http://fonts.gstatic.com/s/lexendmega/v24/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDL8fmvveyiq9EqQw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Lexend Mega" - }, - { - "src": "http://fonts.gstatic.com/s/lexendmega/v24/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDLw_mvveyiq9EqQw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Lexend Mega" - }, - { - "src": "http://fonts.gstatic.com/s/lexendmega/v24/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDLL_6vveyiq9EqQw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Lexend Mega" - }, - { - "src": "http://fonts.gstatic.com/s/lexendmega/v24/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDLFv6vveyiq9EqQw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Lexend Mega" - }, - { - "src": "http://fonts.gstatic.com/s/lexendmega/v24/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDLcf6vveyiq9EqQw.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Lexend Mega" - }, - { - "src": "http://fonts.gstatic.com/s/lexendmega/v24/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDLWP6vveyiq9EqQw.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Lexend Mega" - } - ] - }, - { - "name": "Lexend Peta", - "fontFamily": "Lexend Peta, sans-serif", - "slug": "lexend-peta", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/lexendpeta/v27/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgR6SFyW1YuRTsnfw.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Lexend Peta" - }, - { - "src": "http://fonts.gstatic.com/s/lexendpeta/v27/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgRaSByW1YuRTsnfw.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Lexend Peta" - }, - { - "src": "http://fonts.gstatic.com/s/lexendpeta/v27/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgRtyByW1YuRTsnfw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Lexend Peta" - }, - { - "src": "http://fonts.gstatic.com/s/lexendpeta/v27/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgR6SByW1YuRTsnfw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Lexend Peta" - }, - { - "src": "http://fonts.gstatic.com/s/lexendpeta/v27/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgR2yByW1YuRTsnfw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Lexend Peta" - }, - { - "src": "http://fonts.gstatic.com/s/lexendpeta/v27/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgRNydyW1YuRTsnfw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Lexend Peta" - }, - { - "src": "http://fonts.gstatic.com/s/lexendpeta/v27/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgRDidyW1YuRTsnfw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Lexend Peta" - }, - { - "src": "http://fonts.gstatic.com/s/lexendpeta/v27/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgRaSdyW1YuRTsnfw.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Lexend Peta" - }, - { - "src": "http://fonts.gstatic.com/s/lexendpeta/v27/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgRQCdyW1YuRTsnfw.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Lexend Peta" - } - ] - }, - { - "name": "Lexend Tera", - "fontFamily": "Lexend Tera, sans-serif", - "slug": "lexend-tera", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/lexendtera/v27/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiM5zITdpz0fYxcrQ.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Lexend Tera" - }, - { - "src": "http://fonts.gstatic.com/s/lexendtera/v27/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiMZzMTdpz0fYxcrQ.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Lexend Tera" - }, - { - "src": "http://fonts.gstatic.com/s/lexendtera/v27/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiMuTMTdpz0fYxcrQ.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Lexend Tera" - }, - { - "src": "http://fonts.gstatic.com/s/lexendtera/v27/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiM5zMTdpz0fYxcrQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Lexend Tera" - }, - { - "src": "http://fonts.gstatic.com/s/lexendtera/v27/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiM1TMTdpz0fYxcrQ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Lexend Tera" - }, - { - "src": "http://fonts.gstatic.com/s/lexendtera/v27/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiMOTQTdpz0fYxcrQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Lexend Tera" - }, - { - "src": "http://fonts.gstatic.com/s/lexendtera/v27/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiMADQTdpz0fYxcrQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Lexend Tera" - }, - { - "src": "http://fonts.gstatic.com/s/lexendtera/v27/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiMZzQTdpz0fYxcrQ.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Lexend Tera" - }, - { - "src": "http://fonts.gstatic.com/s/lexendtera/v27/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiMTjQTdpz0fYxcrQ.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Lexend Tera" - } - ] - }, - { - "name": "Lexend Zetta", - "fontFamily": "Lexend Zetta, sans-serif", - "slug": "lexend-zetta", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/lexendzetta/v28/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCy9bH0z5jbs8qbts.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Lexend Zetta" - }, - { - "src": "http://fonts.gstatic.com/s/lexendzetta/v28/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCy1bG0z5jbs8qbts.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Lexend Zetta" - }, - { - "src": "http://fonts.gstatic.com/s/lexendzetta/v28/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCy4jG0z5jbs8qbts.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Lexend Zetta" - }, - { - "src": "http://fonts.gstatic.com/s/lexendzetta/v28/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCy9bG0z5jbs8qbts.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Lexend Zetta" - }, - { - "src": "http://fonts.gstatic.com/s/lexendzetta/v28/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCy-TG0z5jbs8qbts.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Lexend Zetta" - }, - { - "src": "http://fonts.gstatic.com/s/lexendzetta/v28/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCywjB0z5jbs8qbts.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Lexend Zetta" - }, - { - "src": "http://fonts.gstatic.com/s/lexendzetta/v28/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCyzHB0z5jbs8qbts.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Lexend Zetta" - }, - { - "src": "http://fonts.gstatic.com/s/lexendzetta/v28/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCy1bB0z5jbs8qbts.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Lexend Zetta" - }, - { - "src": "http://fonts.gstatic.com/s/lexendzetta/v28/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCy3_B0z5jbs8qbts.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Lexend Zetta" - } - ] - }, - { - "name": "Libre Barcode 128", - "fontFamily": "Libre Barcode 128, system-ui", - "slug": "libre-barcode-128", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/librebarcode128/v26/cIfnMbdUsUoiW3O_hVviCwVjuLtXeJ_A_gMk0izH.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Libre Barcode 128" - } - ] - }, - { - "name": "Libre Barcode 128 Text", - "fontFamily": "Libre Barcode 128 Text, system-ui", - "slug": "libre-barcode-128-text", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/librebarcode128text/v26/fdNv9tubt3ZEnz1Gu3I4-zppwZ9CWZ16Z0w5cV3Y6M90w4k.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Libre Barcode 128 Text" - } - ] - }, - { - "name": "Libre Barcode 39", - "fontFamily": "Libre Barcode 39, system-ui", - "slug": "libre-barcode-39", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/librebarcode39/v19/-nFnOHM08vwC6h8Li1eQnP_AHzI2K_d709jy92k.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Libre Barcode 39" - } - ] - }, - { - "name": "Libre Barcode 39 Extended", - "fontFamily": "Libre Barcode 39 Extended, system-ui", - "slug": "libre-barcode-39-extended", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/librebarcode39extended/v25/8At7Gt6_O5yNS0-K4Nf5U922qSzhJ3dUdfJpwNUgfNRCOZ1GOBw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Libre Barcode 39 Extended" - } - ] - }, - { - "name": "Libre Barcode 39 Extended Text", - "fontFamily": "Libre Barcode 39 Extended Text, system-ui", - "slug": "libre-barcode-39-extended-text", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/librebarcode39extendedtext/v25/eLG1P_rwIgOiDA7yrs9LoKaYRVLQ1YldrrOnnL7xPO4jNP68fLIiPopNNA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Libre Barcode 39 Extended Text" - } - ] - }, - { - "name": "Libre Barcode 39 Text", - "fontFamily": "Libre Barcode 39 Text, system-ui", - "slug": "libre-barcode-39-text", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/librebarcode39text/v26/sJoa3KhViNKANw_E3LwoDXvs5Un0HQ1vT-031RRL-9rYaw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Libre Barcode 39 Text" - } - ] - }, - { - "name": "Libre Barcode EAN13 Text", - "fontFamily": "Libre Barcode EAN13 Text, system-ui", - "slug": "libre-barcode-ean13-text", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/librebarcodeean13text/v19/wlpigxXFDU1_oCu9nfZytgIqSG0XRcJm_OQiB96PAGEki52WfA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Libre Barcode EAN13 Text" - } - ] - }, - { - "name": "Libre Baskerville", - "fontFamily": "Libre Baskerville, serif", - "slug": "libre-baskerville", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/librebaskerville/v14/kmKnZrc3Hgbbcjq75U4uslyuy4kn0pNeYRI4CN2V.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Libre Baskerville" - }, - { - "src": "http://fonts.gstatic.com/s/librebaskerville/v14/kmKhZrc3Hgbbcjq75U4uslyuy4kn0qNcaxYaDc2V2ro.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Libre Baskerville" - }, - { - "src": "http://fonts.gstatic.com/s/librebaskerville/v14/kmKiZrc3Hgbbcjq75U4uslyuy4kn0qviTjYwI8Gcw6Oi.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Libre Baskerville" - } - ] - }, - { - "name": "Libre Bodoni", - "fontFamily": "Libre Bodoni, serif", - "slug": "libre-bodoni", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/librebodoni/v5/_Xm--H45qDWDYULr5OfyZudXzSBgY2oMBGte6I1fwWzZcOb3U3s.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Libre Bodoni" - }, - { - "src": "http://fonts.gstatic.com/s/librebodoni/v5/_Xm--H45qDWDYULr5OfyZudXzSBgY2oMBGte6L9fwWzZcOb3U3s.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Libre Bodoni" - }, - { - "src": "http://fonts.gstatic.com/s/librebodoni/v5/_Xm--H45qDWDYULr5OfyZudXzSBgY2oMBGte6FNYwWzZcOb3U3s.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Libre Bodoni" - }, - { - "src": "http://fonts.gstatic.com/s/librebodoni/v5/_Xm--H45qDWDYULr5OfyZudXzSBgY2oMBGte6GpYwWzZcOb3U3s.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Libre Bodoni" - }, - { - "src": "http://fonts.gstatic.com/s/librebodoni/v5/_Xm4-H45qDWDYULr5OfyZud9xBKfuwNnnsVZ_UUcKS_TdMTyQ3syLg.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Libre Bodoni" - }, - { - "src": "http://fonts.gstatic.com/s/librebodoni/v5/_Xm4-H45qDWDYULr5OfyZud9xBKfuwNnnsVZ_UUcGy_TdMTyQ3syLg.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Libre Bodoni" - }, - { - "src": "http://fonts.gstatic.com/s/librebodoni/v5/_Xm4-H45qDWDYULr5OfyZud9xBKfuwNnnsVZ_UUc9yjTdMTyQ3syLg.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Libre Bodoni" - }, - { - "src": "http://fonts.gstatic.com/s/librebodoni/v5/_Xm4-H45qDWDYULr5OfyZud9xBKfuwNnnsVZ_UUczijTdMTyQ3syLg.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Libre Bodoni" - } - ] - }, - { - "name": "Libre Caslon Display", - "fontFamily": "Libre Caslon Display, serif", - "slug": "libre-caslon-display", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/librecaslondisplay/v14/TuGOUUFxWphYQ6YI6q9Xp61FQzxDRKmzr2lRdRhtCC4d.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Libre Caslon Display" - } - ] - }, - { - "name": "Libre Caslon Text", - "fontFamily": "Libre Caslon Text, serif", - "slug": "libre-caslon-text", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/librecaslontext/v5/DdT878IGsGw1aF1JU10PUbTvNNaDMcq_3eNrHgO1.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Libre Caslon Text" - }, - { - "src": "http://fonts.gstatic.com/s/librecaslontext/v5/DdT678IGsGw1aF1JU10PUbTvNNaDMfq91-dJGxO1q9o.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Libre Caslon Text" - }, - { - "src": "http://fonts.gstatic.com/s/librecaslontext/v5/DdT578IGsGw1aF1JU10PUbTvNNaDMfID8sdjNR-8ssPt.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Libre Caslon Text" - } - ] - }, - { - "name": "Libre Franklin", - "fontFamily": "Libre Franklin, sans-serif", - "slug": "libre-franklin", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhLsSUB9rIb-JH1g.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Libre Franklin" - }, - { - "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhrsWUB9rIb-JH1g.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Libre Franklin" - }, - { - "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhcMWUB9rIb-JH1g.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Libre Franklin" - }, - { - "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhLsWUB9rIb-JH1g.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Libre Franklin" - }, - { - "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhHMWUB9rIb-JH1g.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Libre Franklin" - }, - { - "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduh8MKUB9rIb-JH1g.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Libre Franklin" - }, - { - "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhycKUB9rIb-JH1g.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Libre Franklin" - }, - { - "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhrsKUB9rIb-JH1g.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Libre Franklin" - }, - { - "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhh8KUB9rIb-JH1g.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Libre Franklin" - }, - { - "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05oZ8RdDMTedX1sGE.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Libre Franklin" - }, - { - "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05ob8RNDMTedX1sGE.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Libre Franklin" - }, - { - "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05oYiRNDMTedX1sGE.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Libre Franklin" - }, - { - "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05oZ8RNDMTedX1sGE.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Libre Franklin" - }, - { - "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05oZORNDMTedX1sGE.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Libre Franklin" - }, - { - "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05oaiQ9DMTedX1sGE.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Libre Franklin" - }, - { - "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05oabQ9DMTedX1sGE.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Libre Franklin" - }, - { - "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05ob8Q9DMTedX1sGE.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Libre Franklin" - }, - { - "src": "http://fonts.gstatic.com/s/librefranklin/v13/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05obVQ9DMTedX1sGE.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Libre Franklin" - } - ] - }, - { - "name": "Licorice", - "fontFamily": "Licorice, cursive", - "slug": "licorice", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/licorice/v3/t5tjIR8TMomTCAyjNk23hqLgzCHu.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Licorice" - } - ] - }, - { - "name": "Life Savers", - "fontFamily": "Life Savers, system-ui", - "slug": "life-savers", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/lifesavers/v18/ZXuie1UftKKabUQMgxAal_lrFgpbuNvB.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Life Savers" - }, - { - "src": "http://fonts.gstatic.com/s/lifesavers/v18/ZXu_e1UftKKabUQMgxAal8HXOS5Tk8fIpPRW.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Life Savers" - }, - { - "src": "http://fonts.gstatic.com/s/lifesavers/v18/ZXu_e1UftKKabUQMgxAal8HLOi5Tk8fIpPRW.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Life Savers" - } - ] - }, - { - "name": "Lilita One", - "fontFamily": "Lilita One, system-ui", - "slug": "lilita-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/lilitaone/v13/i7dPIFZ9Zz-WBtRtedDbUEZ2RFq7AwU.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Lilita One" - } - ] - }, - { - "name": "Lily Script One", - "fontFamily": "Lily Script One, system-ui", - "slug": "lily-script-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/lilyscriptone/v15/LhW9MV7ZMfIPdMxeBjBvFN8SXLS4gsSjQNsRMg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Lily Script One" - } - ] - }, - { - "name": "Limelight", - "fontFamily": "Limelight, system-ui", - "slug": "limelight", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/limelight/v17/XLYkIZL7aopJVbZJHDuYPeNGrnY2TA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Limelight" - } - ] - }, - { - "name": "Linden Hill", - "fontFamily": "Linden Hill, serif", - "slug": "linden-hill", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/lindenhill/v22/-F61fjxoKSg9Yc3hZgO8ygFI7CwC009k.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Linden Hill" - }, - { - "src": "http://fonts.gstatic.com/s/lindenhill/v22/-F63fjxoKSg9Yc3hZgO8yjFK5igg1l9kn-s.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Linden Hill" - } - ] - }, - { - "name": "Literata", - "fontFamily": "Literata, serif", - "slug": "literata", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/literata/v34/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbJG_F_bcTWCWp8g.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Literata" - }, - { - "src": "http://fonts.gstatic.com/s/literata/v34/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbE-_F_bcTWCWp8g.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Literata" - }, - { - "src": "http://fonts.gstatic.com/s/literata/v34/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbBG_F_bcTWCWp8g.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Literata" - }, - { - "src": "http://fonts.gstatic.com/s/literata/v34/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbCO_F_bcTWCWp8g.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Literata" - }, - { - "src": "http://fonts.gstatic.com/s/literata/v34/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbM-4F_bcTWCWp8g.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Literata" - }, - { - "src": "http://fonts.gstatic.com/s/literata/v34/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbPa4F_bcTWCWp8g.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Literata" - }, - { - "src": "http://fonts.gstatic.com/s/literata/v34/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbJG4F_bcTWCWp8g.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Literata" - }, - { - "src": "http://fonts.gstatic.com/s/literata/v34/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbLi4F_bcTWCWp8g.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Literata" - }, - { - "src": "http://fonts.gstatic.com/s/literata/v34/or3NQ6P12-iJxAIgLYT1PLs1Zd0nfUwAbeGVKoRYzNiCp1OUedn8f7XWSUKTt8iVow.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Literata" - }, - { - "src": "http://fonts.gstatic.com/s/literata/v34/or3NQ6P12-iJxAIgLYT1PLs1Zd0nfUwAbeGVKoRYzNiCp1OUedn8obXWSUKTt8iVow.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Literata" - }, - { - "src": "http://fonts.gstatic.com/s/literata/v34/or3NQ6P12-iJxAIgLYT1PLs1Zd0nfUwAbeGVKoRYzNiCp1OUedn8_7XWSUKTt8iVow.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Literata" - }, - { - "src": "http://fonts.gstatic.com/s/literata/v34/or3NQ6P12-iJxAIgLYT1PLs1Zd0nfUwAbeGVKoRYzNiCp1OUedn8zbXWSUKTt8iVow.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Literata" - }, - { - "src": "http://fonts.gstatic.com/s/literata/v34/or3NQ6P12-iJxAIgLYT1PLs1Zd0nfUwAbeGVKoRYzNiCp1OUedn8IbLWSUKTt8iVow.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Literata" - }, - { - "src": "http://fonts.gstatic.com/s/literata/v34/or3NQ6P12-iJxAIgLYT1PLs1Zd0nfUwAbeGVKoRYzNiCp1OUedn8GLLWSUKTt8iVow.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Literata" - }, - { - "src": "http://fonts.gstatic.com/s/literata/v34/or3NQ6P12-iJxAIgLYT1PLs1Zd0nfUwAbeGVKoRYzNiCp1OUedn8f7LWSUKTt8iVow.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Literata" - }, - { - "src": "http://fonts.gstatic.com/s/literata/v34/or3NQ6P12-iJxAIgLYT1PLs1Zd0nfUwAbeGVKoRYzNiCp1OUedn8VrLWSUKTt8iVow.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Literata" - } - ] - }, - { - "name": "Liu Jian Mao Cao", - "fontFamily": "Liu Jian Mao Cao, cursive", - "slug": "liu-jian-mao-cao", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/liujianmaocao/v15/~ChIKEExpdSBKaWFuIE1hbyBDYW8gACoECAEYAQ==.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Liu Jian Mao Cao" - } - ] - }, - { - "name": "Livvic", - "fontFamily": "Livvic, sans-serif", - "slug": "livvic", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/livvic/v14/rnCr-x1S2hzjrlffC-M-mHnOSOuk.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Livvic" - }, - { - "src": "http://fonts.gstatic.com/s/livvic/v14/rnCt-x1S2hzjrlfXbdtakn3sTfukQHs.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Livvic" - }, - { - "src": "http://fonts.gstatic.com/s/livvic/v14/rnCq-x1S2hzjrlffp8IeslfCQfK9WQ.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Livvic" - }, - { - "src": "http://fonts.gstatic.com/s/livvic/v14/rnCs-x1S2hzjrlfXbdv2s13GY_etWWIJ.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Livvic" - }, - { - "src": "http://fonts.gstatic.com/s/livvic/v14/rnCq-x1S2hzjrlffw8EeslfCQfK9WQ.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Livvic" - }, - { - "src": "http://fonts.gstatic.com/s/livvic/v14/rnCs-x1S2hzjrlfXbduSsF3GY_etWWIJ.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Livvic" - }, - { - "src": "http://fonts.gstatic.com/s/livvic/v14/rnCp-x1S2hzjrlfnb-k6unzeSA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Livvic" - }, - { - "src": "http://fonts.gstatic.com/s/livvic/v14/rnCr-x1S2hzjrlfXbeM-mHnOSOuk.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Livvic" - }, - { - "src": "http://fonts.gstatic.com/s/livvic/v14/rnCq-x1S2hzjrlffm8AeslfCQfK9WQ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Livvic" - }, - { - "src": "http://fonts.gstatic.com/s/livvic/v14/rnCs-x1S2hzjrlfXbdvKsV3GY_etWWIJ.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Livvic" - }, - { - "src": "http://fonts.gstatic.com/s/livvic/v14/rnCq-x1S2hzjrlfft8ceslfCQfK9WQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Livvic" - }, - { - "src": "http://fonts.gstatic.com/s/livvic/v14/rnCs-x1S2hzjrlfXbdvmtl3GY_etWWIJ.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Livvic" - }, - { - "src": "http://fonts.gstatic.com/s/livvic/v14/rnCq-x1S2hzjrlff08YeslfCQfK9WQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Livvic" - }, - { - "src": "http://fonts.gstatic.com/s/livvic/v14/rnCs-x1S2hzjrlfXbduCt13GY_etWWIJ.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Livvic" - }, - { - "src": "http://fonts.gstatic.com/s/livvic/v14/rnCq-x1S2hzjrlff68QeslfCQfK9WQ.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Livvic" - }, - { - "src": "http://fonts.gstatic.com/s/livvic/v14/rnCs-x1S2hzjrlfXbdu6tV3GY_etWWIJ.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Livvic" - } - ] - }, - { - "name": "Lobster", - "fontFamily": "Lobster, system-ui", - "slug": "lobster", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/lobster/v28/neILzCirqoswsqX9_oWsMqEzSJQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Lobster" - } - ] - }, - { - "name": "Lobster Two", - "fontFamily": "Lobster Two, system-ui", - "slug": "lobster-two", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/lobstertwo/v18/BngMUXZGTXPUvIoyV6yN59fK7KSJ4ACD.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Lobster Two" - }, - { - "src": "http://fonts.gstatic.com/s/lobstertwo/v18/BngOUXZGTXPUvIoyV6yN5-fI5qCr5RCDY_k.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Lobster Two" - }, - { - "src": "http://fonts.gstatic.com/s/lobstertwo/v18/BngRUXZGTXPUvIoyV6yN5-92w4CByxyKeuDp.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Lobster Two" - }, - { - "src": "http://fonts.gstatic.com/s/lobstertwo/v18/BngTUXZGTXPUvIoyV6yN5-fI3hyEwRiof_DpXMY.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Lobster Two" - } - ] - }, - { - "name": "Londrina Outline", - "fontFamily": "Londrina Outline, system-ui", - "slug": "londrina-outline", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/londrinaoutline/v23/C8c44dM8vmb14dfsZxhetg3pDH-SfuoxrSKMDvI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Londrina Outline" - } - ] - }, - { - "name": "Londrina Shadow", - "fontFamily": "Londrina Shadow, system-ui", - "slug": "londrina-shadow", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/londrinashadow/v22/oPWX_kB4kOQoWNJmjxLV5JuoCUlXRlaSxkrMCQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Londrina Shadow" - } - ] - }, - { - "name": "Londrina Sketch", - "fontFamily": "Londrina Sketch, system-ui", - "slug": "londrina-sketch", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/londrinasketch/v21/c4m41npxGMTnomOHtRU68eIJn8qfWWn5Pos6CA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Londrina Sketch" - } - ] - }, - { - "name": "Londrina Solid", - "fontFamily": "Londrina Solid, system-ui", - "slug": "londrina-solid", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/londrinasolid/v15/flUjRq6sw40kQEJxWNgkLuudGfs9KBYesZHhV64.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Londrina Solid" - }, - { - "src": "http://fonts.gstatic.com/s/londrinasolid/v15/flUiRq6sw40kQEJxWNgkLuudGfv1CjY0n53oTrcL.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Londrina Solid" - }, - { - "src": "http://fonts.gstatic.com/s/londrinasolid/v15/flUhRq6sw40kQEJxWNgkLuudGcNZIhI8tIHh.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Londrina Solid" - }, - { - "src": "http://fonts.gstatic.com/s/londrinasolid/v15/flUiRq6sw40kQEJxWNgkLuudGfvdDzY0n53oTrcL.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Londrina Solid" - } - ] - }, - { - "name": "Long Cang", - "fontFamily": "Long Cang, cursive", - "slug": "long-cang", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/longcang/v17/LYjAdGP8kkgoTec8zkRgrXArXN7HWQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Long Cang" - } - ] - }, - { - "name": "Lora", - "fontFamily": "Lora, serif", - "slug": "lora", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/lora/v32/0QI6MX1D_JOuGQbT0gvTJPa787weuyJGmKxemMeZ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Lora" - }, - { - "src": "http://fonts.gstatic.com/s/lora/v32/0QI6MX1D_JOuGQbT0gvTJPa787wsuyJGmKxemMeZ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Lora" - }, - { - "src": "http://fonts.gstatic.com/s/lora/v32/0QI6MX1D_JOuGQbT0gvTJPa787zAvCJGmKxemMeZ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Lora" - }, - { - "src": "http://fonts.gstatic.com/s/lora/v32/0QI6MX1D_JOuGQbT0gvTJPa787z5vCJGmKxemMeZ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Lora" - }, - { - "src": "http://fonts.gstatic.com/s/lora/v32/0QI8MX1D_JOuMw_hLdO6T2wV9KnW-MoFkqh8ndeZzZ0.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Lora" - }, - { - "src": "http://fonts.gstatic.com/s/lora/v32/0QI8MX1D_JOuMw_hLdO6T2wV9KnW-PgFkqh8ndeZzZ0.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Lora" - }, - { - "src": "http://fonts.gstatic.com/s/lora/v32/0QI8MX1D_JOuMw_hLdO6T2wV9KnW-BQCkqh8ndeZzZ0.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Lora" - }, - { - "src": "http://fonts.gstatic.com/s/lora/v32/0QI8MX1D_JOuMw_hLdO6T2wV9KnW-C0Ckqh8ndeZzZ0.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Lora" - } - ] - }, - { - "name": "Love Light", - "fontFamily": "Love Light, cursive", - "slug": "love-light", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/lovelight/v3/t5tlIR0TNJyZWimpNAXDjKbCyTHuspo.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Love Light" - } - ] - }, - { - "name": "Love Ya Like A Sister", - "fontFamily": "Love Ya Like A Sister, system-ui", - "slug": "love-ya-like-a-sister", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/loveyalikeasister/v16/R70EjzUBlOqPeouhFDfR80-0FhOqJubN-Be78nZcsGGycA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Love Ya Like A Sister" - } - ] - }, - { - "name": "Loved by the King", - "fontFamily": "Loved by the King, cursive", - "slug": "loved-by-the-king", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/lovedbytheking/v17/Gw6gwdP76VDVJNXerebZxUMeRXUF2PiNlXFu2R64.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Loved by the King" - } - ] - }, - { - "name": "Lovers Quarrel", - "fontFamily": "Lovers Quarrel, cursive", - "slug": "lovers-quarrel", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/loversquarrel/v21/Yq6N-LSKXTL-5bCy8ksBzpQ_-zAsY7pO6siz.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Lovers Quarrel" - } - ] - }, - { - "name": "Luckiest Guy", - "fontFamily": "Luckiest Guy, system-ui", - "slug": "luckiest-guy", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/luckiestguy/v18/_gP_1RrxsjcxVyin9l9n_j2RStR3qDpraA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Luckiest Guy" - } - ] - }, - { - "name": "Lusitana", - "fontFamily": "Lusitana, serif", - "slug": "lusitana", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/lusitana/v13/CSR84z9ShvucWzsMKxhaRuMiSct_.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Lusitana" - }, - { - "src": "http://fonts.gstatic.com/s/lusitana/v13/CSR74z9ShvucWzsMKyDmaccqYtd2vfwk.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Lusitana" - } - ] - }, - { - "name": "Lustria", - "fontFamily": "Lustria, serif", - "slug": "lustria", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/lustria/v13/9oRONYodvDEyjuhOrCg5MtPyAcg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Lustria" - } - ] - }, - { - "name": "Luxurious Roman", - "fontFamily": "Luxurious Roman, system-ui", - "slug": "luxurious-roman", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/luxuriousroman/v4/buEupou_ZcP1w0yTKxJJokVSmbpqYgckeo9RMw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Luxurious Roman" - } - ] - }, - { - "name": "Luxurious Script", - "fontFamily": "Luxurious Script, cursive", - "slug": "luxurious-script", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/luxuriousscript/v5/ahcCv9e7yydulT32KZ0rBIoD7DzMg0rOby1JtYk.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Luxurious Script" - } - ] - }, - { - "name": "M PLUS 1", - "fontFamily": "M PLUS 1, sans-serif", - "slug": "m-plus-1", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mplus1/v6/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW5VSe78nZcsGGycA.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "M PLUS 1" - }, - { - "src": "http://fonts.gstatic.com/s/mplus1/v6/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW51Sa78nZcsGGycA.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "M PLUS 1" - }, - { - "src": "http://fonts.gstatic.com/s/mplus1/v6/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW5Cya78nZcsGGycA.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "M PLUS 1" - }, - { - "src": "http://fonts.gstatic.com/s/mplus1/v6/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW5VSa78nZcsGGycA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "M PLUS 1" - }, - { - "src": "http://fonts.gstatic.com/s/mplus1/v6/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW5Zya78nZcsGGycA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "M PLUS 1" - }, - { - "src": "http://fonts.gstatic.com/s/mplus1/v6/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW5iyG78nZcsGGycA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "M PLUS 1" - }, - { - "src": "http://fonts.gstatic.com/s/mplus1/v6/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW5siG78nZcsGGycA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "M PLUS 1" - }, - { - "src": "http://fonts.gstatic.com/s/mplus1/v6/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW51SG78nZcsGGycA.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "M PLUS 1" - }, - { - "src": "http://fonts.gstatic.com/s/mplus1/v6/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW5_CG78nZcsGGycA.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "M PLUS 1" - } - ] - }, - { - "name": "M PLUS 1 Code", - "fontFamily": "M PLUS 1 Code, sans-serif", - "slug": "m-plus-1-code", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mplus1code/v7/ypvMbXOOx2xFpzmYJS3N2_J2hBN6RZ5oIp8m_7iN0XHpapwmdZhY.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "M PLUS 1 Code" - }, - { - "src": "http://fonts.gstatic.com/s/mplus1code/v7/ypvMbXOOx2xFpzmYJS3N2_J2hBN6RZ5oIp8m_7gN0HHpapwmdZhY.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "M PLUS 1 Code" - }, - { - "src": "http://fonts.gstatic.com/s/mplus1code/v7/ypvMbXOOx2xFpzmYJS3N2_J2hBN6RZ5oIp8m_7jT0HHpapwmdZhY.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "M PLUS 1 Code" - }, - { - "src": "http://fonts.gstatic.com/s/mplus1code/v7/ypvMbXOOx2xFpzmYJS3N2_J2hBN6RZ5oIp8m_7iN0HHpapwmdZhY.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "M PLUS 1 Code" - }, - { - "src": "http://fonts.gstatic.com/s/mplus1code/v7/ypvMbXOOx2xFpzmYJS3N2_J2hBN6RZ5oIp8m_7i_0HHpapwmdZhY.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "M PLUS 1 Code" - }, - { - "src": "http://fonts.gstatic.com/s/mplus1code/v7/ypvMbXOOx2xFpzmYJS3N2_J2hBN6RZ5oIp8m_7hT13HpapwmdZhY.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "M PLUS 1 Code" - }, - { - "src": "http://fonts.gstatic.com/s/mplus1code/v7/ypvMbXOOx2xFpzmYJS3N2_J2hBN6RZ5oIp8m_7hq13HpapwmdZhY.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "M PLUS 1 Code" - } - ] - }, - { - "name": "M PLUS 1p", - "fontFamily": "M PLUS 1p, sans-serif", - "slug": "m-plus-1p", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mplus1p/v28/e3tleuShHdiFyPFzBRrQnDQAUW3aq-5N.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "M PLUS 1p" - }, - { - "src": "http://fonts.gstatic.com/s/mplus1p/v28/e3tmeuShHdiFyPFzBRrQVBYge0PWovdU4w.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "M PLUS 1p" - }, - { - "src": "http://fonts.gstatic.com/s/mplus1p/v28/e3tjeuShHdiFyPFzBRro-D4Ec2jKqw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "M PLUS 1p" - }, - { - "src": "http://fonts.gstatic.com/s/mplus1p/v28/e3tmeuShHdiFyPFzBRrQDBcge0PWovdU4w.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "M PLUS 1p" - }, - { - "src": "http://fonts.gstatic.com/s/mplus1p/v28/e3tmeuShHdiFyPFzBRrQRBEge0PWovdU4w.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "M PLUS 1p" - }, - { - "src": "http://fonts.gstatic.com/s/mplus1p/v28/e3tmeuShHdiFyPFzBRrQWBIge0PWovdU4w.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "M PLUS 1p" - }, - { - "src": "http://fonts.gstatic.com/s/mplus1p/v28/e3tmeuShHdiFyPFzBRrQfBMge0PWovdU4w.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "M PLUS 1p" - } - ] - }, - { - "name": "M PLUS 2", - "fontFamily": "M PLUS 2, sans-serif", - "slug": "m-plus-2", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mplus2/v6/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkwOa-VxlqHrzNgAw.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "M PLUS 2" - }, - { - "src": "http://fonts.gstatic.com/s/mplus2/v6/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkwua6VxlqHrzNgAw.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "M PLUS 2" - }, - { - "src": "http://fonts.gstatic.com/s/mplus2/v6/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkwZ66VxlqHrzNgAw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "M PLUS 2" - }, - { - "src": "http://fonts.gstatic.com/s/mplus2/v6/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkwOa6VxlqHrzNgAw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "M PLUS 2" - }, - { - "src": "http://fonts.gstatic.com/s/mplus2/v6/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkwC66VxlqHrzNgAw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "M PLUS 2" - }, - { - "src": "http://fonts.gstatic.com/s/mplus2/v6/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkw56mVxlqHrzNgAw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "M PLUS 2" - }, - { - "src": "http://fonts.gstatic.com/s/mplus2/v6/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkw3qmVxlqHrzNgAw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "M PLUS 2" - }, - { - "src": "http://fonts.gstatic.com/s/mplus2/v6/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkwuamVxlqHrzNgAw.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "M PLUS 2" - }, - { - "src": "http://fonts.gstatic.com/s/mplus2/v6/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkwkKmVxlqHrzNgAw.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "M PLUS 2" - } - ] - }, - { - "name": "M PLUS Code Latin", - "fontFamily": "M PLUS Code Latin, sans-serif", - "slug": "m-plus-code-latin", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mpluscodelatin/v11/hv-ylyV-aXg7x7tULiNXXBA0Np4WMS8fDIymHY8fy8wn4_ifLAtrObKDO0Xf1EbB6i5MqF9TRwg.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "M PLUS Code Latin" - }, - { - "src": "http://fonts.gstatic.com/s/mpluscodelatin/v11/hv-ylyV-aXg7x7tULiNXXBA0Np4WMS8fDIymHY8fy8wn4_ifLAtrObKDO0Xf1MbA6i5MqF9TRwg.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "M PLUS Code Latin" - }, - { - "src": "http://fonts.gstatic.com/s/mpluscodelatin/v11/hv-ylyV-aXg7x7tULiNXXBA0Np4WMS8fDIymHY8fy8wn4_ifLAtrObKDO0Xf1BjA6i5MqF9TRwg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "M PLUS Code Latin" - }, - { - "src": "http://fonts.gstatic.com/s/mpluscodelatin/v11/hv-ylyV-aXg7x7tULiNXXBA0Np4WMS8fDIymHY8fy8wn4_ifLAtrObKDO0Xf1EbA6i5MqF9TRwg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "M PLUS Code Latin" - }, - { - "src": "http://fonts.gstatic.com/s/mpluscodelatin/v11/hv-ylyV-aXg7x7tULiNXXBA0Np4WMS8fDIymHY8fy8wn4_ifLAtrObKDO0Xf1HTA6i5MqF9TRwg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "M PLUS Code Latin" - }, - { - "src": "http://fonts.gstatic.com/s/mpluscodelatin/v11/hv-ylyV-aXg7x7tULiNXXBA0Np4WMS8fDIymHY8fy8wn4_ifLAtrObKDO0Xf1JjH6i5MqF9TRwg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "M PLUS Code Latin" - }, - { - "src": "http://fonts.gstatic.com/s/mpluscodelatin/v11/hv-ylyV-aXg7x7tULiNXXBA0Np4WMS8fDIymHY8fy8wn4_ifLAtrObKDO0Xf1KHH6i5MqF9TRwg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "M PLUS Code Latin" - } - ] - }, - { - "name": "M PLUS Rounded 1c", - "fontFamily": "M PLUS Rounded 1c, sans-serif", - "slug": "m-plus-rounded-1c", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mplusrounded1c/v15/VdGCAYIAV6gnpUpoWwNkYvrugw9RuM3ixLsg6-av1x0.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "M PLUS Rounded 1c" - }, - { - "src": "http://fonts.gstatic.com/s/mplusrounded1c/v15/VdGBAYIAV6gnpUpoWwNkYvrugw9RuM0q5psKxeqmzgRK.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "M PLUS Rounded 1c" - }, - { - "src": "http://fonts.gstatic.com/s/mplusrounded1c/v15/VdGEAYIAV6gnpUpoWwNkYvrugw9RuPWGzr8C7vav.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "M PLUS Rounded 1c" - }, - { - "src": "http://fonts.gstatic.com/s/mplusrounded1c/v15/VdGBAYIAV6gnpUpoWwNkYvrugw9RuM1y55sKxeqmzgRK.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "M PLUS Rounded 1c" - }, - { - "src": "http://fonts.gstatic.com/s/mplusrounded1c/v15/VdGBAYIAV6gnpUpoWwNkYvrugw9RuM064ZsKxeqmzgRK.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "M PLUS Rounded 1c" - }, - { - "src": "http://fonts.gstatic.com/s/mplusrounded1c/v15/VdGBAYIAV6gnpUpoWwNkYvrugw9RuM0m4psKxeqmzgRK.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "M PLUS Rounded 1c" - }, - { - "src": "http://fonts.gstatic.com/s/mplusrounded1c/v15/VdGBAYIAV6gnpUpoWwNkYvrugw9RuM0C45sKxeqmzgRK.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "M PLUS Rounded 1c" - } - ] - }, - { - "name": "Ma Shan Zheng", - "fontFamily": "Ma Shan Zheng, cursive", - "slug": "ma-shan-zheng", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mashanzheng/v10/NaPecZTRCLxvwo41b4gvzkXaRMTsDIRSfr0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Ma Shan Zheng" - } - ] - }, - { - "name": "Macondo", - "fontFamily": "Macondo, system-ui", - "slug": "macondo", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/macondo/v21/RrQQboN9-iB1IXmOS2XO0LBBd4Y.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Macondo" - } - ] - }, - { - "name": "Macondo Swash Caps", - "fontFamily": "Macondo Swash Caps, system-ui", - "slug": "macondo-swash-caps", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/macondoswashcaps/v20/6NUL8EaAJgGKZA7lpt941Z9s6ZYgDq6Oekoa_mm5bA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Macondo Swash Caps" - } - ] - }, - { - "name": "Mada", - "fontFamily": "Mada, sans-serif", - "slug": "mada", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mada/v19/7Aulp_0qnzeSVz7u3PJLcUMYOFlOkHkw2-m9x2iC.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Mada" - }, - { - "src": "http://fonts.gstatic.com/s/mada/v19/7Aulp_0qnzeSVz7u3PJLcUMYOFmQkHkw2-m9x2iC.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Mada" - }, - { - "src": "http://fonts.gstatic.com/s/mada/v19/7Aulp_0qnzeSVz7u3PJLcUMYOFnOkHkw2-m9x2iC.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Mada" - }, - { - "src": "http://fonts.gstatic.com/s/mada/v19/7Aulp_0qnzeSVz7u3PJLcUMYOFn8kHkw2-m9x2iC.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Mada" - }, - { - "src": "http://fonts.gstatic.com/s/mada/v19/7Aulp_0qnzeSVz7u3PJLcUMYOFkQl3kw2-m9x2iC.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Mada" - }, - { - "src": "http://fonts.gstatic.com/s/mada/v19/7Aulp_0qnzeSVz7u3PJLcUMYOFkpl3kw2-m9x2iC.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Mada" - }, - { - "src": "http://fonts.gstatic.com/s/mada/v19/7Aulp_0qnzeSVz7u3PJLcUMYOFlOl3kw2-m9x2iC.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Mada" - }, - { - "src": "http://fonts.gstatic.com/s/mada/v19/7Aulp_0qnzeSVz7u3PJLcUMYOFlnl3kw2-m9x2iC.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Mada" - } - ] - }, - { - "name": "Magra", - "fontFamily": "Magra, sans-serif", - "slug": "magra", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/magra/v14/uK_94ruaZus72k5xIDMfO-ed.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Magra" - }, - { - "src": "http://fonts.gstatic.com/s/magra/v14/uK_w4ruaZus72nbNDxcXEPuUX1ow.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Magra" - } - ] - }, - { - "name": "Maiden Orange", - "fontFamily": "Maiden Orange, system-ui", - "slug": "maiden-orange", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/maidenorange/v25/kJE1BuIX7AUmhi2V4m08kb1XjOZdCZS8FY8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Maiden Orange" - } - ] - }, - { - "name": "Maitree", - "fontFamily": "Maitree, serif", - "slug": "maitree", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/maitree/v10/MjQDmil5tffhpBrklhGNWJGovLdh6OE.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Maitree" - }, - { - "src": "http://fonts.gstatic.com/s/maitree/v10/MjQDmil5tffhpBrklnWOWJGovLdh6OE.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Maitree" - }, - { - "src": "http://fonts.gstatic.com/s/maitree/v10/MjQGmil5tffhpBrkrtmmfJmDoL4.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Maitree" - }, - { - "src": "http://fonts.gstatic.com/s/maitree/v10/MjQDmil5tffhpBrkli2PWJGovLdh6OE.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Maitree" - }, - { - "src": "http://fonts.gstatic.com/s/maitree/v10/MjQDmil5tffhpBrklgGIWJGovLdh6OE.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Maitree" - }, - { - "src": "http://fonts.gstatic.com/s/maitree/v10/MjQDmil5tffhpBrklmWJWJGovLdh6OE.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Maitree" - } - ] - }, - { - "name": "Major Mono Display", - "fontFamily": "Major Mono Display, monospace", - "slug": "major-mono-display", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/majormonodisplay/v13/RWmVoLyb5fEqtsfBX9PDZIGr2tFubRhLCn2QIndPww.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Major Mono Display" - } - ] - }, - { - "name": "Mako", - "fontFamily": "Mako, sans-serif", - "slug": "mako", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mako/v18/H4coBX6Mmc_Z0ST09g478Lo.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Mako" - } - ] - }, - { - "name": "Mali", - "fontFamily": "Mali, cursive", - "slug": "mali", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mali/v10/N0bV2SRONuN4QOLlKlRaJdbWgdY.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Mali" - }, - { - "src": "http://fonts.gstatic.com/s/mali/v10/N0bX2SRONuN4SCj8wlVQIfTTkdbJYA.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Mali" - }, - { - "src": "http://fonts.gstatic.com/s/mali/v10/N0bV2SRONuN4QIbmKlRaJdbWgdY.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Mali" - }, - { - "src": "http://fonts.gstatic.com/s/mali/v10/N0bX2SRONuN4SCj8plZQIfTTkdbJYA.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Mali" - }, - { - "src": "http://fonts.gstatic.com/s/mali/v10/N0ba2SRONuN4eCrODlxxOd8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Mali" - }, - { - "src": "http://fonts.gstatic.com/s/mali/v10/N0bU2SRONuN4SCjECn50Kd_PmA.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Mali" - }, - { - "src": "http://fonts.gstatic.com/s/mali/v10/N0bV2SRONuN4QN7nKlRaJdbWgdY.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Mali" - }, - { - "src": "http://fonts.gstatic.com/s/mali/v10/N0bX2SRONuN4SCj8_ldQIfTTkdbJYA.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Mali" - }, - { - "src": "http://fonts.gstatic.com/s/mali/v10/N0bV2SRONuN4QPLgKlRaJdbWgdY.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Mali" - }, - { - "src": "http://fonts.gstatic.com/s/mali/v10/N0bX2SRONuN4SCj80lBQIfTTkdbJYA.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Mali" - }, - { - "src": "http://fonts.gstatic.com/s/mali/v10/N0bV2SRONuN4QJbhKlRaJdbWgdY.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Mali" - }, - { - "src": "http://fonts.gstatic.com/s/mali/v10/N0bX2SRONuN4SCj8tlFQIfTTkdbJYA.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Mali" - } - ] - }, - { - "name": "Mallanna", - "fontFamily": "Mallanna, sans-serif", - "slug": "mallanna", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mallanna/v13/hv-Vlzx-KEQb84YaDGwzEzRwVvJ-.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Mallanna" - } - ] - }, - { - "name": "Mandali", - "fontFamily": "Mandali, sans-serif", - "slug": "mandali", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mandali/v14/LhWlMVbYOfASNfNUVFk1ZPdcKtA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Mandali" - } - ] - }, - { - "name": "Manjari", - "fontFamily": "Manjari, sans-serif", - "slug": "manjari", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/manjari/v9/k3kSo8UPMOBO2w1UdbroK2vFIaOV8A.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Manjari" - }, - { - "src": "http://fonts.gstatic.com/s/manjari/v9/k3kQo8UPMOBO2w1UTd7iL0nAMaM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Manjari" - }, - { - "src": "http://fonts.gstatic.com/s/manjari/v9/k3kVo8UPMOBO2w1UdWLNC0HrLaqM6Q4.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Manjari" - } - ] - }, - { - "name": "Manrope", - "fontFamily": "Manrope, sans-serif", - "slug": "manrope", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/manrope/v14/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk59FO_F87jxeN7B.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Manrope" - }, - { - "src": "http://fonts.gstatic.com/s/manrope/v14/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk6jFO_F87jxeN7B.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Manrope" - }, - { - "src": "http://fonts.gstatic.com/s/manrope/v14/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk79FO_F87jxeN7B.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Manrope" - }, - { - "src": "http://fonts.gstatic.com/s/manrope/v14/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk7PFO_F87jxeN7B.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Manrope" - }, - { - "src": "http://fonts.gstatic.com/s/manrope/v14/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk4jE-_F87jxeN7B.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Manrope" - }, - { - "src": "http://fonts.gstatic.com/s/manrope/v14/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk4aE-_F87jxeN7B.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Manrope" - }, - { - "src": "http://fonts.gstatic.com/s/manrope/v14/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk59E-_F87jxeN7B.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Manrope" - } - ] - }, - { - "name": "Mansalva", - "fontFamily": "Mansalva, cursive", - "slug": "mansalva", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mansalva/v12/aWB4m0aacbtDfvq5NJllI47vdyBg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Mansalva" - } - ] - }, - { - "name": "Manuale", - "fontFamily": "Manuale, serif", - "slug": "manuale", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/manuale/v28/f0Xp0eas_8Z-TFZdHv3mMxFaSqASeeG6e7wD1TB_JHHY.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Manuale" - }, - { - "src": "http://fonts.gstatic.com/s/manuale/v28/f0Xp0eas_8Z-TFZdHv3mMxFaSqASeeHke7wD1TB_JHHY.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Manuale" - }, - { - "src": "http://fonts.gstatic.com/s/manuale/v28/f0Xp0eas_8Z-TFZdHv3mMxFaSqASeeHWe7wD1TB_JHHY.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Manuale" - }, - { - "src": "http://fonts.gstatic.com/s/manuale/v28/f0Xp0eas_8Z-TFZdHv3mMxFaSqASeeE6fLwD1TB_JHHY.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Manuale" - }, - { - "src": "http://fonts.gstatic.com/s/manuale/v28/f0Xp0eas_8Z-TFZdHv3mMxFaSqASeeEDfLwD1TB_JHHY.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Manuale" - }, - { - "src": "http://fonts.gstatic.com/s/manuale/v28/f0Xp0eas_8Z-TFZdHv3mMxFaSqASeeFkfLwD1TB_JHHY.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Manuale" - }, - { - "src": "http://fonts.gstatic.com/s/manuale/v28/f0Xn0eas_8Z-TFZdNPTUzMkzITq8fvQsOApA3zRdIWHYr8M.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Manuale" - }, - { - "src": "http://fonts.gstatic.com/s/manuale/v28/f0Xn0eas_8Z-TFZdNPTUzMkzITq8fvQsOFRA3zRdIWHYr8M.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Manuale" - }, - { - "src": "http://fonts.gstatic.com/s/manuale/v28/f0Xn0eas_8Z-TFZdNPTUzMkzITq8fvQsOGZA3zRdIWHYr8M.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Manuale" - }, - { - "src": "http://fonts.gstatic.com/s/manuale/v28/f0Xn0eas_8Z-TFZdNPTUzMkzITq8fvQsOIpH3zRdIWHYr8M.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Manuale" - }, - { - "src": "http://fonts.gstatic.com/s/manuale/v28/f0Xn0eas_8Z-TFZdNPTUzMkzITq8fvQsOLNH3zRdIWHYr8M.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Manuale" - }, - { - "src": "http://fonts.gstatic.com/s/manuale/v28/f0Xn0eas_8Z-TFZdNPTUzMkzITq8fvQsONRH3zRdIWHYr8M.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Manuale" - } - ] - }, - { - "name": "Marcellus", - "fontFamily": "Marcellus, serif", - "slug": "marcellus", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/marcellus/v13/wEO_EBrOk8hQLDvIAF8FUfAL3EsHiA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Marcellus" - } - ] - }, - { - "name": "Marcellus SC", - "fontFamily": "Marcellus SC, serif", - "slug": "marcellus-sc", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/marcellussc/v13/ke8iOgUHP1dg-Rmi6RWjbLEPgdydGKikhA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Marcellus SC" - } - ] - }, - { - "name": "Marck Script", - "fontFamily": "Marck Script, cursive", - "slug": "marck-script", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/marckscript/v17/nwpTtK2oNgBA3Or78gapdwuCzyI-aMPF7Q.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Marck Script" - } - ] - }, - { - "name": "Margarine", - "fontFamily": "Margarine, system-ui", - "slug": "margarine", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/margarine/v22/qkBXXvoE6trLT9Y7YLye5JRLkAXbMQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Margarine" - } - ] - }, - { - "name": "Marhey", - "fontFamily": "Marhey, system-ui", - "slug": "marhey", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/marhey/v4/x3d8ck7Laq-T7wl7mqfVrEe9sDvtBZVwO2cXiGevOMw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Marhey" - }, - { - "src": "http://fonts.gstatic.com/s/marhey/v4/x3d8ck7Laq-T7wl7mqfVrEe9sDvtBctwO2cXiGevOMw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Marhey" - }, - { - "src": "http://fonts.gstatic.com/s/marhey/v4/x3d8ck7Laq-T7wl7mqfVrEe9sDvtBflwO2cXiGevOMw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Marhey" - }, - { - "src": "http://fonts.gstatic.com/s/marhey/v4/x3d8ck7Laq-T7wl7mqfVrEe9sDvtBRV3O2cXiGevOMw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Marhey" - }, - { - "src": "http://fonts.gstatic.com/s/marhey/v4/x3d8ck7Laq-T7wl7mqfVrEe9sDvtBSx3O2cXiGevOMw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Marhey" - } - ] - }, - { - "name": "Markazi Text", - "fontFamily": "Markazi Text, serif", - "slug": "markazi-text", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/markazitext/v22/sykh-ydym6AtQaiEtX7yhqb_rV1k_81ZVYYZtfSQT4MlBekmJLo.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Markazi Text" - }, - { - "src": "http://fonts.gstatic.com/s/markazitext/v22/sykh-ydym6AtQaiEtX7yhqb_rV1k_81ZVYYZtcaQT4MlBekmJLo.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Markazi Text" - }, - { - "src": "http://fonts.gstatic.com/s/markazitext/v22/sykh-ydym6AtQaiEtX7yhqb_rV1k_81ZVYYZtSqXT4MlBekmJLo.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Markazi Text" - }, - { - "src": "http://fonts.gstatic.com/s/markazitext/v22/sykh-ydym6AtQaiEtX7yhqb_rV1k_81ZVYYZtROXT4MlBekmJLo.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Markazi Text" - } - ] - }, - { - "name": "Marko One", - "fontFamily": "Marko One, serif", - "slug": "marko-one", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/markoone/v22/9Btq3DFG0cnVM5lw1haaKpUfrHPzUw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Marko One" - } - ] - }, - { - "name": "Marmelad", - "fontFamily": "Marmelad, sans-serif", - "slug": "marmelad", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/marmelad/v18/Qw3eZQdSHj_jK2e-8tFLG-YMC0R8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Marmelad" - } - ] - }, - { - "name": "Martel", - "fontFamily": "Martel, serif", - "slug": "martel", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/martel/v10/PN_yRfK9oXHga0XVqekahRbX9vnDzw.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Martel" - }, - { - "src": "http://fonts.gstatic.com/s/martel/v10/PN_yRfK9oXHga0XVzeoahRbX9vnDzw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Martel" - }, - { - "src": "http://fonts.gstatic.com/s/martel/v10/PN_xRfK9oXHga0XtYcI-jT3L_w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Martel" - }, - { - "src": "http://fonts.gstatic.com/s/martel/v10/PN_yRfK9oXHga0XVuewahRbX9vnDzw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Martel" - }, - { - "src": "http://fonts.gstatic.com/s/martel/v10/PN_yRfK9oXHga0XV3e0ahRbX9vnDzw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Martel" - }, - { - "src": "http://fonts.gstatic.com/s/martel/v10/PN_yRfK9oXHga0XVwe4ahRbX9vnDzw.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Martel" - }, - { - "src": "http://fonts.gstatic.com/s/martel/v10/PN_yRfK9oXHga0XV5e8ahRbX9vnDzw.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Martel" - } - ] - }, - { - "name": "Martel Sans", - "fontFamily": "Martel Sans, sans-serif", - "slug": "martel-sans", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/martelsans/v12/h0GxssGi7VdzDgKjM-4d8hAX5suHFUknqMxQ.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Martel Sans" - }, - { - "src": "http://fonts.gstatic.com/s/martelsans/v12/h0GxssGi7VdzDgKjM-4d8hBz5cuHFUknqMxQ.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Martel Sans" - }, - { - "src": "http://fonts.gstatic.com/s/martelsans/v12/h0GsssGi7VdzDgKjM-4d8ijfze-PPlUu.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Martel Sans" - }, - { - "src": "http://fonts.gstatic.com/s/martelsans/v12/h0GxssGi7VdzDgKjM-4d8hAH48uHFUknqMxQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Martel Sans" - }, - { - "src": "http://fonts.gstatic.com/s/martelsans/v12/h0GxssGi7VdzDgKjM-4d8hBj4suHFUknqMxQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Martel Sans" - }, - { - "src": "http://fonts.gstatic.com/s/martelsans/v12/h0GxssGi7VdzDgKjM-4d8hB_4cuHFUknqMxQ.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Martel Sans" - }, - { - "src": "http://fonts.gstatic.com/s/martelsans/v12/h0GxssGi7VdzDgKjM-4d8hBb4MuHFUknqMxQ.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Martel Sans" - } - ] - }, - { - "name": "Martian Mono", - "fontFamily": "Martian Mono, monospace", - "slug": "martian-mono", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/martianmono/v3/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY1qus6WD75kdpF2.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Martian Mono" - }, - { - "src": "http://fonts.gstatic.com/s/martianmono/v3/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY3qu86WD75kdpF2.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Martian Mono" - }, - { - "src": "http://fonts.gstatic.com/s/martianmono/v3/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY00u86WD75kdpF2.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Martian Mono" - }, - { - "src": "http://fonts.gstatic.com/s/martianmono/v3/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY1qu86WD75kdpF2.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Martian Mono" - }, - { - "src": "http://fonts.gstatic.com/s/martianmono/v3/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY1Yu86WD75kdpF2.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Martian Mono" - }, - { - "src": "http://fonts.gstatic.com/s/martianmono/v3/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY20vM6WD75kdpF2.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Martian Mono" - }, - { - "src": "http://fonts.gstatic.com/s/martianmono/v3/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY2NvM6WD75kdpF2.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Martian Mono" - }, - { - "src": "http://fonts.gstatic.com/s/martianmono/v3/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY3qvM6WD75kdpF2.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Martian Mono" - } - ] - }, - { - "name": "Marvel", - "fontFamily": "Marvel, sans-serif", - "slug": "marvel", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/marvel/v14/nwpVtKeoNgBV0qaIkV7ED366zg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Marvel" - }, - { - "src": "http://fonts.gstatic.com/s/marvel/v14/nwpXtKeoNgBV0qa4k1TALXuqzhA7.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Marvel" - }, - { - "src": "http://fonts.gstatic.com/s/marvel/v14/nwpWtKeoNgBV0qawLXHgB1WmxwkiYQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Marvel" - }, - { - "src": "http://fonts.gstatic.com/s/marvel/v14/nwpQtKeoNgBV0qa4k2x8Al-i5QwyYdrc.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Marvel" - } - ] - }, - { - "name": "Mate", - "fontFamily": "Mate, serif", - "slug": "mate", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mate/v15/m8JdjftRd7WZ2z28WoXSaLU.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Mate" - }, - { - "src": "http://fonts.gstatic.com/s/mate/v15/m8JTjftRd7WZ6z-2XqfXeLVdbw.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Mate" - } - ] - }, - { - "name": "Mate SC", - "fontFamily": "Mate SC, serif", - "slug": "mate-sc", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/matesc/v22/-nF8OGQ1-uoVr2wKyiXZ95OkJwA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Mate SC" - } - ] - }, - { - "name": "Material Icons", - "fontFamily": "Material Icons, monospace", - "slug": "material-icons", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/materialicons/v140/flUhRq6tzZclQEJ-Vdg-IuiaDsNZIhI8tIHh.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Material Icons" - } - ] - }, - { - "name": "Material Icons Outlined", - "fontFamily": "Material Icons Outlined, monospace", - "slug": "material-icons-outlined", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/materialiconsoutlined/v109/gok-H7zzDkdnRel8-DQ6KAXJ69wP1tGnf4ZGhUcdl5GuI2Ze.otf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Material Icons Outlined" - } - ] - }, - { - "name": "Material Icons Round", - "fontFamily": "Material Icons Round, monospace", - "slug": "material-icons-round", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/materialiconsround/v108/LDItaoyNOAY6Uewc665JcIzCKsKc_M9flwmMq_fTTvg-.otf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Material Icons Round" - } - ] - }, - { - "name": "Material Icons Sharp", - "fontFamily": "Material Icons Sharp, monospace", - "slug": "material-icons-sharp", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/materialiconssharp/v109/oPWQ_lt5nv4pWNJpghLP75WiFR4kLh3kvmvSImEyc0vd.otf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Material Icons Sharp" - } - ] - }, - { - "name": "Material Icons Two Tone", - "fontFamily": "Material Icons Two Tone, monospace", - "slug": "material-icons-two-tone", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/materialiconstwotone/v112/hESh6WRmNCxEqUmNyh3JDeGxjVVyMg4tHGctNCu3NjDrH_77.otf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Material Icons Two Tone" - } - ] - }, - { - "name": "Material Symbols Outlined", - "fontFamily": "Material Symbols Outlined, monospace", - "slug": "material-symbols-outlined", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/materialsymbolsoutlined/v114/kJF1BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY43zj-jCxv3fzvRNU22ZXGJpEpjC_1v-p_4MrImHCIJIZrDCvHeembd5zrTgt.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Material Symbols Outlined" - }, - { - "src": "http://fonts.gstatic.com/s/materialsymbolsoutlined/v114/kJF1BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY43zj-jCxv3fzvRNU22ZXGJpEpjC_1v-p_4MrImHCIJIZrDAvHOembd5zrTgt.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Material Symbols Outlined" - }, - { - "src": "http://fonts.gstatic.com/s/materialsymbolsoutlined/v114/kJF1BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY43zj-jCxv3fzvRNU22ZXGJpEpjC_1v-p_4MrImHCIJIZrDDxHOembd5zrTgt.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Material Symbols Outlined" - }, - { - "src": "http://fonts.gstatic.com/s/materialsymbolsoutlined/v114/kJF1BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY43zj-jCxv3fzvRNU22ZXGJpEpjC_1v-p_4MrImHCIJIZrDCvHOembd5zrTgt.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Material Symbols Outlined" - }, - { - "src": "http://fonts.gstatic.com/s/materialsymbolsoutlined/v114/kJF1BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY43zj-jCxv3fzvRNU22ZXGJpEpjC_1v-p_4MrImHCIJIZrDCdHOembd5zrTgt.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Material Symbols Outlined" - }, - { - "src": "http://fonts.gstatic.com/s/materialsymbolsoutlined/v114/kJF1BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY43zj-jCxv3fzvRNU22ZXGJpEpjC_1v-p_4MrImHCIJIZrDBxG-embd5zrTgt.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Material Symbols Outlined" - }, - { - "src": "http://fonts.gstatic.com/s/materialsymbolsoutlined/v114/kJF1BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY43zj-jCxv3fzvRNU22ZXGJpEpjC_1v-p_4MrImHCIJIZrDBIG-embd5zrTgt.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Material Symbols Outlined" - } - ] - }, - { - "name": "Material Symbols Rounded", - "fontFamily": "Material Symbols Rounded, monospace", - "slug": "material-symbols-rounded", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/materialsymbolsrounded/v113/syl0-zNym6YjUruM-QrEh7-nyTnjDwKNJ_190FjpZIvDmUSVOK7BDB_Qb9vUSzq3wzLK-P0J-V_Zs-QtQth3-jOcbTCVpeRL2w5rwZu2rIekXxKJKJBjAa8.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Material Symbols Rounded" - }, - { - "src": "http://fonts.gstatic.com/s/materialsymbolsrounded/v113/syl0-zNym6YjUruM-QrEh7-nyTnjDwKNJ_190FjpZIvDmUSVOK7BDB_Qb9vUSzq3wzLK-P0J-V_Zs-QtQth3-jOcbTCVpeRL2w5rwZu2rAelXxKJKJBjAa8.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Material Symbols Rounded" - }, - { - "src": "http://fonts.gstatic.com/s/materialsymbolsrounded/v113/syl0-zNym6YjUruM-QrEh7-nyTnjDwKNJ_190FjpZIvDmUSVOK7BDB_Qb9vUSzq3wzLK-P0J-V_Zs-QtQth3-jOcbTCVpeRL2w5rwZu2rNmlXxKJKJBjAa8.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Material Symbols Rounded" - }, - { - "src": "http://fonts.gstatic.com/s/materialsymbolsrounded/v113/syl0-zNym6YjUruM-QrEh7-nyTnjDwKNJ_190FjpZIvDmUSVOK7BDB_Qb9vUSzq3wzLK-P0J-V_Zs-QtQth3-jOcbTCVpeRL2w5rwZu2rIelXxKJKJBjAa8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Material Symbols Rounded" - }, - { - "src": "http://fonts.gstatic.com/s/materialsymbolsrounded/v113/syl0-zNym6YjUruM-QrEh7-nyTnjDwKNJ_190FjpZIvDmUSVOK7BDB_Qb9vUSzq3wzLK-P0J-V_Zs-QtQth3-jOcbTCVpeRL2w5rwZu2rLWlXxKJKJBjAa8.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Material Symbols Rounded" - }, - { - "src": "http://fonts.gstatic.com/s/materialsymbolsrounded/v113/syl0-zNym6YjUruM-QrEh7-nyTnjDwKNJ_190FjpZIvDmUSVOK7BDB_Qb9vUSzq3wzLK-P0J-V_Zs-QtQth3-jOcbTCVpeRL2w5rwZu2rFmiXxKJKJBjAa8.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Material Symbols Rounded" - }, - { - "src": "http://fonts.gstatic.com/s/materialsymbolsrounded/v113/syl0-zNym6YjUruM-QrEh7-nyTnjDwKNJ_190FjpZIvDmUSVOK7BDB_Qb9vUSzq3wzLK-P0J-V_Zs-QtQth3-jOcbTCVpeRL2w5rwZu2rGCiXxKJKJBjAa8.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Material Symbols Rounded" - } - ] - }, - { - "name": "Material Symbols Sharp", - "fontFamily": "Material Symbols Sharp, monospace", - "slug": "material-symbols-sharp", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/materialsymbolssharp/v110/gNNBW2J8Roq16WD5tFNRaeLQk6-SHQ_R00k4c2_whPnoY9ruReaU4bHmz74m0ZkGH-VBYe1x0TV6x4yFH8F-H5OdzEL3sVTgJtfbYxOLozCOJ1H7-knk.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Material Symbols Sharp" - }, - { - "src": "http://fonts.gstatic.com/s/materialsymbolssharp/v110/gNNBW2J8Roq16WD5tFNRaeLQk6-SHQ_R00k4c2_whPnoY9ruReaU4bHmz74m0ZkGH-VBYe1x0TV6x4yFH8F-H5OdzEL3sVTgJtfbYxMLojCOJ1H7-knk.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Material Symbols Sharp" - }, - { - "src": "http://fonts.gstatic.com/s/materialsymbolssharp/v110/gNNBW2J8Roq16WD5tFNRaeLQk6-SHQ_R00k4c2_whPnoY9ruReaU4bHmz74m0ZkGH-VBYe1x0TV6x4yFH8F-H5OdzEL3sVTgJtfbYxPVojCOJ1H7-knk.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Material Symbols Sharp" - }, - { - "src": "http://fonts.gstatic.com/s/materialsymbolssharp/v110/gNNBW2J8Roq16WD5tFNRaeLQk6-SHQ_R00k4c2_whPnoY9ruReaU4bHmz74m0ZkGH-VBYe1x0TV6x4yFH8F-H5OdzEL3sVTgJtfbYxOLojCOJ1H7-knk.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Material Symbols Sharp" - }, - { - "src": "http://fonts.gstatic.com/s/materialsymbolssharp/v110/gNNBW2J8Roq16WD5tFNRaeLQk6-SHQ_R00k4c2_whPnoY9ruReaU4bHmz74m0ZkGH-VBYe1x0TV6x4yFH8F-H5OdzEL3sVTgJtfbYxO5ojCOJ1H7-knk.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Material Symbols Sharp" - }, - { - "src": "http://fonts.gstatic.com/s/materialsymbolssharp/v110/gNNBW2J8Roq16WD5tFNRaeLQk6-SHQ_R00k4c2_whPnoY9ruReaU4bHmz74m0ZkGH-VBYe1x0TV6x4yFH8F-H5OdzEL3sVTgJtfbYxNVpTCOJ1H7-knk.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Material Symbols Sharp" - }, - { - "src": "http://fonts.gstatic.com/s/materialsymbolssharp/v110/gNNBW2J8Roq16WD5tFNRaeLQk6-SHQ_R00k4c2_whPnoY9ruReaU4bHmz74m0ZkGH-VBYe1x0TV6x4yFH8F-H5OdzEL3sVTgJtfbYxNspTCOJ1H7-knk.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Material Symbols Sharp" - } - ] - }, - { - "name": "Maven Pro", - "fontFamily": "Maven Pro, sans-serif", - "slug": "maven-pro", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mavenpro/v32/7Auup_AqnyWWAxW2Wk3swUz56MS91Eww8SX25nCpozp5GvU.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Maven Pro" - }, - { - "src": "http://fonts.gstatic.com/s/mavenpro/v32/7Auup_AqnyWWAxW2Wk3swUz56MS91Eww8Rf25nCpozp5GvU.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Maven Pro" - }, - { - "src": "http://fonts.gstatic.com/s/mavenpro/v32/7Auup_AqnyWWAxW2Wk3swUz56MS91Eww8fvx5nCpozp5GvU.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Maven Pro" - }, - { - "src": "http://fonts.gstatic.com/s/mavenpro/v32/7Auup_AqnyWWAxW2Wk3swUz56MS91Eww8cLx5nCpozp5GvU.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Maven Pro" - }, - { - "src": "http://fonts.gstatic.com/s/mavenpro/v32/7Auup_AqnyWWAxW2Wk3swUz56MS91Eww8aXx5nCpozp5GvU.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Maven Pro" - }, - { - "src": "http://fonts.gstatic.com/s/mavenpro/v32/7Auup_AqnyWWAxW2Wk3swUz56MS91Eww8Yzx5nCpozp5GvU.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Maven Pro" - } - ] - }, - { - "name": "McLaren", - "fontFamily": "McLaren, system-ui", - "slug": "mclaren", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mclaren/v14/2EbnL-ZuAXFqZFXISYYf8z2Yt_c.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "McLaren" - } - ] - }, - { - "name": "Mea Culpa", - "fontFamily": "Mea Culpa, cursive", - "slug": "mea-culpa", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/meaculpa/v3/AMOTz4GcuWbEIuza8jsZms0QW3mqyg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Mea Culpa" - } - ] - }, - { - "name": "Meddon", - "fontFamily": "Meddon, cursive", - "slug": "meddon", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/meddon/v20/kmK8ZqA2EgDNeHTZhBdB3y_Aow.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Meddon" - } - ] - }, - { - "name": "MedievalSharp", - "fontFamily": "MedievalSharp, system-ui", - "slug": "medievalsharp", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/medievalsharp/v24/EvOJzAlL3oU5AQl2mP5KdgptAq96MwvXLDk.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "MedievalSharp" - } - ] - }, - { - "name": "Medula One", - "fontFamily": "Medula One, system-ui", - "slug": "medula-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/medulaone/v19/YA9Wr0qb5kjJM6l2V0yukiEqs7GtlvY.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Medula One" - } - ] - }, - { - "name": "Meera Inimai", - "fontFamily": "Meera Inimai, sans-serif", - "slug": "meera-inimai", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/meerainimai/v12/845fNMM5EIqOW5MPuvO3ILep_2jDVevnLQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Meera Inimai" - } - ] - }, - { - "name": "Megrim", - "fontFamily": "Megrim, system-ui", - "slug": "megrim", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/megrim/v16/46kulbz5WjvLqJZlbWXgd0RY1g.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Megrim" - } - ] - }, - { - "name": "Meie Script", - "fontFamily": "Meie Script, cursive", - "slug": "meie-script", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/meiescript/v21/_LOImzDK7erRjhunIspaMjxn5IXg0WDz.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Meie Script" - } - ] - }, - { - "name": "Meow Script", - "fontFamily": "Meow Script, cursive", - "slug": "meow-script", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/meowscript/v5/0FlQVPqanlaJrtr8AnJ0ESch0_0CfDf1.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Meow Script" - } - ] - }, - { - "name": "Merienda", - "fontFamily": "Merienda, cursive", - "slug": "merienda", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/merienda/v19/gNMaW3x8Qoy5_mf8uUkJGHtiYXjmKFy5JHhoSU78QGBV0A.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Merienda" - }, - { - "src": "http://fonts.gstatic.com/s/merienda/v19/gNMaW3x8Qoy5_mf8uUkJGHtiYXjmKFy5enhoSU78QGBV0A.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Merienda" - }, - { - "src": "http://fonts.gstatic.com/s/merienda/v19/gNMaW3x8Qoy5_mf8uUkJGHtiYXjmKFy5SHhoSU78QGBV0A.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Merienda" - }, - { - "src": "http://fonts.gstatic.com/s/merienda/v19/gNMaW3x8Qoy5_mf8uUkJGHtiYXjmKFy5pH9oSU78QGBV0A.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Merienda" - }, - { - "src": "http://fonts.gstatic.com/s/merienda/v19/gNMaW3x8Qoy5_mf8uUkJGHtiYXjmKFy5nX9oSU78QGBV0A.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Merienda" - }, - { - "src": "http://fonts.gstatic.com/s/merienda/v19/gNMaW3x8Qoy5_mf8uUkJGHtiYXjmKFy5-n9oSU78QGBV0A.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Merienda" - }, - { - "src": "http://fonts.gstatic.com/s/merienda/v19/gNMaW3x8Qoy5_mf8uUkJGHtiYXjmKFy5039oSU78QGBV0A.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Merienda" - } - ] - }, - { - "name": "Merriweather", - "fontFamily": "Merriweather, serif", - "slug": "merriweather", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/merriweather/v30/u-4n0qyriQwlOrhSvowK_l521wRpX837pvjxPA.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Merriweather" - }, - { - "src": "http://fonts.gstatic.com/s/merriweather/v30/u-4l0qyriQwlOrhSvowK_l5-eR7lXcf_hP3hPGWH.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Merriweather" - }, - { - "src": "http://fonts.gstatic.com/s/merriweather/v30/u-440qyriQwlOrhSvowK_l5OeyxNV-bnrw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Merriweather" - }, - { - "src": "http://fonts.gstatic.com/s/merriweather/v30/u-4m0qyriQwlOrhSvowK_l5-eSZJdeP3r-Ho.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Merriweather" - }, - { - "src": "http://fonts.gstatic.com/s/merriweather/v30/u-4n0qyriQwlOrhSvowK_l52xwNpX837pvjxPA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Merriweather" - }, - { - "src": "http://fonts.gstatic.com/s/merriweather/v30/u-4l0qyriQwlOrhSvowK_l5-eR71Wsf_hP3hPGWH.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Merriweather" - }, - { - "src": "http://fonts.gstatic.com/s/merriweather/v30/u-4n0qyriQwlOrhSvowK_l52_wFpX837pvjxPA.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Merriweather" - }, - { - "src": "http://fonts.gstatic.com/s/merriweather/v30/u-4l0qyriQwlOrhSvowK_l5-eR7NWMf_hP3hPGWH.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Merriweather" - } - ] - }, - { - "name": "Merriweather Sans", - "fontFamily": "Merriweather Sans, sans-serif", - "slug": "merriweather-sans", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/merriweathersans/v26/2-cO9IRs1JiJN1FRAMjTN5zd9vgsFF_5asQTb6hZ2JKZ_O4ljuEG7xFHnQ.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Merriweather Sans" - }, - { - "src": "http://fonts.gstatic.com/s/merriweathersans/v26/2-cO9IRs1JiJN1FRAMjTN5zd9vgsFF_5asQTb6hZ2JKZou4ljuEG7xFHnQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Merriweather Sans" - }, - { - "src": "http://fonts.gstatic.com/s/merriweathersans/v26/2-cO9IRs1JiJN1FRAMjTN5zd9vgsFF_5asQTb6hZ2JKZkO4ljuEG7xFHnQ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Merriweather Sans" - }, - { - "src": "http://fonts.gstatic.com/s/merriweathersans/v26/2-cO9IRs1JiJN1FRAMjTN5zd9vgsFF_5asQTb6hZ2JKZfOkljuEG7xFHnQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Merriweather Sans" - }, - { - "src": "http://fonts.gstatic.com/s/merriweathersans/v26/2-cO9IRs1JiJN1FRAMjTN5zd9vgsFF_5asQTb6hZ2JKZRekljuEG7xFHnQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Merriweather Sans" - }, - { - "src": "http://fonts.gstatic.com/s/merriweathersans/v26/2-cO9IRs1JiJN1FRAMjTN5zd9vgsFF_5asQTb6hZ2JKZIukljuEG7xFHnQ.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Merriweather Sans" - }, - { - "src": "http://fonts.gstatic.com/s/merriweathersans/v26/2-cM9IRs1JiJN1FRAMjTN5zd9vgsFHXwWDvLBsPDdpWMaq2TzesCzRRXnaur.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Merriweather Sans" - }, - { - "src": "http://fonts.gstatic.com/s/merriweathersans/v26/2-cM9IRs1JiJN1FRAMjTN5zd9vgsFHXwWDvLBsPDdpWMaq3NzesCzRRXnaur.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Merriweather Sans" - }, - { - "src": "http://fonts.gstatic.com/s/merriweathersans/v26/2-cM9IRs1JiJN1FRAMjTN5zd9vgsFHXwWDvLBsPDdpWMaq3_zesCzRRXnaur.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Merriweather Sans" - }, - { - "src": "http://fonts.gstatic.com/s/merriweathersans/v26/2-cM9IRs1JiJN1FRAMjTN5zd9vgsFHXwWDvLBsPDdpWMaq0TyusCzRRXnaur.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Merriweather Sans" - }, - { - "src": "http://fonts.gstatic.com/s/merriweathersans/v26/2-cM9IRs1JiJN1FRAMjTN5zd9vgsFHXwWDvLBsPDdpWMaq0qyusCzRRXnaur.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Merriweather Sans" - }, - { - "src": "http://fonts.gstatic.com/s/merriweathersans/v26/2-cM9IRs1JiJN1FRAMjTN5zd9vgsFHXwWDvLBsPDdpWMaq1NyusCzRRXnaur.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Merriweather Sans" - } - ] - }, - { - "name": "Metal", - "fontFamily": "Metal, system-ui", - "slug": "metal", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/metal/v28/lW-wwjUJIXTo7i3nnoQAUdN2.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Metal" - } - ] - }, - { - "name": "Metal Mania", - "fontFamily": "Metal Mania, system-ui", - "slug": "metal-mania", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/metalmania/v22/RWmMoKWb4e8kqMfBUdPFJeXCg6UKDXlq.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Metal Mania" - } - ] - }, - { - "name": "Metamorphous", - "fontFamily": "Metamorphous, system-ui", - "slug": "metamorphous", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/metamorphous/v18/Wnz8HA03aAXcC39ZEX5y1330PCCthTsmaQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Metamorphous" - } - ] - }, - { - "name": "Metrophobic", - "fontFamily": "Metrophobic, sans-serif", - "slug": "metrophobic", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/metrophobic/v23/sJoA3LZUhMSAPV_u0qwiAT-J737FPEEL.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Metrophobic" - } - ] - }, - { - "name": "Michroma", - "fontFamily": "Michroma, sans-serif", - "slug": "michroma", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/michroma/v16/PN_zRfy9qWD8fEagAMg6rzjb_-Da.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Michroma" - } - ] - }, - { - "name": "Milonga", - "fontFamily": "Milonga, system-ui", - "slug": "milonga", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/milonga/v20/SZc53FHnIaK9W5kffz3GkUrS8DI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Milonga" - } - ] - }, - { - "name": "Miltonian", - "fontFamily": "Miltonian, system-ui", - "slug": "miltonian", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/miltonian/v26/zOL-4pbPn6Ne9JqTg9mr6e5As-FeiQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Miltonian" - } - ] - }, - { - "name": "Miltonian Tattoo", - "fontFamily": "Miltonian Tattoo, system-ui", - "slug": "miltonian-tattoo", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/miltoniantattoo/v28/EvOUzBRL0o0kCxF-lcMCQxlpVsA_FwP8MDBku-s.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Miltonian Tattoo" - } - ] - }, - { - "name": "Mina", - "fontFamily": "Mina, sans-serif", - "slug": "mina", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mina/v11/-nFzOGc18vARrz9j7i3y65o.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Mina" - }, - { - "src": "http://fonts.gstatic.com/s/mina/v11/-nF8OGc18vARl4NMyiXZ95OkJwA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Mina" - } - ] - }, - { - "name": "Mingzat", - "fontFamily": "Mingzat, sans-serif", - "slug": "mingzat", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mingzat/v6/0QIgMX5C-o-oWWyvBttkm_mv670.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Mingzat" - } - ] - }, - { - "name": "Miniver", - "fontFamily": "Miniver, system-ui", - "slug": "miniver", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/miniver/v21/eLGcP-PxIg-5H0vC770Cy8r8fWA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Miniver" - } - ] - }, - { - "name": "Miriam Libre", - "fontFamily": "Miriam Libre, sans-serif", - "slug": "miriam-libre", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/miriamlibre/v14/DdTh798HsHwubBAqfkcBTL_vYJn_Teun9g.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Miriam Libre" - }, - { - "src": "http://fonts.gstatic.com/s/miriamlibre/v14/DdT-798HsHwubBAqfkcBTL_X3LbbRcC7_-Z7Hg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Miriam Libre" - } - ] - }, - { - "name": "Mirza", - "fontFamily": "Mirza, system-ui", - "slug": "mirza", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mirza/v15/co3ImWlikiN5EurdKMewsrvI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Mirza" - }, - { - "src": "http://fonts.gstatic.com/s/mirza/v15/co3FmWlikiN5EtIpAeO4mafBomDi.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Mirza" - }, - { - "src": "http://fonts.gstatic.com/s/mirza/v15/co3FmWlikiN5EtIFBuO4mafBomDi.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Mirza" - }, - { - "src": "http://fonts.gstatic.com/s/mirza/v15/co3FmWlikiN5EtJhB-O4mafBomDi.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Mirza" - } - ] - }, - { - "name": "Miss Fajardose", - "fontFamily": "Miss Fajardose, cursive", - "slug": "miss-fajardose", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/missfajardose/v22/E21-_dn5gvrawDdPFVl-N0Ajb8qvWPaJq4no.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Miss Fajardose" - } - ] - }, - { - "name": "Mitr", - "fontFamily": "Mitr, sans-serif", - "slug": "mitr", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mitr/v11/pxiEypw5ucZF8fMZFJDUc1NECPY.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Mitr" - }, - { - "src": "http://fonts.gstatic.com/s/mitr/v11/pxiEypw5ucZF8ZcaFJDUc1NECPY.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Mitr" - }, - { - "src": "http://fonts.gstatic.com/s/mitr/v11/pxiLypw5ucZFyTsyMJj_b1o.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Mitr" - }, - { - "src": "http://fonts.gstatic.com/s/mitr/v11/pxiEypw5ucZF8c8bFJDUc1NECPY.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Mitr" - }, - { - "src": "http://fonts.gstatic.com/s/mitr/v11/pxiEypw5ucZF8eMcFJDUc1NECPY.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Mitr" - }, - { - "src": "http://fonts.gstatic.com/s/mitr/v11/pxiEypw5ucZF8YcdFJDUc1NECPY.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Mitr" - } - ] - }, - { - "name": "Mochiy Pop One", - "fontFamily": "Mochiy Pop One, sans-serif", - "slug": "mochiy-pop-one", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mochiypopone/v7/QdVPSTA9Jh-gg-5XZP2UmU4O9kwwD3s6ZKAi.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Mochiy Pop One" - } - ] - }, - { - "name": "Mochiy Pop P One", - "fontFamily": "Mochiy Pop P One, sans-serif", - "slug": "mochiy-pop-p-one", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mochiypoppone/v7/Ktk2AKuPeY_td1-h9LayHYWCjAqyN4O3WYZB_sU.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Mochiy Pop P One" - } - ] - }, - { - "name": "Modak", - "fontFamily": "Modak, system-ui", - "slug": "modak", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/modak/v18/EJRYQgs1XtIEsnMH8BVZ76KU.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Modak" - } - ] - }, - { - "name": "Modern Antiqua", - "fontFamily": "Modern Antiqua, system-ui", - "slug": "modern-antiqua", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/modernantiqua/v22/NGStv5TIAUg6Iq_RLNo_2dp1sI1Ea2u0c3Gi.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Modern Antiqua" - } - ] - }, - { - "name": "Mogra", - "fontFamily": "Mogra, system-ui", - "slug": "mogra", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mogra/v19/f0X40eSs8c95TBo4DvLmxtnG.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Mogra" - } - ] - }, - { - "name": "Mohave", - "fontFamily": "Mohave, sans-serif", - "slug": "mohave", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mohave/v8/7cH0v4ksjJunKqMVAOPIMOeSmiojdif_HvCQopLSvBk.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Mohave" - }, - { - "src": "http://fonts.gstatic.com/s/mohave/v8/7cH0v4ksjJunKqMVAOPIMOeSmiojdnn_HvCQopLSvBk.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Mohave" - }, - { - "src": "http://fonts.gstatic.com/s/mohave/v8/7cH0v4ksjJunKqMVAOPIMOeSmiojdkv_HvCQopLSvBk.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Mohave" - }, - { - "src": "http://fonts.gstatic.com/s/mohave/v8/7cH0v4ksjJunKqMVAOPIMOeSmiojdqf4HvCQopLSvBk.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Mohave" - }, - { - "src": "http://fonts.gstatic.com/s/mohave/v8/7cH0v4ksjJunKqMVAOPIMOeSmiojdp74HvCQopLSvBk.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Mohave" - }, - { - "src": "http://fonts.gstatic.com/s/mohave/v8/7cH2v4ksjJunKqM_CdE36I75AIQkY7G8qLOaprDXrBlSVw.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Mohave" - }, - { - "src": "http://fonts.gstatic.com/s/mohave/v8/7cH2v4ksjJunKqM_CdE36I75AIQkY7G89rOaprDXrBlSVw.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Mohave" - }, - { - "src": "http://fonts.gstatic.com/s/mohave/v8/7cH2v4ksjJunKqM_CdE36I75AIQkY7G8xLOaprDXrBlSVw.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Mohave" - }, - { - "src": "http://fonts.gstatic.com/s/mohave/v8/7cH2v4ksjJunKqM_CdE36I75AIQkY7G8KLSaprDXrBlSVw.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Mohave" - }, - { - "src": "http://fonts.gstatic.com/s/mohave/v8/7cH2v4ksjJunKqM_CdE36I75AIQkY7G8EbSaprDXrBlSVw.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Mohave" - } - ] - }, - { - "name": "Molengo", - "fontFamily": "Molengo, sans-serif", - "slug": "molengo", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/molengo/v16/I_uuMpWeuBzZNBtQbbRQkiCvs5Y.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Molengo" - } - ] - }, - { - "name": "Molle", - "fontFamily": "Molle, cursive", - "slug": "molle", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/molle/v21/E21n_dL5hOXFhWEsXzgmVydREus.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Molle" - } - ] - }, - { - "name": "Monda", - "fontFamily": "Monda, sans-serif", - "slug": "monda", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/monda/v16/TK3tWkYFABsmjvpmNBsLvPdG.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Monda" - }, - { - "src": "http://fonts.gstatic.com/s/monda/v16/TK3gWkYFABsmjsLaGz8Dl-tPKo2t.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Monda" - } - ] - }, - { - "name": "Monofett", - "fontFamily": "Monofett, monospace", - "slug": "monofett", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/monofett/v23/mFTyWbofw6zc9NtnW43SuRwr0VJ7.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Monofett" - } - ] - }, - { - "name": "Monomaniac One", - "fontFamily": "Monomaniac One, sans-serif", - "slug": "monomaniac-one", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/monomaniacone/v9/4iC06K17YctZjx50EU-QlwPmcqRnqYkB5kwI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Monomaniac One" - } - ] - }, - { - "name": "Monoton", - "fontFamily": "Monoton, system-ui", - "slug": "monoton", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/monoton/v15/5h1aiZUrOngCibe4fkbBQ2S7FU8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Monoton" - } - ] - }, - { - "name": "Monsieur La Doulaise", - "fontFamily": "Monsieur La Doulaise, cursive", - "slug": "monsieur-la-doulaise", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/monsieurladoulaise/v15/_Xmz-GY4rjmCbQfc-aPRaa4pqV340p7EZl5ewkEU4HTy.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Monsieur La Doulaise" - } - ] - }, - { - "name": "Montaga", - "fontFamily": "Montaga, serif", - "slug": "montaga", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/montaga/v13/H4cnBX2Ml8rCkEO_0gYQ7LO5mqc.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Montaga" - } - ] - }, - { - "name": "Montagu Slab", - "fontFamily": "Montagu Slab, serif", - "slug": "montagu-slab", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/montaguslab/v6/6qLhKZIQtB_zv0xUaXRDWkY_HXsphdLRZF40vm_jzR2jhk_n3T6ACkDbE3P9Fs7bOSO7.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Montagu Slab" - }, - { - "src": "http://fonts.gstatic.com/s/montaguslab/v6/6qLhKZIQtB_zv0xUaXRDWkY_HXsphdLRZF40vm_jzR2jhk_n3T6ACkBbEnP9Fs7bOSO7.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Montagu Slab" - }, - { - "src": "http://fonts.gstatic.com/s/montaguslab/v6/6qLhKZIQtB_zv0xUaXRDWkY_HXsphdLRZF40vm_jzR2jhk_n3T6ACkCFEnP9Fs7bOSO7.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Montagu Slab" - }, - { - "src": "http://fonts.gstatic.com/s/montaguslab/v6/6qLhKZIQtB_zv0xUaXRDWkY_HXsphdLRZF40vm_jzR2jhk_n3T6ACkDbEnP9Fs7bOSO7.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Montagu Slab" - }, - { - "src": "http://fonts.gstatic.com/s/montaguslab/v6/6qLhKZIQtB_zv0xUaXRDWkY_HXsphdLRZF40vm_jzR2jhk_n3T6ACkDpEnP9Fs7bOSO7.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Montagu Slab" - }, - { - "src": "http://fonts.gstatic.com/s/montaguslab/v6/6qLhKZIQtB_zv0xUaXRDWkY_HXsphdLRZF40vm_jzR2jhk_n3T6ACkAFFXP9Fs7bOSO7.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Montagu Slab" - }, - { - "src": "http://fonts.gstatic.com/s/montaguslab/v6/6qLhKZIQtB_zv0xUaXRDWkY_HXsphdLRZF40vm_jzR2jhk_n3T6ACkA8FXP9Fs7bOSO7.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Montagu Slab" - } - ] - }, - { - "name": "MonteCarlo", - "fontFamily": "MonteCarlo, cursive", - "slug": "montecarlo", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/montecarlo/v8/buEzpo6-f9X01GadLA0G0CoV_NxLeiw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "MonteCarlo" - } - ] - }, - { - "name": "Montez", - "fontFamily": "Montez, cursive", - "slug": "montez", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/montez/v18/845ZNMk5GoGIX8lm1LDeSd-R_g.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Montez" - } - ] - }, - { - "name": "Montserrat", - "fontFamily": "Montserrat, sans-serif", - "slug": "montserrat", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Uw-Y3tcoqK5.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Montserrat" - }, - { - "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCvr6Ew-Y3tcoqK5.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Montserrat" - }, - { - "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCs16Ew-Y3tcoqK5.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Montserrat" - }, - { - "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Ew-Y3tcoqK5.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Montserrat" - }, - { - "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtZ6Ew-Y3tcoqK5.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Montserrat" - }, - { - "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCu170w-Y3tcoqK5.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Montserrat" - }, - { - "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCuM70w-Y3tcoqK5.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Montserrat" - }, - { - "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCvr70w-Y3tcoqK5.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Montserrat" - }, - { - "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCvC70w-Y3tcoqK5.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Montserrat" - }, - { - "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq6R8aX9-p7K5ILg.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Montserrat" - }, - { - "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jqyR9aX9-p7K5ILg.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Montserrat" - }, - { - "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq_p9aX9-p7K5ILg.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Montserrat" - }, - { - "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq6R9aX9-p7K5ILg.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Montserrat" - }, - { - "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq5Z9aX9-p7K5ILg.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Montserrat" - }, - { - "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq3p6aX9-p7K5ILg.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Montserrat" - }, - { - "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq0N6aX9-p7K5ILg.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Montserrat" - }, - { - "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jqyR6aX9-p7K5ILg.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Montserrat" - }, - { - "src": "http://fonts.gstatic.com/s/montserrat/v25/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jqw16aX9-p7K5ILg.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Montserrat" - } - ] - }, - { - "name": "Montserrat Alternates", - "fontFamily": "Montserrat Alternates, sans-serif", - "slug": "montserrat-alternates", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFThWacfw6zH4dthXcyms1lPpC8I_b0juU0xiKfVKphL03l4.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Montserrat Alternates" - }, - { - "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFTjWacfw6zH4dthXcyms1lPpC8I_b0juU057p-xIJxp1ml4imo.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Montserrat Alternates" - }, - { - "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFTiWacfw6zH4dthXcyms1lPpC8I_b0juU0xJIb1ALZH2mBhkw.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Montserrat Alternates" - }, - { - "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFTkWacfw6zH4dthXcyms1lPpC8I_b0juU057p8dAbxD-GVxk3Nd.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Montserrat Alternates" - }, - { - "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFTiWacfw6zH4dthXcyms1lPpC8I_b0juU0xQIX1ALZH2mBhkw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Montserrat Alternates" - }, - { - "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFTkWacfw6zH4dthXcyms1lPpC8I_b0juU057p95ArxD-GVxk3Nd.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Montserrat Alternates" - }, - { - "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFTvWacfw6zH4dthXcyms1lPpC8I_b0juU0J7K3RCJ1b0w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Montserrat Alternates" - }, - { - "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFThWacfw6zH4dthXcyms1lPpC8I_b0juU057qfVKphL03l4.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Montserrat Alternates" - }, - { - "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFTiWacfw6zH4dthXcyms1lPpC8I_b0juU0xGIT1ALZH2mBhkw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Montserrat Alternates" - }, - { - "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFTkWacfw6zH4dthXcyms1lPpC8I_b0juU057p8hA7xD-GVxk3Nd.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Montserrat Alternates" - }, - { - "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFTiWacfw6zH4dthXcyms1lPpC8I_b0juU0xNIP1ALZH2mBhkw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Montserrat Alternates" - }, - { - "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFTkWacfw6zH4dthXcyms1lPpC8I_b0juU057p8NBLxD-GVxk3Nd.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Montserrat Alternates" - }, - { - "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFTiWacfw6zH4dthXcyms1lPpC8I_b0juU0xUIL1ALZH2mBhkw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Montserrat Alternates" - }, - { - "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFTkWacfw6zH4dthXcyms1lPpC8I_b0juU057p9pBbxD-GVxk3Nd.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Montserrat Alternates" - }, - { - "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFTiWacfw6zH4dthXcyms1lPpC8I_b0juU0xTIH1ALZH2mBhkw.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Montserrat Alternates" - }, - { - "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFTkWacfw6zH4dthXcyms1lPpC8I_b0juU057p91BrxD-GVxk3Nd.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Montserrat Alternates" - }, - { - "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFTiWacfw6zH4dthXcyms1lPpC8I_b0juU0xaID1ALZH2mBhkw.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Montserrat Alternates" - }, - { - "src": "http://fonts.gstatic.com/s/montserratalternates/v17/mFTkWacfw6zH4dthXcyms1lPpC8I_b0juU057p9RB7xD-GVxk3Nd.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Montserrat Alternates" - } - ] - }, - { - "name": "Montserrat Subrayada", - "fontFamily": "Montserrat Subrayada, sans-serif", - "slug": "montserrat-subrayada", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/montserratsubrayada/v17/U9MD6c-o9H7PgjlTHThBnNHGVUORwteQQE8LYuceqGT-.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Montserrat Subrayada" - }, - { - "src": "http://fonts.gstatic.com/s/montserratsubrayada/v17/U9MM6c-o9H7PgjlTHThBnNHGVUORwteQQHe3TcMWg3j36Ebz.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Montserrat Subrayada" - } - ] - }, - { - "name": "Moo Lah Lah", - "fontFamily": "Moo Lah Lah, system-ui", - "slug": "moo-lah-lah", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/moolahlah/v3/dg4h_p_opKZOA0w1AYcm55wtYQYugjW4.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Moo Lah Lah" - } - ] - }, - { - "name": "Moon Dance", - "fontFamily": "Moon Dance, cursive", - "slug": "moon-dance", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/moondance/v3/WBLgrEbUbFlYW9ekmGawe2XiKMiokE4.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Moon Dance" - } - ] - }, - { - "name": "Moul", - "fontFamily": "Moul, system-ui", - "slug": "moul", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/moul/v25/nuF2D__FSo_3E-RYiJCy-00.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Moul" - } - ] - }, - { - "name": "Moulpali", - "fontFamily": "Moulpali, system-ui", - "slug": "moulpali", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/moulpali/v28/H4ckBXKMl9HagUWymyY6wr-wg763.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Moulpali" - } - ] - }, - { - "name": "Mountains of Christmas", - "fontFamily": "Mountains of Christmas, system-ui", - "slug": "mountains-of-christmas", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mountainsofchristmas/v20/3y9w6a4zcCnn5X0FDyrKi2ZRUBIy8uxoUo7ePNamMPNpJpc.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Mountains of Christmas" - }, - { - "src": "http://fonts.gstatic.com/s/mountainsofchristmas/v20/3y9z6a4zcCnn5X0FDyrKi2ZRUBIy8uxoUo7eBGqJFPtCOp6IaEA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Mountains of Christmas" - } - ] - }, - { - "name": "Mouse Memoirs", - "fontFamily": "Mouse Memoirs, sans-serif", - "slug": "mouse-memoirs", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mousememoirs/v14/t5tmIRoSNJ-PH0WNNgDYxdSb7TnFrpOHYh4.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Mouse Memoirs" - } - ] - }, - { - "name": "Mr Bedfort", - "fontFamily": "Mr Bedfort, cursive", - "slug": "mr-bedfort", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mrbedfort/v22/MQpR-WCtNZSWAdTMwBicliq0XZe_Iy8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Mr Bedfort" - } - ] - }, - { - "name": "Mr Dafoe", - "fontFamily": "Mr Dafoe, cursive", - "slug": "mr-dafoe", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mrdafoe/v14/lJwE-pIzkS5NXuMMrGiqg7MCxz_C.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Mr Dafoe" - } - ] - }, - { - "name": "Mr De Haviland", - "fontFamily": "Mr De Haviland, cursive", - "slug": "mr-de-haviland", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mrdehaviland/v14/OpNVnooIhJj96FdB73296ksbOj3C4ULVNTlB.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Mr De Haviland" - } - ] - }, - { - "name": "Mrs Saint Delafield", - "fontFamily": "Mrs Saint Delafield, cursive", - "slug": "mrs-saint-delafield", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mrssaintdelafield/v13/v6-IGZDIOVXH9xtmTZfRagunqBw5WC62cK4tLsubB2w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Mrs Saint Delafield" - } - ] - }, - { - "name": "Mrs Sheppards", - "fontFamily": "Mrs Sheppards, cursive", - "slug": "mrs-sheppards", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mrssheppards/v21/PN_2Rfm9snC0XUGoEZhb91ig3vjxynMix4Y.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Mrs Sheppards" - } - ] - }, - { - "name": "Ms Madi", - "fontFamily": "Ms Madi, cursive", - "slug": "ms-madi", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/msmadi/v2/HTxsL2UxNnOji5E1N-DPiI7QAYo.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Ms Madi" - } - ] - }, - { - "name": "Mukta", - "fontFamily": "Mukta, sans-serif", - "slug": "mukta", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mukta/v14/iJWHBXyXfDDVXbEOjFma-2HW7ZB_.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Mukta" - }, - { - "src": "http://fonts.gstatic.com/s/mukta/v14/iJWHBXyXfDDVXbFqj1ma-2HW7ZB_.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Mukta" - }, - { - "src": "http://fonts.gstatic.com/s/mukta/v14/iJWKBXyXfDDVXYnGp32S0H3f.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Mukta" - }, - { - "src": "http://fonts.gstatic.com/s/mukta/v14/iJWHBXyXfDDVXbEyjlma-2HW7ZB_.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Mukta" - }, - { - "src": "http://fonts.gstatic.com/s/mukta/v14/iJWHBXyXfDDVXbEeiVma-2HW7ZB_.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Mukta" - }, - { - "src": "http://fonts.gstatic.com/s/mukta/v14/iJWHBXyXfDDVXbF6iFma-2HW7ZB_.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Mukta" - }, - { - "src": "http://fonts.gstatic.com/s/mukta/v14/iJWHBXyXfDDVXbFmi1ma-2HW7ZB_.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Mukta" - } - ] - }, - { - "name": "Mukta Mahee", - "fontFamily": "Mukta Mahee, sans-serif", - "slug": "mukta-mahee", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/muktamahee/v16/XRXN3IOIi0hcP8iVU67hA9MFcBoHJndqZCsW.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Mukta Mahee" - }, - { - "src": "http://fonts.gstatic.com/s/muktamahee/v16/XRXN3IOIi0hcP8iVU67hA9NhcxoHJndqZCsW.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Mukta Mahee" - }, - { - "src": "http://fonts.gstatic.com/s/muktamahee/v16/XRXQ3IOIi0hcP8iVU67hA-vNWz4PDWtj.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Mukta Mahee" - }, - { - "src": "http://fonts.gstatic.com/s/muktamahee/v16/XRXN3IOIi0hcP8iVU67hA9M5choHJndqZCsW.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Mukta Mahee" - }, - { - "src": "http://fonts.gstatic.com/s/muktamahee/v16/XRXN3IOIi0hcP8iVU67hA9MVdRoHJndqZCsW.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Mukta Mahee" - }, - { - "src": "http://fonts.gstatic.com/s/muktamahee/v16/XRXN3IOIi0hcP8iVU67hA9NxdBoHJndqZCsW.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Mukta Mahee" - }, - { - "src": "http://fonts.gstatic.com/s/muktamahee/v16/XRXN3IOIi0hcP8iVU67hA9NtdxoHJndqZCsW.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Mukta Mahee" - } - ] - }, - { - "name": "Mukta Malar", - "fontFamily": "Mukta Malar, sans-serif", - "slug": "mukta-malar", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/muktamalar/v12/MCoKzAXyz8LOE2FpJMxZqIMwBtAB62ruoAZW.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Mukta Malar" - }, - { - "src": "http://fonts.gstatic.com/s/muktamalar/v12/MCoKzAXyz8LOE2FpJMxZqINUBdAB62ruoAZW.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Mukta Malar" - }, - { - "src": "http://fonts.gstatic.com/s/muktamalar/v12/MCoXzAXyz8LOE2FpJMxZqLv4LfQJwHbn.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Mukta Malar" - }, - { - "src": "http://fonts.gstatic.com/s/muktamalar/v12/MCoKzAXyz8LOE2FpJMxZqIMMBNAB62ruoAZW.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Mukta Malar" - }, - { - "src": "http://fonts.gstatic.com/s/muktamalar/v12/MCoKzAXyz8LOE2FpJMxZqIMgA9AB62ruoAZW.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Mukta Malar" - }, - { - "src": "http://fonts.gstatic.com/s/muktamalar/v12/MCoKzAXyz8LOE2FpJMxZqINEAtAB62ruoAZW.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Mukta Malar" - }, - { - "src": "http://fonts.gstatic.com/s/muktamalar/v12/MCoKzAXyz8LOE2FpJMxZqINYAdAB62ruoAZW.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Mukta Malar" - } - ] - }, - { - "name": "Mukta Vaani", - "fontFamily": "Mukta Vaani, sans-serif", - "slug": "mukta-vaani", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/muktavaani/v13/3JnkSD_-ynaxmxnEfVHPIGXNV8BD-u97MW1a.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Mukta Vaani" - }, - { - "src": "http://fonts.gstatic.com/s/muktavaani/v13/3JnkSD_-ynaxmxnEfVHPIGWpVMBD-u97MW1a.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Mukta Vaani" - }, - { - "src": "http://fonts.gstatic.com/s/muktavaani/v13/3Jn5SD_-ynaxmxnEfVHPIF0FfORL0fNy.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Mukta Vaani" - }, - { - "src": "http://fonts.gstatic.com/s/muktavaani/v13/3JnkSD_-ynaxmxnEfVHPIGXxVcBD-u97MW1a.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Mukta Vaani" - }, - { - "src": "http://fonts.gstatic.com/s/muktavaani/v13/3JnkSD_-ynaxmxnEfVHPIGXdUsBD-u97MW1a.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Mukta Vaani" - }, - { - "src": "http://fonts.gstatic.com/s/muktavaani/v13/3JnkSD_-ynaxmxnEfVHPIGW5U8BD-u97MW1a.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Mukta Vaani" - }, - { - "src": "http://fonts.gstatic.com/s/muktavaani/v13/3JnkSD_-ynaxmxnEfVHPIGWlUMBD-u97MW1a.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Mukta Vaani" - } - ] - }, - { - "name": "Mulish", - "fontFamily": "Mulish, sans-serif", - "slug": "mulish", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mulish/v12/1Ptyg83HX_SGhgqO0yLcmjzUAuWexRNRwaClGrw-PTY.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Mulish" - }, - { - "src": "http://fonts.gstatic.com/s/mulish/v12/1Ptyg83HX_SGhgqO0yLcmjzUAuWexc1RwaClGrw-PTY.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Mulish" - }, - { - "src": "http://fonts.gstatic.com/s/mulish/v12/1Ptyg83HX_SGhgqO0yLcmjzUAuWexZNRwaClGrw-PTY.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Mulish" - }, - { - "src": "http://fonts.gstatic.com/s/mulish/v12/1Ptyg83HX_SGhgqO0yLcmjzUAuWexaFRwaClGrw-PTY.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Mulish" - }, - { - "src": "http://fonts.gstatic.com/s/mulish/v12/1Ptyg83HX_SGhgqO0yLcmjzUAuWexU1WwaClGrw-PTY.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Mulish" - }, - { - "src": "http://fonts.gstatic.com/s/mulish/v12/1Ptyg83HX_SGhgqO0yLcmjzUAuWexXRWwaClGrw-PTY.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Mulish" - }, - { - "src": "http://fonts.gstatic.com/s/mulish/v12/1Ptyg83HX_SGhgqO0yLcmjzUAuWexRNWwaClGrw-PTY.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Mulish" - }, - { - "src": "http://fonts.gstatic.com/s/mulish/v12/1Ptyg83HX_SGhgqO0yLcmjzUAuWexTpWwaClGrw-PTY.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Mulish" - }, - { - "src": "http://fonts.gstatic.com/s/mulish/v12/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSqeOvHp47LTZFwA.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Mulish" - }, - { - "src": "http://fonts.gstatic.com/s/mulish/v12/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSd-OvHp47LTZFwA.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Mulish" - }, - { - "src": "http://fonts.gstatic.com/s/mulish/v12/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSKeOvHp47LTZFwA.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Mulish" - }, - { - "src": "http://fonts.gstatic.com/s/mulish/v12/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSG-OvHp47LTZFwA.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Mulish" - }, - { - "src": "http://fonts.gstatic.com/s/mulish/v12/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsS9-SvHp47LTZFwA.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Mulish" - }, - { - "src": "http://fonts.gstatic.com/s/mulish/v12/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSzuSvHp47LTZFwA.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Mulish" - }, - { - "src": "http://fonts.gstatic.com/s/mulish/v12/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSqeSvHp47LTZFwA.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Mulish" - }, - { - "src": "http://fonts.gstatic.com/s/mulish/v12/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSgOSvHp47LTZFwA.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Mulish" - } - ] - }, - { - "name": "Murecho", - "fontFamily": "Murecho, sans-serif", - "slug": "murecho", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/murecho/v10/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMpr5HWZLCpUOaM6.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Murecho" - }, - { - "src": "http://fonts.gstatic.com/s/murecho/v10/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMrr5XWZLCpUOaM6.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Murecho" - }, - { - "src": "http://fonts.gstatic.com/s/murecho/v10/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMo15XWZLCpUOaM6.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Murecho" - }, - { - "src": "http://fonts.gstatic.com/s/murecho/v10/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMpr5XWZLCpUOaM6.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Murecho" - }, - { - "src": "http://fonts.gstatic.com/s/murecho/v10/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMpZ5XWZLCpUOaM6.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Murecho" - }, - { - "src": "http://fonts.gstatic.com/s/murecho/v10/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMq14nWZLCpUOaM6.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Murecho" - }, - { - "src": "http://fonts.gstatic.com/s/murecho/v10/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMqM4nWZLCpUOaM6.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Murecho" - }, - { - "src": "http://fonts.gstatic.com/s/murecho/v10/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMrr4nWZLCpUOaM6.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Murecho" - }, - { - "src": "http://fonts.gstatic.com/s/murecho/v10/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMrC4nWZLCpUOaM6.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Murecho" - } - ] - }, - { - "name": "MuseoModerno", - "fontFamily": "MuseoModerno, system-ui", - "slug": "museomoderno", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMlZFuewajeKlCdo.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "MuseoModerno" - }, - { - "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMtZEuewajeKlCdo.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "MuseoModerno" - }, - { - "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMghEuewajeKlCdo.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "MuseoModerno" - }, - { - "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMlZEuewajeKlCdo.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "MuseoModerno" - }, - { - "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMmREuewajeKlCdo.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "MuseoModerno" - }, - { - "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMohDuewajeKlCdo.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "MuseoModerno" - }, - { - "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMrFDuewajeKlCdo.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "MuseoModerno" - }, - { - "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMtZDuewajeKlCdo.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "MuseoModerno" - }, - { - "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMv9DuewajeKlCdo.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "MuseoModerno" - }, - { - "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54HUa4QicCgGdrS3g.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "MuseoModerno" - }, - { - "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54H0a8QicCgGdrS3g.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "MuseoModerno" - }, - { - "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54HD68QicCgGdrS3g.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "MuseoModerno" - }, - { - "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54HUa8QicCgGdrS3g.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "MuseoModerno" - }, - { - "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54HY68QicCgGdrS3g.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "MuseoModerno" - }, - { - "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54Hj6gQicCgGdrS3g.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "MuseoModerno" - }, - { - "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54HtqgQicCgGdrS3g.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "MuseoModerno" - }, - { - "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54H0agQicCgGdrS3g.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "MuseoModerno" - }, - { - "src": "http://fonts.gstatic.com/s/museomoderno/v22/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54H-KgQicCgGdrS3g.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "MuseoModerno" - } - ] - }, - { - "name": "My Soul", - "fontFamily": "My Soul, cursive", - "slug": "my-soul", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mysoul/v2/3XFqErcuy945_u6KF_Ulk2nnXf0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "My Soul" - } - ] - }, - { - "name": "Mynerve", - "fontFamily": "Mynerve, cursive", - "slug": "mynerve", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mynerve/v2/P5sCzZKPdNjb4jt7xCRuiZ-uydg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Mynerve" - } - ] - }, - { - "name": "Mystery Quest", - "fontFamily": "Mystery Quest, system-ui", - "slug": "mystery-quest", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/mysteryquest/v20/-nF6OG414u0E6k0wynSGlujRHwElD_9Qz9E.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Mystery Quest" - } - ] - }, - { - "name": "NTR", - "fontFamily": "NTR, sans-serif", - "slug": "ntr", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ntr/v15/RLpzK5Xy0ZjiGGhs5TA4bg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "NTR" - } - ] - }, - { - "name": "Nabla", - "fontFamily": "Nabla, system-ui", - "slug": "nabla", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/nabla/v10/j8_D6-LI0Lvpe7Makz5UhJt9C3uqg_X_75gyGS4jAxsNIjrRNRBUFFR_198.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Nabla" - } - ] - }, - { - "name": "Nanum Brush Script", - "fontFamily": "Nanum Brush Script, cursive", - "slug": "nanum-brush-script", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/nanumbrushscript/v22/wXK2E2wfpokopxzthSqPbcR5_gVaxazyjqBr1lO97Q.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Nanum Brush Script" - } - ] - }, - { - "name": "Nanum Gothic", - "fontFamily": "Nanum Gothic, sans-serif", - "slug": "nanum-gothic", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/nanumgothic/v21/PN_3Rfi-oW3hYwmKDpxS7F_z_tLfxno73g.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Nanum Gothic" - }, - { - "src": "http://fonts.gstatic.com/s/nanumgothic/v21/PN_oRfi-oW3hYwmKDpxS7F_LQv37zlEn14YEUQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Nanum Gothic" - }, - { - "src": "http://fonts.gstatic.com/s/nanumgothic/v21/PN_oRfi-oW3hYwmKDpxS7F_LXv77zlEn14YEUQ.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Nanum Gothic" - } - ] - }, - { - "name": "Nanum Gothic Coding", - "fontFamily": "Nanum Gothic Coding, monospace", - "slug": "nanum-gothic-coding", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/nanumgothiccoding/v19/8QIVdjzHisX_8vv59_xMxtPFW4IXROwsy6QxVs1X7tc.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Nanum Gothic Coding" - }, - { - "src": "http://fonts.gstatic.com/s/nanumgothiccoding/v19/8QIYdjzHisX_8vv59_xMxtPFW4IXROws8xgecsV88t5V9r4.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Nanum Gothic Coding" - } - ] - }, - { - "name": "Nanum Myeongjo", - "fontFamily": "Nanum Myeongjo, serif", - "slug": "nanum-myeongjo", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/nanummyeongjo/v20/9Btx3DZF0dXLMZlywRbVRNhxy1LreHQ8juyl.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Nanum Myeongjo" - }, - { - "src": "http://fonts.gstatic.com/s/nanummyeongjo/v20/9Bty3DZF0dXLMZlywRbVRNhxy2pXV1A0pfCs5Kos.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Nanum Myeongjo" - }, - { - "src": "http://fonts.gstatic.com/s/nanummyeongjo/v20/9Bty3DZF0dXLMZlywRbVRNhxy2pLVFA0pfCs5Kos.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Nanum Myeongjo" - } - ] - }, - { - "name": "Nanum Pen Script", - "fontFamily": "Nanum Pen Script, cursive", - "slug": "nanum-pen-script", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/nanumpenscript/v19/daaDSSYiLGqEal3MvdA_FOL_3FkN2z7-aMFCcTU.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Nanum Pen Script" - } - ] - }, - { - "name": "Neonderthaw", - "fontFamily": "Neonderthaw, cursive", - "slug": "neonderthaw", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/neonderthaw/v3/Iure6Yx5-oWVZI0r-17AeZZJprVA4XQ0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Neonderthaw" - } - ] - }, - { - "name": "Nerko One", - "fontFamily": "Nerko One, cursive", - "slug": "nerko-one", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/nerkoone/v16/m8JQjfZSc7OXlB3ZMOjzcJ5BZmqa3A.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Nerko One" - } - ] - }, - { - "name": "Neucha", - "fontFamily": "Neucha, cursive", - "slug": "neucha", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/neucha/v17/q5uGsou0JOdh94bvugNsCxVEgA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Neucha" - } - ] - }, - { - "name": "Neuton", - "fontFamily": "Neuton, serif", - "slug": "neuton", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/neuton/v19/UMBQrPtMoH62xUZKAKkfegD5Drog6Q.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Neuton" - }, - { - "src": "http://fonts.gstatic.com/s/neuton/v19/UMBQrPtMoH62xUZKZKofegD5Drog6Q.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Neuton" - }, - { - "src": "http://fonts.gstatic.com/s/neuton/v19/UMBTrPtMoH62xUZyyII7civlBw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Neuton" - }, - { - "src": "http://fonts.gstatic.com/s/neuton/v19/UMBRrPtMoH62xUZCyog_UC71B6M5.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Neuton" - }, - { - "src": "http://fonts.gstatic.com/s/neuton/v19/UMBQrPtMoH62xUZKdK0fegD5Drog6Q.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Neuton" - }, - { - "src": "http://fonts.gstatic.com/s/neuton/v19/UMBQrPtMoH62xUZKaK4fegD5Drog6Q.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Neuton" - } - ] - }, - { - "name": "New Rocker", - "fontFamily": "New Rocker, system-ui", - "slug": "new-rocker", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/newrocker/v16/MwQzbhjp3-HImzcCU_cJkGMViblPtXs.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "New Rocker" - } - ] - }, - { - "name": "New Tegomin", - "fontFamily": "New Tegomin, serif", - "slug": "new-tegomin", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/newtegomin/v10/SLXMc1fV7Gd9USdBAfPlqfN0Q3ptkDMN.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "New Tegomin" - } - ] - }, - { - "name": "News Cycle", - "fontFamily": "News Cycle, sans-serif", - "slug": "news-cycle", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/newscycle/v23/CSR64z1Qlv-GDxkbKVQ_TOcATNt_pOU.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "News Cycle" - }, - { - "src": "http://fonts.gstatic.com/s/newscycle/v23/CSR54z1Qlv-GDxkbKVQ_dFsvaNNUuOwkC2s.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "News Cycle" - } - ] - }, - { - "name": "Newsreader", - "fontFamily": "Newsreader, serif", - "slug": "newsreader", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/newsreader/v19/cY9qfjOCX1hbuyalUrK49dLac06G1ZGsZBtoBCzBDXXD9JVF438w-I_ADOxEPjCggA.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Newsreader" - }, - { - "src": "http://fonts.gstatic.com/s/newsreader/v19/cY9qfjOCX1hbuyalUrK49dLac06G1ZGsZBtoBCzBDXXD9JVF438wJo_ADOxEPjCggA.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Newsreader" - }, - { - "src": "http://fonts.gstatic.com/s/newsreader/v19/cY9qfjOCX1hbuyalUrK49dLac06G1ZGsZBtoBCzBDXXD9JVF438weI_ADOxEPjCggA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Newsreader" - }, - { - "src": "http://fonts.gstatic.com/s/newsreader/v19/cY9qfjOCX1hbuyalUrK49dLac06G1ZGsZBtoBCzBDXXD9JVF438wSo_ADOxEPjCggA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Newsreader" - }, - { - "src": "http://fonts.gstatic.com/s/newsreader/v19/cY9qfjOCX1hbuyalUrK49dLac06G1ZGsZBtoBCzBDXXD9JVF438wpojADOxEPjCggA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Newsreader" - }, - { - "src": "http://fonts.gstatic.com/s/newsreader/v19/cY9qfjOCX1hbuyalUrK49dLac06G1ZGsZBtoBCzBDXXD9JVF438wn4jADOxEPjCggA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Newsreader" - }, - { - "src": "http://fonts.gstatic.com/s/newsreader/v19/cY9qfjOCX1hbuyalUrK49dLac06G1ZGsZBtoBCzBDXXD9JVF438w-IjADOxEPjCggA.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Newsreader" - }, - { - "src": "http://fonts.gstatic.com/s/newsreader/v19/cY9kfjOCX1hbuyalUrK439vogqC9yFZCYg7oRZaLP4obnf7fTXglsMyoT-ZAHDWwgECi.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Newsreader" - }, - { - "src": "http://fonts.gstatic.com/s/newsreader/v19/cY9kfjOCX1hbuyalUrK439vogqC9yFZCYg7oRZaLP4obnf7fTXglsMx2T-ZAHDWwgECi.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Newsreader" - }, - { - "src": "http://fonts.gstatic.com/s/newsreader/v19/cY9kfjOCX1hbuyalUrK439vogqC9yFZCYg7oRZaLP4obnf7fTXglsMwoT-ZAHDWwgECi.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Newsreader" - }, - { - "src": "http://fonts.gstatic.com/s/newsreader/v19/cY9kfjOCX1hbuyalUrK439vogqC9yFZCYg7oRZaLP4obnf7fTXglsMwaT-ZAHDWwgECi.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Newsreader" - }, - { - "src": "http://fonts.gstatic.com/s/newsreader/v19/cY9kfjOCX1hbuyalUrK439vogqC9yFZCYg7oRZaLP4obnf7fTXglsMz2SOZAHDWwgECi.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Newsreader" - }, - { - "src": "http://fonts.gstatic.com/s/newsreader/v19/cY9kfjOCX1hbuyalUrK439vogqC9yFZCYg7oRZaLP4obnf7fTXglsMzPSOZAHDWwgECi.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Newsreader" - }, - { - "src": "http://fonts.gstatic.com/s/newsreader/v19/cY9kfjOCX1hbuyalUrK439vogqC9yFZCYg7oRZaLP4obnf7fTXglsMyoSOZAHDWwgECi.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Newsreader" - } - ] - }, - { - "name": "Niconne", - "fontFamily": "Niconne, cursive", - "slug": "niconne", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/niconne/v15/w8gaH2QvRug1_rTfrQut2F4OuOo.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Niconne" - } - ] - }, - { - "name": "Niramit", - "fontFamily": "Niramit, sans-serif", - "slug": "niramit", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/niramit/v10/I_urMpWdvgLdNxVLVXx7tiiEr5_BdZ8.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Niramit" - }, - { - "src": "http://fonts.gstatic.com/s/niramit/v10/I_upMpWdvgLdNxVLXbZiXimOq73EZZ_f6w.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Niramit" - }, - { - "src": "http://fonts.gstatic.com/s/niramit/v10/I_urMpWdvgLdNxVLVRh4tiiEr5_BdZ8.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Niramit" - }, - { - "src": "http://fonts.gstatic.com/s/niramit/v10/I_upMpWdvgLdNxVLXbZiOiqOq73EZZ_f6w.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Niramit" - }, - { - "src": "http://fonts.gstatic.com/s/niramit/v10/I_uuMpWdvgLdNxVLbbRQkiCvs5Y.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Niramit" - }, - { - "src": "http://fonts.gstatic.com/s/niramit/v10/I_usMpWdvgLdNxVLXbZalgKqo5bYbA.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Niramit" - }, - { - "src": "http://fonts.gstatic.com/s/niramit/v10/I_urMpWdvgLdNxVLVUB5tiiEr5_BdZ8.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Niramit" - }, - { - "src": "http://fonts.gstatic.com/s/niramit/v10/I_upMpWdvgLdNxVLXbZiYiuOq73EZZ_f6w.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Niramit" - }, - { - "src": "http://fonts.gstatic.com/s/niramit/v10/I_urMpWdvgLdNxVLVWx-tiiEr5_BdZ8.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Niramit" - }, - { - "src": "http://fonts.gstatic.com/s/niramit/v10/I_upMpWdvgLdNxVLXbZiTiyOq73EZZ_f6w.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Niramit" - }, - { - "src": "http://fonts.gstatic.com/s/niramit/v10/I_urMpWdvgLdNxVLVQh_tiiEr5_BdZ8.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Niramit" - }, - { - "src": "http://fonts.gstatic.com/s/niramit/v10/I_upMpWdvgLdNxVLXbZiKi2Oq73EZZ_f6w.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Niramit" - } - ] - }, - { - "name": "Nixie One", - "fontFamily": "Nixie One, system-ui", - "slug": "nixie-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/nixieone/v16/lW-8wjkKLXjg5y2o2uUoUOFzpS-yLw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Nixie One" - } - ] - }, - { - "name": "Nobile", - "fontFamily": "Nobile, sans-serif", - "slug": "nobile", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/nobile/v17/m8JTjflSeaOVl1i2XqfXeLVdbw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Nobile" - }, - { - "src": "http://fonts.gstatic.com/s/nobile/v17/m8JRjflSeaOVl1iGXK3TWrBNb3OD.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Nobile" - }, - { - "src": "http://fonts.gstatic.com/s/nobile/v17/m8JQjflSeaOVl1iOqo7zcJ5BZmqa3A.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Nobile" - }, - { - "src": "http://fonts.gstatic.com/s/nobile/v17/m8JWjflSeaOVl1iGXJUnc5RFRG-K3Mud.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Nobile" - }, - { - "src": "http://fonts.gstatic.com/s/nobile/v17/m8JQjflSeaOVl1iO4ojzcJ5BZmqa3A.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Nobile" - }, - { - "src": "http://fonts.gstatic.com/s/nobile/v17/m8JWjflSeaOVl1iGXJVvdZRFRG-K3Mud.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Nobile" - } - ] - }, - { - "name": "Nokora", - "fontFamily": "Nokora, sans-serif", - "slug": "nokora", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/nokora/v30/~CgoKBk5va29yYRhkIAAqBAgBGAE=.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Nokora" - }, - { - "src": "http://fonts.gstatic.com/s/nokora/v30/~CgsKBk5va29yYRisAiAAKgQIARgB.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Nokora" - }, - { - "src": "http://fonts.gstatic.com/s/nokora/v30/~CggKBk5va29yYSAAKgQIARgB.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Nokora" - }, - { - "src": "http://fonts.gstatic.com/s/nokora/v30/~CgsKBk5va29yYRi8BSAAKgQIARgB.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Nokora" - }, - { - "src": "http://fonts.gstatic.com/s/nokora/v30/~CgsKBk5va29yYRiEByAAKgQIARgB.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Nokora" - } - ] - }, - { - "name": "Norican", - "fontFamily": "Norican, cursive", - "slug": "norican", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/norican/v14/MwQ2bhXp1eSBqjkPGJJRtGs-lbA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Norican" - } - ] - }, - { - "name": "Nosifer", - "fontFamily": "Nosifer, system-ui", - "slug": "nosifer", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/nosifer/v20/ZGjXol5JTp0g5bxZaC1RVDNdGDs.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Nosifer" - } - ] - }, - { - "name": "Notable", - "fontFamily": "Notable, sans-serif", - "slug": "notable", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notable/v14/gNMEW3N_SIqx-WX9-HMoFIez5MI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Notable" - } - ] - }, - { - "name": "Nothing You Could Do", - "fontFamily": "Nothing You Could Do, cursive", - "slug": "nothing-you-could-do", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/nothingyoucoulddo/v15/oY1B8fbBpaP5OX3DtrRYf_Q2BPB1SnfZb0OJl1ol2Ymo.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Nothing You Could Do" - } - ] - }, - { - "name": "Noticia Text", - "fontFamily": "Noticia Text, serif", - "slug": "noticia-text", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/noticiatext/v15/VuJ2dNDF2Yv9qppOePKYRP1GYTFZt0rNpQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noticia Text" - }, - { - "src": "http://fonts.gstatic.com/s/noticiatext/v15/VuJodNDF2Yv9qppOePKYRP12YztdlU_dpSjt.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Noticia Text" - }, - { - "src": "http://fonts.gstatic.com/s/noticiatext/v15/VuJpdNDF2Yv9qppOePKYRP1-3R59v2HRrDH0eA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noticia Text" - }, - { - "src": "http://fonts.gstatic.com/s/noticiatext/v15/VuJrdNDF2Yv9qppOePKYRP12YwPhumvVjjTkeMnz.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Noticia Text" - } - ] - }, - { - "name": "Noto Color Emoji", - "fontFamily": "Noto Color Emoji, sans-serif", - "slug": "noto-color-emoji", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notocoloremoji/v25/Yq6P-KqIXTD0t4D9z1ESnKM3-HpFab5s79iz64w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Color Emoji" - } - ] - }, - { - "name": "Noto Emoji", - "fontFamily": "Noto Emoji, sans-serif", - "slug": "noto-emoji", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoemoji/v39/bMrnmSyK7YY-MEu6aWjPDs-ar6uWaGWuob_10jwvS-FGJCMY.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Emoji" - }, - { - "src": "http://fonts.gstatic.com/s/notoemoji/v39/bMrnmSyK7YY-MEu6aWjPDs-ar6uWaGWuob-r0jwvS-FGJCMY.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Emoji" - }, - { - "src": "http://fonts.gstatic.com/s/notoemoji/v39/bMrnmSyK7YY-MEu6aWjPDs-ar6uWaGWuob-Z0jwvS-FGJCMY.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Emoji" - }, - { - "src": "http://fonts.gstatic.com/s/notoemoji/v39/bMrnmSyK7YY-MEu6aWjPDs-ar6uWaGWuob911TwvS-FGJCMY.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Emoji" - }, - { - "src": "http://fonts.gstatic.com/s/notoemoji/v39/bMrnmSyK7YY-MEu6aWjPDs-ar6uWaGWuob9M1TwvS-FGJCMY.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Emoji" - } - ] - }, - { - "name": "Noto Kufi Arabic", - "fontFamily": "Noto Kufi Arabic, sans-serif", - "slug": "noto-kufi-arabic", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notokufiarabic/v16/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh5v3obPnLSmf5yD.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Kufi Arabic" - }, - { - "src": "http://fonts.gstatic.com/s/notokufiarabic/v16/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh7v34bPnLSmf5yD.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Kufi Arabic" - }, - { - "src": "http://fonts.gstatic.com/s/notokufiarabic/v16/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh4x34bPnLSmf5yD.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Kufi Arabic" - }, - { - "src": "http://fonts.gstatic.com/s/notokufiarabic/v16/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh5v34bPnLSmf5yD.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Kufi Arabic" - }, - { - "src": "http://fonts.gstatic.com/s/notokufiarabic/v16/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh5d34bPnLSmf5yD.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Kufi Arabic" - }, - { - "src": "http://fonts.gstatic.com/s/notokufiarabic/v16/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh6x2IbPnLSmf5yD.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Kufi Arabic" - }, - { - "src": "http://fonts.gstatic.com/s/notokufiarabic/v16/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh6I2IbPnLSmf5yD.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Kufi Arabic" - }, - { - "src": "http://fonts.gstatic.com/s/notokufiarabic/v16/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh7v2IbPnLSmf5yD.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Kufi Arabic" - }, - { - "src": "http://fonts.gstatic.com/s/notokufiarabic/v16/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh7G2IbPnLSmf5yD.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Kufi Arabic" - } - ] - }, - { - "name": "Noto Music", - "fontFamily": "Noto Music, sans-serif", - "slug": "noto-music", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notomusic/v17/pe0rMIiSN5pO63htf1sxIteQB9Zra1U.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Music" - } - ] - }, - { - "name": "Noto Naskh Arabic", - "fontFamily": "Noto Naskh Arabic, serif", - "slug": "noto-naskh-arabic", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notonaskharabic/v33/RrQ5bpV-9Dd1b1OAGA6M9PkyDuVBePeKNaxcsss0Y7bwvc5krK0z9_Mnuw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Naskh Arabic" - }, - { - "src": "http://fonts.gstatic.com/s/notonaskharabic/v33/RrQ5bpV-9Dd1b1OAGA6M9PkyDuVBePeKNaxcsss0Y7bwj85krK0z9_Mnuw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Naskh Arabic" - }, - { - "src": "http://fonts.gstatic.com/s/notonaskharabic/v33/RrQ5bpV-9Dd1b1OAGA6M9PkyDuVBePeKNaxcsss0Y7bwY8lkrK0z9_Mnuw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Naskh Arabic" - }, - { - "src": "http://fonts.gstatic.com/s/notonaskharabic/v33/RrQ5bpV-9Dd1b1OAGA6M9PkyDuVBePeKNaxcsss0Y7bwWslkrK0z9_Mnuw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Naskh Arabic" - } - ] - }, - { - "name": "Noto Nastaliq Urdu", - "fontFamily": "Noto Nastaliq Urdu, serif", - "slug": "noto-nastaliq-urdu", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notonastaliqurdu/v20/LhWNMUPbN-oZdNFcBy1-DJYsEoTq5pudQ9L940pGPkB3Qt_-DK2f2-_8mEw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Nastaliq Urdu" - }, - { - "src": "http://fonts.gstatic.com/s/notonastaliqurdu/v20/LhWNMUPbN-oZdNFcBy1-DJYsEoTq5pudQ9L940pGPkB3Qu3-DK2f2-_8mEw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Nastaliq Urdu" - }, - { - "src": "http://fonts.gstatic.com/s/notonastaliqurdu/v20/LhWNMUPbN-oZdNFcBy1-DJYsEoTq5pudQ9L940pGPkB3QgH5DK2f2-_8mEw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Nastaliq Urdu" - }, - { - "src": "http://fonts.gstatic.com/s/notonastaliqurdu/v20/LhWNMUPbN-oZdNFcBy1-DJYsEoTq5pudQ9L940pGPkB3Qjj5DK2f2-_8mEw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Nastaliq Urdu" - } - ] - }, - { - "name": "Noto Rashi Hebrew", - "fontFamily": "Noto Rashi Hebrew, serif", - "slug": "noto-rashi-hebrew", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notorashihebrew/v25/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZB-DkRyq6Nf2pfA.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Rashi Hebrew" - }, - { - "src": "http://fonts.gstatic.com/s/notorashihebrew/v25/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZh-HkRyq6Nf2pfA.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Rashi Hebrew" - }, - { - "src": "http://fonts.gstatic.com/s/notorashihebrew/v25/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZWeHkRyq6Nf2pfA.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Rashi Hebrew" - }, - { - "src": "http://fonts.gstatic.com/s/notorashihebrew/v25/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZB-HkRyq6Nf2pfA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Rashi Hebrew" - }, - { - "src": "http://fonts.gstatic.com/s/notorashihebrew/v25/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZNeHkRyq6Nf2pfA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Rashi Hebrew" - }, - { - "src": "http://fonts.gstatic.com/s/notorashihebrew/v25/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZ2ebkRyq6Nf2pfA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Rashi Hebrew" - }, - { - "src": "http://fonts.gstatic.com/s/notorashihebrew/v25/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZ4ObkRyq6Nf2pfA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Rashi Hebrew" - }, - { - "src": "http://fonts.gstatic.com/s/notorashihebrew/v25/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZh-bkRyq6Nf2pfA.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Rashi Hebrew" - }, - { - "src": "http://fonts.gstatic.com/s/notorashihebrew/v25/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZrubkRyq6Nf2pfA.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Rashi Hebrew" - } - ] - }, - { - "name": "Noto Sans", - "fontFamily": "Noto Sans, sans-serif", - "slug": "noto-sans", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosans/v28/o-0OIpQlx3QUlC5A4PNjhjRFSfiM7HBj.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans" - }, - { - "src": "http://fonts.gstatic.com/s/notosans/v28/o-0MIpQlx3QUlC5A4PNr4AwhQ_yu6WBjJLE.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Noto Sans" - }, - { - "src": "http://fonts.gstatic.com/s/notosans/v28/o-0NIpQlx3QUlC5A4PNjKhVlY9aA5Wl6PQ.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Sans" - }, - { - "src": "http://fonts.gstatic.com/s/notosans/v28/o-0TIpQlx3QUlC5A4PNr4AyNYtyEx2xqPaif.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Noto Sans" - }, - { - "src": "http://fonts.gstatic.com/s/notosans/v28/o-0NIpQlx3QUlC5A4PNjThZlY9aA5Wl6PQ.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans" - }, - { - "src": "http://fonts.gstatic.com/s/notosans/v28/o-0TIpQlx3QUlC5A4PNr4AzpYdyEx2xqPaif.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Noto Sans" - }, - { - "src": "http://fonts.gstatic.com/s/notosans/v28/o-0IIpQlx3QUlC5A4PNb4j5Ba_2c7A.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans" - }, - { - "src": "http://fonts.gstatic.com/s/notosans/v28/o-0OIpQlx3QUlC5A4PNr4DRFSfiM7HBj.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Noto Sans" - }, - { - "src": "http://fonts.gstatic.com/s/notosans/v28/o-0NIpQlx3QUlC5A4PNjFhdlY9aA5Wl6PQ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans" - }, - { - "src": "http://fonts.gstatic.com/s/notosans/v28/o-0TIpQlx3QUlC5A4PNr4AyxYNyEx2xqPaif.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Noto Sans" - }, - { - "src": "http://fonts.gstatic.com/s/notosans/v28/o-0NIpQlx3QUlC5A4PNjOhBlY9aA5Wl6PQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans" - }, - { - "src": "http://fonts.gstatic.com/s/notosans/v28/o-0TIpQlx3QUlC5A4PNr4AydZ9yEx2xqPaif.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Noto Sans" - }, - { - "src": "http://fonts.gstatic.com/s/notosans/v28/o-0NIpQlx3QUlC5A4PNjXhFlY9aA5Wl6PQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans" - }, - { - "src": "http://fonts.gstatic.com/s/notosans/v28/o-0TIpQlx3QUlC5A4PNr4Az5ZtyEx2xqPaif.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Noto Sans" - }, - { - "src": "http://fonts.gstatic.com/s/notosans/v28/o-0NIpQlx3QUlC5A4PNjQhJlY9aA5Wl6PQ.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Sans" - }, - { - "src": "http://fonts.gstatic.com/s/notosans/v28/o-0TIpQlx3QUlC5A4PNr4AzlZdyEx2xqPaif.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Noto Sans" - }, - { - "src": "http://fonts.gstatic.com/s/notosans/v28/o-0NIpQlx3QUlC5A4PNjZhNlY9aA5Wl6PQ.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans" - }, - { - "src": "http://fonts.gstatic.com/s/notosans/v28/o-0TIpQlx3QUlC5A4PNr4AzBZNyEx2xqPaif.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Noto Sans" - } - ] - }, - { - "name": "Noto Sans Adlam", - "fontFamily": "Noto Sans Adlam, sans-serif", - "slug": "noto-sans-adlam", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansadlam/v21/neIczCCpqp0s5pPusPamd81eMfjPonvqdbYxxpgufnv0TGnBZLwhuvk.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Adlam" - }, - { - "src": "http://fonts.gstatic.com/s/notosansadlam/v21/neIczCCpqp0s5pPusPamd81eMfjPonvqdbYxxpgufkn0TGnBZLwhuvk.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Adlam" - }, - { - "src": "http://fonts.gstatic.com/s/notosansadlam/v21/neIczCCpqp0s5pPusPamd81eMfjPonvqdbYxxpgufqXzTGnBZLwhuvk.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Adlam" - }, - { - "src": "http://fonts.gstatic.com/s/notosansadlam/v21/neIczCCpqp0s5pPusPamd81eMfjPonvqdbYxxpgufpzzTGnBZLwhuvk.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Adlam" - } - ] - }, - { - "name": "Noto Sans Adlam Unjoined", - "fontFamily": "Noto Sans Adlam Unjoined, sans-serif", - "slug": "noto-sans-adlam-unjoined", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansadlamunjoined/v25/P5sszY2MYsLRsB5_ildkzPPDsLQXcOEmaFOqOGcaYrzFTIjsPam_Ye35PMEe-E3slUg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Adlam Unjoined" - }, - { - "src": "http://fonts.gstatic.com/s/notosansadlamunjoined/v25/P5sszY2MYsLRsB5_ildkzPPDsLQXcOEmaFOqOGcaYrzFTIjsPam_Yd_5PMEe-E3slUg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Adlam Unjoined" - }, - { - "src": "http://fonts.gstatic.com/s/notosansadlamunjoined/v25/P5sszY2MYsLRsB5_ildkzPPDsLQXcOEmaFOqOGcaYrzFTIjsPam_YTP-PMEe-E3slUg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Adlam Unjoined" - }, - { - "src": "http://fonts.gstatic.com/s/notosansadlamunjoined/v25/P5sszY2MYsLRsB5_ildkzPPDsLQXcOEmaFOqOGcaYrzFTIjsPam_YQr-PMEe-E3slUg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Adlam Unjoined" - } - ] - }, - { - "name": "Noto Sans Anatolian Hieroglyphs", - "fontFamily": "Noto Sans Anatolian Hieroglyphs, sans-serif", - "slug": "noto-sans-anatolian-hieroglyphs", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansanatolianhieroglyphs/v14/ijw9s4roRME5LLRxjsRb8A0gKPSWq4BbDmHHu6j2pEtUJzZWXybIymc5QYo.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Anatolian Hieroglyphs" - } - ] - }, - { - "name": "Noto Sans Arabic", - "fontFamily": "Noto Sans Arabic, sans-serif", - "slug": "noto-sans-arabic", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansarabic/v18/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCfyG2vu3CBFQLaig.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans Arabic" - }, - { - "src": "http://fonts.gstatic.com/s/notosansarabic/v18/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCfSGyvu3CBFQLaig.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Sans Arabic" - }, - { - "src": "http://fonts.gstatic.com/s/notosansarabic/v18/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCflmyvu3CBFQLaig.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans Arabic" - }, - { - "src": "http://fonts.gstatic.com/s/notosansarabic/v18/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCfyGyvu3CBFQLaig.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Arabic" - }, - { - "src": "http://fonts.gstatic.com/s/notosansarabic/v18/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCf-myvu3CBFQLaig.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Arabic" - }, - { - "src": "http://fonts.gstatic.com/s/notosansarabic/v18/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCfFmuvu3CBFQLaig.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Arabic" - }, - { - "src": "http://fonts.gstatic.com/s/notosansarabic/v18/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCfL2uvu3CBFQLaig.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Arabic" - }, - { - "src": "http://fonts.gstatic.com/s/notosansarabic/v18/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCfSGuvu3CBFQLaig.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Sans Arabic" - }, - { - "src": "http://fonts.gstatic.com/s/notosansarabic/v18/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCfYWuvu3CBFQLaig.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans Arabic" - } - ] - }, - { - "name": "Noto Sans Armenian", - "fontFamily": "Noto Sans Armenian, sans-serif", - "slug": "noto-sans-armenian", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansarmenian/v42/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLorxbq0iYy6zF3Eg.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans Armenian" - }, - { - "src": "http://fonts.gstatic.com/s/notosansarmenian/v42/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLopxb60iYy6zF3Eg.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Sans Armenian" - }, - { - "src": "http://fonts.gstatic.com/s/notosansarmenian/v42/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLoqvb60iYy6zF3Eg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans Armenian" - }, - { - "src": "http://fonts.gstatic.com/s/notosansarmenian/v42/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLorxb60iYy6zF3Eg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Armenian" - }, - { - "src": "http://fonts.gstatic.com/s/notosansarmenian/v42/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLorDb60iYy6zF3Eg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Armenian" - }, - { - "src": "http://fonts.gstatic.com/s/notosansarmenian/v42/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLoovaK0iYy6zF3Eg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Armenian" - }, - { - "src": "http://fonts.gstatic.com/s/notosansarmenian/v42/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLooWaK0iYy6zF3Eg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Armenian" - }, - { - "src": "http://fonts.gstatic.com/s/notosansarmenian/v42/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLopxaK0iYy6zF3Eg.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Sans Armenian" - }, - { - "src": "http://fonts.gstatic.com/s/notosansarmenian/v42/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLopYaK0iYy6zF3Eg.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans Armenian" - } - ] - }, - { - "name": "Noto Sans Avestan", - "fontFamily": "Noto Sans Avestan, sans-serif", - "slug": "noto-sans-avestan", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansavestan/v20/bWti7ejKfBziStx7lIzKOLQZKhIJkyu9SASLji8U.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Avestan" - } - ] - }, - { - "name": "Noto Sans Balinese", - "fontFamily": "Noto Sans Balinese, sans-serif", - "slug": "noto-sans-balinese", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansbalinese/v24/NaPwcYvSBuhTirw6IaFn6UrRDaqje-lpbbRtYf-Fwu2Ov7fdhE5Vd222PPY.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Balinese" - }, - { - "src": "http://fonts.gstatic.com/s/notosansbalinese/v24/NaPwcYvSBuhTirw6IaFn6UrRDaqje-lpbbRtYf-Fwu2Ov4XdhE5Vd222PPY.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Balinese" - }, - { - "src": "http://fonts.gstatic.com/s/notosansbalinese/v24/NaPwcYvSBuhTirw6IaFn6UrRDaqje-lpbbRtYf-Fwu2Ov2nahE5Vd222PPY.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Balinese" - }, - { - "src": "http://fonts.gstatic.com/s/notosansbalinese/v24/NaPwcYvSBuhTirw6IaFn6UrRDaqje-lpbbRtYf-Fwu2Ov1DahE5Vd222PPY.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Balinese" - } - ] - }, - { - "name": "Noto Sans Bamum", - "fontFamily": "Noto Sans Bamum, sans-serif", - "slug": "noto-sans-bamum", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansbamum/v26/uk-0EGK3o6EruUbnwovcbBTkkklK_Ya_PBHfNGTPEddO-_gLykxEkxA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Bamum" - }, - { - "src": "http://fonts.gstatic.com/s/notosansbamum/v26/uk-0EGK3o6EruUbnwovcbBTkkklK_Ya_PBHfNGTPEeVO-_gLykxEkxA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Bamum" - }, - { - "src": "http://fonts.gstatic.com/s/notosansbamum/v26/uk-0EGK3o6EruUbnwovcbBTkkklK_Ya_PBHfNGTPEQlJ-_gLykxEkxA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Bamum" - }, - { - "src": "http://fonts.gstatic.com/s/notosansbamum/v26/uk-0EGK3o6EruUbnwovcbBTkkklK_Ya_PBHfNGTPETBJ-_gLykxEkxA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Bamum" - } - ] - }, - { - "name": "Noto Sans Bassa Vah", - "fontFamily": "Noto Sans Bassa Vah, sans-serif", - "slug": "noto-sans-bassa-vah", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansbassavah/v17/PN_bRee-r3f7LnqsD5sax12gjZn7mBpL5YwUpA2MBdcFn4MaAc6p34gH-GD7.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Bassa Vah" - }, - { - "src": "http://fonts.gstatic.com/s/notosansbassavah/v17/PN_bRee-r3f7LnqsD5sax12gjZn7mBpL5YwUpA2MBdcFn4MoAc6p34gH-GD7.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Bassa Vah" - }, - { - "src": "http://fonts.gstatic.com/s/notosansbassavah/v17/PN_bRee-r3f7LnqsD5sax12gjZn7mBpL5YwUpA2MBdcFn4PEBs6p34gH-GD7.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Bassa Vah" - }, - { - "src": "http://fonts.gstatic.com/s/notosansbassavah/v17/PN_bRee-r3f7LnqsD5sax12gjZn7mBpL5YwUpA2MBdcFn4P9Bs6p34gH-GD7.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Bassa Vah" - } - ] - }, - { - "name": "Noto Sans Batak", - "fontFamily": "Noto Sans Batak, sans-serif", - "slug": "noto-sans-batak", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansbatak/v16/gok2H6TwAEdtF9N8-mdTCQvT-Zdgo4_PHuk74A.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Batak" - } - ] - }, - { - "name": "Noto Sans Bengali", - "fontFamily": "Noto Sans Bengali, sans-serif", - "slug": "noto-sans-bengali", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansbengali/v20/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmsolKudCk8izI0lc.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans Bengali" - }, - { - "src": "http://fonts.gstatic.com/s/notosansbengali/v20/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmsglLudCk8izI0lc.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Sans Bengali" - }, - { - "src": "http://fonts.gstatic.com/s/notosansbengali/v20/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmstdLudCk8izI0lc.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans Bengali" - }, - { - "src": "http://fonts.gstatic.com/s/notosansbengali/v20/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmsolLudCk8izI0lc.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Bengali" - }, - { - "src": "http://fonts.gstatic.com/s/notosansbengali/v20/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmsrtLudCk8izI0lc.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Bengali" - }, - { - "src": "http://fonts.gstatic.com/s/notosansbengali/v20/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmsldMudCk8izI0lc.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Bengali" - }, - { - "src": "http://fonts.gstatic.com/s/notosansbengali/v20/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6Kmsm5MudCk8izI0lc.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Bengali" - }, - { - "src": "http://fonts.gstatic.com/s/notosansbengali/v20/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmsglMudCk8izI0lc.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Sans Bengali" - }, - { - "src": "http://fonts.gstatic.com/s/notosansbengali/v20/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmsiBMudCk8izI0lc.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans Bengali" - } - ] - }, - { - "name": "Noto Sans Bhaiksuki", - "fontFamily": "Noto Sans Bhaiksuki, sans-serif", - "slug": "noto-sans-bhaiksuki", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansbhaiksuki/v15/UcC63EosKniBH4iELXATsSBWdvUHXxhj8rLUdU4wh9U.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Bhaiksuki" - } - ] - }, - { - "name": "Noto Sans Brahmi", - "fontFamily": "Noto Sans Brahmi, sans-serif", - "slug": "noto-sans-brahmi", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansbrahmi/v15/vEFK2-VODB8RrNDvZSUmQQIIByV18tK1W77HtMo.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Brahmi" - } - ] - }, - { - "name": "Noto Sans Buginese", - "fontFamily": "Noto Sans Buginese, sans-serif", - "slug": "noto-sans-buginese", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansbuginese/v18/esDM30ldNv-KYGGJpKGk18phe_7Da6_gtfuEXLmNtw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Buginese" - } - ] - }, - { - "name": "Noto Sans Buhid", - "fontFamily": "Noto Sans Buhid, sans-serif", - "slug": "noto-sans-buhid", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansbuhid/v18/Dxxy8jiXMW75w3OmoDXVWJD7YwzAe6tgnaFoGA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Buhid" - } - ] - }, - { - "name": "Noto Sans Canadian Aboriginal", - "fontFamily": "Noto Sans Canadian Aboriginal, sans-serif", - "slug": "noto-sans-canadian-aboriginal", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanscanadianaboriginal/v21/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzigWLj_yAsg0q0uhQ.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans Canadian Aboriginal" - }, - { - "src": "http://fonts.gstatic.com/s/notosanscanadianaboriginal/v21/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzig2Ln_yAsg0q0uhQ.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Sans Canadian Aboriginal" - }, - { - "src": "http://fonts.gstatic.com/s/notosanscanadianaboriginal/v21/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzigBrn_yAsg0q0uhQ.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans Canadian Aboriginal" - }, - { - "src": "http://fonts.gstatic.com/s/notosanscanadianaboriginal/v21/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzigWLn_yAsg0q0uhQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Canadian Aboriginal" - }, - { - "src": "http://fonts.gstatic.com/s/notosanscanadianaboriginal/v21/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzigarn_yAsg0q0uhQ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Canadian Aboriginal" - }, - { - "src": "http://fonts.gstatic.com/s/notosanscanadianaboriginal/v21/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzighr7_yAsg0q0uhQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Canadian Aboriginal" - }, - { - "src": "http://fonts.gstatic.com/s/notosanscanadianaboriginal/v21/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzigv77_yAsg0q0uhQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Canadian Aboriginal" - }, - { - "src": "http://fonts.gstatic.com/s/notosanscanadianaboriginal/v21/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzig2L7_yAsg0q0uhQ.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Sans Canadian Aboriginal" - }, - { - "src": "http://fonts.gstatic.com/s/notosanscanadianaboriginal/v21/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzig8b7_yAsg0q0uhQ.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans Canadian Aboriginal" - } - ] - }, - { - "name": "Noto Sans Carian", - "fontFamily": "Noto Sans Carian, sans-serif", - "slug": "noto-sans-carian", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanscarian/v15/LDIpaoiONgYwA9Yc6f0gUILeMIOgs7ob9yGLmfI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Carian" - } - ] - }, - { - "name": "Noto Sans Caucasian Albanian", - "fontFamily": "Noto Sans Caucasian Albanian, sans-serif", - "slug": "noto-sans-caucasian-albanian", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanscaucasianalbanian/v16/nKKA-HM_FYFRJvXzVXaANsU0VzsAc46QGOkWytlTs-TXrYDmoVmRSZo.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Caucasian Albanian" - } - ] - }, - { - "name": "Noto Sans Chakma", - "fontFamily": "Noto Sans Chakma, sans-serif", - "slug": "noto-sans-chakma", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanschakma/v17/Y4GQYbJ8VTEp4t3MKJSMjg5OIzhi4JjTQhYBeYo.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Chakma" - } - ] - }, - { - "name": "Noto Sans Cham", - "fontFamily": "Noto Sans Cham, sans-serif", - "slug": "noto-sans-cham", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanscham/v27/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfcER0cv7GykboaLg.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans Cham" - }, - { - "src": "http://fonts.gstatic.com/s/notosanscham/v27/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfckRwcv7GykboaLg.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Sans Cham" - }, - { - "src": "http://fonts.gstatic.com/s/notosanscham/v27/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfcTxwcv7GykboaLg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans Cham" - }, - { - "src": "http://fonts.gstatic.com/s/notosanscham/v27/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfcERwcv7GykboaLg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Cham" - }, - { - "src": "http://fonts.gstatic.com/s/notosanscham/v27/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfcIxwcv7GykboaLg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Cham" - }, - { - "src": "http://fonts.gstatic.com/s/notosanscham/v27/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfczxscv7GykboaLg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Cham" - }, - { - "src": "http://fonts.gstatic.com/s/notosanscham/v27/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfc9hscv7GykboaLg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Cham" - }, - { - "src": "http://fonts.gstatic.com/s/notosanscham/v27/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfckRscv7GykboaLg.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Sans Cham" - }, - { - "src": "http://fonts.gstatic.com/s/notosanscham/v27/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfcuBscv7GykboaLg.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans Cham" - } - ] - }, - { - "name": "Noto Sans Cherokee", - "fontFamily": "Noto Sans Cherokee, sans-serif", - "slug": "noto-sans-cherokee", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanscherokee/v19/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWi5ODkm5rAffjl0.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans Cherokee" - }, - { - "src": "http://fonts.gstatic.com/s/notosanscherokee/v19/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWq5PDkm5rAffjl0.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Sans Cherokee" - }, - { - "src": "http://fonts.gstatic.com/s/notosanscherokee/v19/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWnBPDkm5rAffjl0.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans Cherokee" - }, - { - "src": "http://fonts.gstatic.com/s/notosanscherokee/v19/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWi5PDkm5rAffjl0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Cherokee" - }, - { - "src": "http://fonts.gstatic.com/s/notosanscherokee/v19/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWhxPDkm5rAffjl0.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Cherokee" - }, - { - "src": "http://fonts.gstatic.com/s/notosanscherokee/v19/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWvBIDkm5rAffjl0.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Cherokee" - }, - { - "src": "http://fonts.gstatic.com/s/notosanscherokee/v19/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWslIDkm5rAffjl0.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Cherokee" - }, - { - "src": "http://fonts.gstatic.com/s/notosanscherokee/v19/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWq5IDkm5rAffjl0.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Sans Cherokee" - }, - { - "src": "http://fonts.gstatic.com/s/notosanscherokee/v19/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWodIDkm5rAffjl0.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans Cherokee" - } - ] - }, - { - "name": "Noto Sans Chorasmian", - "fontFamily": "Noto Sans Chorasmian, sans-serif", - "slug": "noto-sans-chorasmian", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanschorasmian/v1/MQpL-X6uKMC7ROPLwRnI9ULxK_7NVkf8S5vyoH7w4g9b.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Chorasmian" - } - ] - }, - { - "name": "Noto Sans Coptic", - "fontFamily": "Noto Sans Coptic, sans-serif", - "slug": "noto-sans-coptic", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanscoptic/v17/iJWfBWmUZi_OHPqn4wq6kgqumOEd78u_VG0xR4Y.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Coptic" - } - ] - }, - { - "name": "Noto Sans Cuneiform", - "fontFamily": "Noto Sans Cuneiform, sans-serif", - "slug": "noto-sans-cuneiform", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanscuneiform/v15/bMrrmTWK7YY-MF22aHGGd7H8PhJtvBDWgb9JlRQueeQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Cuneiform" - } - ] - }, - { - "name": "Noto Sans Cypriot", - "fontFamily": "Noto Sans Cypriot, sans-serif", - "slug": "noto-sans-cypriot", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanscypriot/v15/8AtzGta9PYqQDjyp79a6f8Cj-3a3cxIsK5MPpahF.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Cypriot" - } - ] - }, - { - "name": "Noto Sans Deseret", - "fontFamily": "Noto Sans Deseret, sans-serif", - "slug": "noto-sans-deseret", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansdeseret/v15/MwQsbgPp1eKH6QsAVuFb9AZM6MMr2Vq9ZnJSZtQG.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Deseret" - } - ] - }, - { - "name": "Noto Sans Devanagari", - "fontFamily": "Noto Sans Devanagari, sans-serif", - "slug": "noto-sans-devanagari", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansdevanagari/v25/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08AlXQky-AzoFoW4Ow.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans Devanagari" - }, - { - "src": "http://fonts.gstatic.com/s/notosansdevanagari/v25/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08AlfQly-AzoFoW4Ow.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Sans Devanagari" - }, - { - "src": "http://fonts.gstatic.com/s/notosansdevanagari/v25/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08AlSoly-AzoFoW4Ow.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans Devanagari" - }, - { - "src": "http://fonts.gstatic.com/s/notosansdevanagari/v25/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08AlXQly-AzoFoW4Ow.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Devanagari" - }, - { - "src": "http://fonts.gstatic.com/s/notosansdevanagari/v25/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08AlUYly-AzoFoW4Ow.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Devanagari" - }, - { - "src": "http://fonts.gstatic.com/s/notosansdevanagari/v25/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08Alaoiy-AzoFoW4Ow.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Devanagari" - }, - { - "src": "http://fonts.gstatic.com/s/notosansdevanagari/v25/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08AlZMiy-AzoFoW4Ow.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Devanagari" - }, - { - "src": "http://fonts.gstatic.com/s/notosansdevanagari/v25/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08AlfQiy-AzoFoW4Ow.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Sans Devanagari" - }, - { - "src": "http://fonts.gstatic.com/s/notosansdevanagari/v25/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08Ald0iy-AzoFoW4Ow.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans Devanagari" - } - ] - }, - { - "name": "Noto Sans Display", - "fontFamily": "Noto Sans Display, sans-serif", - "slug": "noto-sans-display", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp_3cLVTGQ2iHrvWM.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans Display" - }, - { - "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp__cKVTGQ2iHrvWM.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Sans Display" - }, - { - "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp_ykKVTGQ2iHrvWM.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans Display" - }, - { - "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp_3cKVTGQ2iHrvWM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Display" - }, - { - "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp_0UKVTGQ2iHrvWM.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Display" - }, - { - "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp_6kNVTGQ2iHrvWM.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Display" - }, - { - "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp_5ANVTGQ2iHrvWM.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Display" - }, - { - "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp__cNVTGQ2iHrvWM.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Sans Display" - }, - { - "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp_94NVTGQ2iHrvWM.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans Display" - }, - { - "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9JvXOa3gPurWM9uQ.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Noto Sans Display" - }, - { - "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9JPXKa3gPurWM9uQ.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Noto Sans Display" - }, - { - "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9J43Ka3gPurWM9uQ.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Noto Sans Display" - }, - { - "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9JvXKa3gPurWM9uQ.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Noto Sans Display" - }, - { - "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9Jj3Ka3gPurWM9uQ.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Noto Sans Display" - }, - { - "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9JY3Wa3gPurWM9uQ.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Noto Sans Display" - }, - { - "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9JWnWa3gPurWM9uQ.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Noto Sans Display" - }, - { - "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9JPXWa3gPurWM9uQ.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Noto Sans Display" - }, - { - "src": "http://fonts.gstatic.com/s/notosansdisplay/v20/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9JFHWa3gPurWM9uQ.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Noto Sans Display" - } - ] - }, - { - "name": "Noto Sans Duployan", - "fontFamily": "Noto Sans Duployan, sans-serif", - "slug": "noto-sans-duployan", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansduployan/v16/gokzH7nwAEdtF9N8-mdTDx_X9JM5wsvrFsIn6WYDvA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Duployan" - } - ] - }, - { - "name": "Noto Sans Egyptian Hieroglyphs", - "fontFamily": "Noto Sans Egyptian Hieroglyphs, sans-serif", - "slug": "noto-sans-egyptian-hieroglyphs", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansegyptianhieroglyphs/v26/vEF42-tODB8RrNDvZSUmRhcQHzx1s7y_F9-j3qSzEcbEYindSVK8xRg7iw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Egyptian Hieroglyphs" - } - ] - }, - { - "name": "Noto Sans Elbasan", - "fontFamily": "Noto Sans Elbasan, sans-serif", - "slug": "noto-sans-elbasan", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanselbasan/v16/-F6rfiZqLzI2JPCgQBnw400qp1trvHdlre4dFcFh.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Elbasan" - } - ] - }, - { - "name": "Noto Sans Elymaic", - "fontFamily": "Noto Sans Elymaic, sans-serif", - "slug": "noto-sans-elymaic", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanselymaic/v15/UqyKK9YTJW5liNMhTMqe9vUFP65ZD4AjWOT0zi2V.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Elymaic" - } - ] - }, - { - "name": "Noto Sans Ethiopic", - "fontFamily": "Noto Sans Ethiopic, sans-serif", - "slug": "noto-sans-ethiopic", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansethiopic/v46/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T35OKqDjwmfeaY9u.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans Ethiopic" - }, - { - "src": "http://fonts.gstatic.com/s/notosansethiopic/v46/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T37OK6DjwmfeaY9u.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Sans Ethiopic" - }, - { - "src": "http://fonts.gstatic.com/s/notosansethiopic/v46/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T34QK6DjwmfeaY9u.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans Ethiopic" - }, - { - "src": "http://fonts.gstatic.com/s/notosansethiopic/v46/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T35OK6DjwmfeaY9u.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Ethiopic" - }, - { - "src": "http://fonts.gstatic.com/s/notosansethiopic/v46/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T358K6DjwmfeaY9u.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Ethiopic" - }, - { - "src": "http://fonts.gstatic.com/s/notosansethiopic/v46/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T36QLKDjwmfeaY9u.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Ethiopic" - }, - { - "src": "http://fonts.gstatic.com/s/notosansethiopic/v46/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T36pLKDjwmfeaY9u.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Ethiopic" - }, - { - "src": "http://fonts.gstatic.com/s/notosansethiopic/v46/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T37OLKDjwmfeaY9u.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Sans Ethiopic" - }, - { - "src": "http://fonts.gstatic.com/s/notosansethiopic/v46/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T37nLKDjwmfeaY9u.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans Ethiopic" - } - ] - }, - { - "name": "Noto Sans Georgian", - "fontFamily": "Noto Sans Georgian, sans-serif", - "slug": "noto-sans-georgian", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansgeorgian/v42/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdpvnzVj-f5WK0OQV.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans Georgian" - }, - { - "src": "http://fonts.gstatic.com/s/notosansgeorgian/v42/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdptnzFj-f5WK0OQV.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Sans Georgian" - }, - { - "src": "http://fonts.gstatic.com/s/notosansgeorgian/v42/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdpu5zFj-f5WK0OQV.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans Georgian" - }, - { - "src": "http://fonts.gstatic.com/s/notosansgeorgian/v42/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdpvnzFj-f5WK0OQV.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Georgian" - }, - { - "src": "http://fonts.gstatic.com/s/notosansgeorgian/v42/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdpvVzFj-f5WK0OQV.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Georgian" - }, - { - "src": "http://fonts.gstatic.com/s/notosansgeorgian/v42/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdps5y1j-f5WK0OQV.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Georgian" - }, - { - "src": "http://fonts.gstatic.com/s/notosansgeorgian/v42/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdpsAy1j-f5WK0OQV.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Georgian" - }, - { - "src": "http://fonts.gstatic.com/s/notosansgeorgian/v42/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdptny1j-f5WK0OQV.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Sans Georgian" - }, - { - "src": "http://fonts.gstatic.com/s/notosansgeorgian/v42/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdptOy1j-f5WK0OQV.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans Georgian" - } - ] - }, - { - "name": "Noto Sans Glagolitic", - "fontFamily": "Noto Sans Glagolitic, sans-serif", - "slug": "noto-sans-glagolitic", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansglagolitic/v15/1q2ZY4-BBFBst88SU_tOj4J-4yuNF_HI4ERK4Amu7nM1.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Glagolitic" - } - ] - }, - { - "name": "Noto Sans Gothic", - "fontFamily": "Noto Sans Gothic, sans-serif", - "slug": "noto-sans-gothic", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansgothic/v15/TuGKUUVzXI5FBtUq5a8bj6wRbzxTFMX40kFQRx0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Gothic" - } - ] - }, - { - "name": "Noto Sans Grantha", - "fontFamily": "Noto Sans Grantha, sans-serif", - "slug": "noto-sans-grantha", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansgrantha/v17/3y976akwcCjmsU8NDyrKo3IQfQ4o-r8cFeulHc6N.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Grantha" - } - ] - }, - { - "name": "Noto Sans Gujarati", - "fontFamily": "Noto Sans Gujarati, sans-serif", - "slug": "noto-sans-gujarati", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansgujarati/v23/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_ypFgPM_OdiEH0s.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans Gujarati" - }, - { - "src": "http://fonts.gstatic.com/s/notosansgujarati/v23/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_wpFwPM_OdiEH0s.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Sans Gujarati" - }, - { - "src": "http://fonts.gstatic.com/s/notosansgujarati/v23/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_z3FwPM_OdiEH0s.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans Gujarati" - }, - { - "src": "http://fonts.gstatic.com/s/notosansgujarati/v23/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_ypFwPM_OdiEH0s.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Gujarati" - }, - { - "src": "http://fonts.gstatic.com/s/notosansgujarati/v23/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_ybFwPM_OdiEH0s.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Gujarati" - }, - { - "src": "http://fonts.gstatic.com/s/notosansgujarati/v23/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_x3EAPM_OdiEH0s.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Gujarati" - }, - { - "src": "http://fonts.gstatic.com/s/notosansgujarati/v23/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_xOEAPM_OdiEH0s.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Gujarati" - }, - { - "src": "http://fonts.gstatic.com/s/notosansgujarati/v23/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_wpEAPM_OdiEH0s.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Sans Gujarati" - }, - { - "src": "http://fonts.gstatic.com/s/notosansgujarati/v23/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_wAEAPM_OdiEH0s.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans Gujarati" - } - ] - }, - { - "name": "Noto Sans Gunjala Gondi", - "fontFamily": "Noto Sans Gunjala Gondi, sans-serif", - "slug": "noto-sans-gunjala-gondi", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansgunjalagondi/v15/bWto7e7KfBziStx7lIzKPrcSMwcEnCv6DW7n5hcVXYMTK4q1.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Gunjala Gondi" - } - ] - }, - { - "name": "Noto Sans Gurmukhi", - "fontFamily": "Noto Sans Gurmukhi, sans-serif", - "slug": "noto-sans-gurmukhi", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansgurmukhi/v26/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG1Oe3bxZ_trdp7h.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans Gurmukhi" - }, - { - "src": "http://fonts.gstatic.com/s/notosansgurmukhi/v26/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG3OenbxZ_trdp7h.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Sans Gurmukhi" - }, - { - "src": "http://fonts.gstatic.com/s/notosansgurmukhi/v26/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG0QenbxZ_trdp7h.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans Gurmukhi" - }, - { - "src": "http://fonts.gstatic.com/s/notosansgurmukhi/v26/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG1OenbxZ_trdp7h.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Gurmukhi" - }, - { - "src": "http://fonts.gstatic.com/s/notosansgurmukhi/v26/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG18enbxZ_trdp7h.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Gurmukhi" - }, - { - "src": "http://fonts.gstatic.com/s/notosansgurmukhi/v26/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG2QfXbxZ_trdp7h.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Gurmukhi" - }, - { - "src": "http://fonts.gstatic.com/s/notosansgurmukhi/v26/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG2pfXbxZ_trdp7h.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Gurmukhi" - }, - { - "src": "http://fonts.gstatic.com/s/notosansgurmukhi/v26/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG3OfXbxZ_trdp7h.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Sans Gurmukhi" - }, - { - "src": "http://fonts.gstatic.com/s/notosansgurmukhi/v26/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG3nfXbxZ_trdp7h.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans Gurmukhi" - } - ] - }, - { - "name": "Noto Sans HK", - "fontFamily": "Noto Sans HK, sans-serif", - "slug": "noto-sans-hk", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanshk/v21/nKKO-GM_FYFRJvXzVXaAPe9ZUHp1MOv2ObB7.otf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans HK" - }, - { - "src": "http://fonts.gstatic.com/s/notosanshk/v21/nKKP-GM_FYFRJvXzVXaAPe9ZmFhTHMX6MKliqQ.otf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans HK" - }, - { - "src": "http://fonts.gstatic.com/s/notosanshk/v21/nKKQ-GM_FYFRJvXzVXaAPe9hMnB3Eu7mOQ.otf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans HK" - }, - { - "src": "http://fonts.gstatic.com/s/notosanshk/v21/nKKP-GM_FYFRJvXzVXaAPe9ZwFlTHMX6MKliqQ.otf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans HK" - }, - { - "src": "http://fonts.gstatic.com/s/notosanshk/v21/nKKP-GM_FYFRJvXzVXaAPe9ZiF9THMX6MKliqQ.otf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans HK" - }, - { - "src": "http://fonts.gstatic.com/s/notosanshk/v21/nKKP-GM_FYFRJvXzVXaAPe9ZsF1THMX6MKliqQ.otf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans HK" - } - ] - }, - { - "name": "Noto Sans Hanifi Rohingya", - "fontFamily": "Noto Sans Hanifi Rohingya, sans-serif", - "slug": "noto-sans-hanifi-rohingya", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanshanifirohingya/v26/5h17iYsoOmIC3Yu3MDXLDw3UZCgghyOEBBY7hhLNyo3tiaiuSIAqrIYY4j6vvcudK8rN.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Hanifi Rohingya" - }, - { - "src": "http://fonts.gstatic.com/s/notosanshanifirohingya/v26/5h17iYsoOmIC3Yu3MDXLDw3UZCgghyOEBBY7hhLNyo3tiaiuSIAqrIYq4j6vvcudK8rN.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Hanifi Rohingya" - }, - { - "src": "http://fonts.gstatic.com/s/notosanshanifirohingya/v26/5h17iYsoOmIC3Yu3MDXLDw3UZCgghyOEBBY7hhLNyo3tiaiuSIAqrIbG5T6vvcudK8rN.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Hanifi Rohingya" - }, - { - "src": "http://fonts.gstatic.com/s/notosanshanifirohingya/v26/5h17iYsoOmIC3Yu3MDXLDw3UZCgghyOEBBY7hhLNyo3tiaiuSIAqrIb_5T6vvcudK8rN.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Hanifi Rohingya" - } - ] - }, - { - "name": "Noto Sans Hanunoo", - "fontFamily": "Noto Sans Hanunoo, sans-serif", - "slug": "noto-sans-hanunoo", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanshanunoo/v17/f0Xs0fCv8dxkDWlZSoXOj6CphMloFsEsEpgL_ix2.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Hanunoo" - } - ] - }, - { - "name": "Noto Sans Hatran", - "fontFamily": "Noto Sans Hatran, sans-serif", - "slug": "noto-sans-hatran", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanshatran/v15/A2BBn4Ne0RgnVF3Lnko-0sOBIfL_mM83r1nwzDs.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Hatran" - } - ] - }, - { - "name": "Noto Sans Hebrew", - "fontFamily": "Noto Sans Hebrew, sans-serif", - "slug": "noto-sans-hebrew", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanshebrew/v43/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiXd4utoiJltutR2g.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans Hebrew" - }, - { - "src": "http://fonts.gstatic.com/s/notosanshebrew/v43/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiX94qtoiJltutR2g.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Sans Hebrew" - }, - { - "src": "http://fonts.gstatic.com/s/notosanshebrew/v43/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiXKYqtoiJltutR2g.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans Hebrew" - }, - { - "src": "http://fonts.gstatic.com/s/notosanshebrew/v43/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiXd4qtoiJltutR2g.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Hebrew" - }, - { - "src": "http://fonts.gstatic.com/s/notosanshebrew/v43/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiXRYqtoiJltutR2g.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Hebrew" - }, - { - "src": "http://fonts.gstatic.com/s/notosanshebrew/v43/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiXqY2toiJltutR2g.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Hebrew" - }, - { - "src": "http://fonts.gstatic.com/s/notosanshebrew/v43/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiXkI2toiJltutR2g.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Hebrew" - }, - { - "src": "http://fonts.gstatic.com/s/notosanshebrew/v43/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiX942toiJltutR2g.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Sans Hebrew" - }, - { - "src": "http://fonts.gstatic.com/s/notosanshebrew/v43/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiX3o2toiJltutR2g.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans Hebrew" - } - ] - }, - { - "name": "Noto Sans Imperial Aramaic", - "fontFamily": "Noto Sans Imperial Aramaic, sans-serif", - "slug": "noto-sans-imperial-aramaic", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansimperialaramaic/v15/a8IMNpjwKmHXpgXbMIsbTc_kvks91LlLetBr5itQrtdml3YfPNno.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Imperial Aramaic" - } - ] - }, - { - "name": "Noto Sans Indic Siyaq Numbers", - "fontFamily": "Noto Sans Indic Siyaq Numbers, sans-serif", - "slug": "noto-sans-indic-siyaq-numbers", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansindicsiyaqnumbers/v15/6xK5dTJFKcWIu4bpRBjRZRpsIYHabOeZ8UZLubTzpXNHKx2WPOpVd5Iu.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Indic Siyaq Numbers" - } - ] - }, - { - "name": "Noto Sans Inscriptional Pahlavi", - "fontFamily": "Noto Sans Inscriptional Pahlavi, sans-serif", - "slug": "noto-sans-inscriptional-pahlavi", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansinscriptionalpahlavi/v15/ll8UK3GaVDuxR-TEqFPIbsR79Xxz9WEKbwsjpz7VklYlC7FCVtqVOAYK0QA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Inscriptional Pahlavi" - } - ] - }, - { - "name": "Noto Sans Inscriptional Parthian", - "fontFamily": "Noto Sans Inscriptional Parthian, sans-serif", - "slug": "noto-sans-inscriptional-parthian", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansinscriptionalparthian/v16/k3k7o-IMPvpLmixcA63oYi-yStDkgXuXncL7dzfW3P4TAJ2yklBJ2jNkLlLr.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Inscriptional Parthian" - } - ] - }, - { - "name": "Noto Sans JP", - "fontFamily": "Noto Sans JP, sans-serif", - "slug": "noto-sans-jp", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansjp/v52/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFBEi75vY0rw-oME.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans JP" - }, - { - "src": "http://fonts.gstatic.com/s/notosansjp/v52/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFJEj75vY0rw-oME.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Sans JP" - }, - { - "src": "http://fonts.gstatic.com/s/notosansjp/v52/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFE8j75vY0rw-oME.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans JP" - }, - { - "src": "http://fonts.gstatic.com/s/notosansjp/v52/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFBEj75vY0rw-oME.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans JP" - }, - { - "src": "http://fonts.gstatic.com/s/notosansjp/v52/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFCMj75vY0rw-oME.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans JP" - }, - { - "src": "http://fonts.gstatic.com/s/notosansjp/v52/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFM8k75vY0rw-oME.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans JP" - }, - { - "src": "http://fonts.gstatic.com/s/notosansjp/v52/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFPYk75vY0rw-oME.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans JP" - }, - { - "src": "http://fonts.gstatic.com/s/notosansjp/v52/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFJEk75vY0rw-oME.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Sans JP" - }, - { - "src": "http://fonts.gstatic.com/s/notosansjp/v52/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFLgk75vY0rw-oME.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans JP" - } - ] - }, - { - "name": "Noto Sans Javanese", - "fontFamily": "Noto Sans Javanese, sans-serif", - "slug": "noto-sans-javanese", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansjavanese/v21/2V01KJkDAIA6Hp4zoSScDjV0Y-eoHAHT-Z3MngEefiidxJnkFFliZYWj4O8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Javanese" - }, - { - "src": "http://fonts.gstatic.com/s/notosansjavanese/v21/2V01KJkDAIA6Hp4zoSScDjV0Y-eoHAHT-Z3MngEefiidxKvkFFliZYWj4O8.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Javanese" - }, - { - "src": "http://fonts.gstatic.com/s/notosansjavanese/v21/2V01KJkDAIA6Hp4zoSScDjV0Y-eoHAHT-Z3MngEefiidxEfjFFliZYWj4O8.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Javanese" - }, - { - "src": "http://fonts.gstatic.com/s/notosansjavanese/v21/2V01KJkDAIA6Hp4zoSScDjV0Y-eoHAHT-Z3MngEefiidxH7jFFliZYWj4O8.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Javanese" - } - ] - }, - { - "name": "Noto Sans KR", - "fontFamily": "Noto Sans KR, sans-serif", - "slug": "noto-sans-kr", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanskr/v27/Pby6FmXiEBPT4ITbgNA5CgmOsn7uwpYcuH8y.otf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans KR" - }, - { - "src": "http://fonts.gstatic.com/s/notosanskr/v27/Pby7FmXiEBPT4ITbgNA5CgmOelzI7rgQsWYrzw.otf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans KR" - }, - { - "src": "http://fonts.gstatic.com/s/notosanskr/v27/PbykFmXiEBPT4ITbgNA5Cgm20HTs4JMMuA.otf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans KR" - }, - { - "src": "http://fonts.gstatic.com/s/notosanskr/v27/Pby7FmXiEBPT4ITbgNA5CgmOIl3I7rgQsWYrzw.otf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans KR" - }, - { - "src": "http://fonts.gstatic.com/s/notosanskr/v27/Pby7FmXiEBPT4ITbgNA5CgmOalvI7rgQsWYrzw.otf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans KR" - }, - { - "src": "http://fonts.gstatic.com/s/notosanskr/v27/Pby7FmXiEBPT4ITbgNA5CgmOUlnI7rgQsWYrzw.otf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans KR" - } - ] - }, - { - "name": "Noto Sans Kaithi", - "fontFamily": "Noto Sans Kaithi, sans-serif", - "slug": "noto-sans-kaithi", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanskaithi/v16/buEtppS9f8_vkXadMBJJu0tWjLwjQi0KdoZIKlo.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Kaithi" - } - ] - }, - { - "name": "Noto Sans Kannada", - "fontFamily": "Noto Sans Kannada, sans-serif", - "slug": "noto-sans-kannada", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanskannada/v26/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrDvMzSIMLsPKrkY.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans Kannada" - }, - { - "src": "http://fonts.gstatic.com/s/notosanskannada/v26/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrLvNzSIMLsPKrkY.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Sans Kannada" - }, - { - "src": "http://fonts.gstatic.com/s/notosanskannada/v26/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrGXNzSIMLsPKrkY.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans Kannada" - }, - { - "src": "http://fonts.gstatic.com/s/notosanskannada/v26/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrDvNzSIMLsPKrkY.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Kannada" - }, - { - "src": "http://fonts.gstatic.com/s/notosanskannada/v26/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrAnNzSIMLsPKrkY.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Kannada" - }, - { - "src": "http://fonts.gstatic.com/s/notosanskannada/v26/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrOXKzSIMLsPKrkY.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Kannada" - }, - { - "src": "http://fonts.gstatic.com/s/notosanskannada/v26/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrNzKzSIMLsPKrkY.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Kannada" - }, - { - "src": "http://fonts.gstatic.com/s/notosanskannada/v26/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrLvKzSIMLsPKrkY.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Sans Kannada" - }, - { - "src": "http://fonts.gstatic.com/s/notosanskannada/v26/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrJLKzSIMLsPKrkY.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans Kannada" - } - ] - }, - { - "name": "Noto Sans Kayah Li", - "fontFamily": "Noto Sans Kayah Li, sans-serif", - "slug": "noto-sans-kayah-li", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanskayahli/v20/B50nF61OpWTRcGrhOVJJwOMXdca6Yecki3E06x2jVTX3WCc3CZH4EXLuKVM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Kayah Li" - }, - { - "src": "http://fonts.gstatic.com/s/notosanskayahli/v20/B50nF61OpWTRcGrhOVJJwOMXdca6Yecki3E06x2jVTX3WBU3CZH4EXLuKVM.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Kayah Li" - }, - { - "src": "http://fonts.gstatic.com/s/notosanskayahli/v20/B50nF61OpWTRcGrhOVJJwOMXdca6Yecki3E06x2jVTX3WPkwCZH4EXLuKVM.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Kayah Li" - }, - { - "src": "http://fonts.gstatic.com/s/notosanskayahli/v20/B50nF61OpWTRcGrhOVJJwOMXdca6Yecki3E06x2jVTX3WMAwCZH4EXLuKVM.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Kayah Li" - } - ] - }, - { - "name": "Noto Sans Kharoshthi", - "fontFamily": "Noto Sans Kharoshthi, sans-serif", - "slug": "noto-sans-kharoshthi", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanskharoshthi/v16/Fh4qPiLjKS30-P4-pGMMXCCfvkc5Vd7KE5z4rFyx5mR1.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Kharoshthi" - } - ] - }, - { - "name": "Noto Sans Khmer", - "fontFamily": "Noto Sans Khmer, sans-serif", - "slug": "noto-sans-khmer", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanskhmer/v23/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYuNAZz4kAbrddiA.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans Khmer" - }, - { - "src": "http://fonts.gstatic.com/s/notosanskhmer/v23/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYsNAJz4kAbrddiA.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Sans Khmer" - }, - { - "src": "http://fonts.gstatic.com/s/notosanskhmer/v23/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYvTAJz4kAbrddiA.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans Khmer" - }, - { - "src": "http://fonts.gstatic.com/s/notosanskhmer/v23/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYuNAJz4kAbrddiA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Khmer" - }, - { - "src": "http://fonts.gstatic.com/s/notosanskhmer/v23/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYu_AJz4kAbrddiA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Khmer" - }, - { - "src": "http://fonts.gstatic.com/s/notosanskhmer/v23/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYtTB5z4kAbrddiA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Khmer" - }, - { - "src": "http://fonts.gstatic.com/s/notosanskhmer/v23/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYtqB5z4kAbrddiA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Khmer" - }, - { - "src": "http://fonts.gstatic.com/s/notosanskhmer/v23/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYsNB5z4kAbrddiA.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Sans Khmer" - }, - { - "src": "http://fonts.gstatic.com/s/notosanskhmer/v23/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYskB5z4kAbrddiA.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans Khmer" - } - ] - }, - { - "name": "Noto Sans Khojki", - "fontFamily": "Noto Sans Khojki, sans-serif", - "slug": "noto-sans-khojki", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanskhojki/v16/-nFnOHM29Oofr2wohFbTuPPKVWpmK_d709jy92k.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Khojki" - } - ] - }, - { - "name": "Noto Sans Khudawadi", - "fontFamily": "Noto Sans Khudawadi, sans-serif", - "slug": "noto-sans-khudawadi", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanskhudawadi/v16/fdNi9t6ZsWBZ2k5ltHN73zZ5hc8HANlHIjRnVVXz9MY.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Khudawadi" - } - ] - }, - { - "name": "Noto Sans Lao", - "fontFamily": "Noto Sans Lao, sans-serif", - "slug": "noto-sans-lao", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanslao/v24/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt4ccfdf5MK3riB2w.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans Lao" - }, - { - "src": "http://fonts.gstatic.com/s/notosanslao/v24/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt48cbdf5MK3riB2w.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Sans Lao" - }, - { - "src": "http://fonts.gstatic.com/s/notosanslao/v24/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt4L8bdf5MK3riB2w.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans Lao" - }, - { - "src": "http://fonts.gstatic.com/s/notosanslao/v24/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt4ccbdf5MK3riB2w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Lao" - }, - { - "src": "http://fonts.gstatic.com/s/notosanslao/v24/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt4Q8bdf5MK3riB2w.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Lao" - }, - { - "src": "http://fonts.gstatic.com/s/notosanslao/v24/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt4r8Hdf5MK3riB2w.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Lao" - }, - { - "src": "http://fonts.gstatic.com/s/notosanslao/v24/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt4lsHdf5MK3riB2w.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Lao" - }, - { - "src": "http://fonts.gstatic.com/s/notosanslao/v24/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt48cHdf5MK3riB2w.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Sans Lao" - }, - { - "src": "http://fonts.gstatic.com/s/notosanslao/v24/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt42MHdf5MK3riB2w.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans Lao" - } - ] - }, - { - "name": "Noto Sans Lao Looped", - "fontFamily": "Noto Sans Lao Looped, sans-serif", - "slug": "noto-sans-lao-looped", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanslaolooped/v5/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomPr2M-Zw5V_T71k.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans Lao Looped" - }, - { - "src": "http://fonts.gstatic.com/s/notosanslaolooped/v5/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomHr3M-Zw5V_T71k.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Sans Lao Looped" - }, - { - "src": "http://fonts.gstatic.com/s/notosanslaolooped/v5/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomKT3M-Zw5V_T71k.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans Lao Looped" - }, - { - "src": "http://fonts.gstatic.com/s/notosanslaolooped/v5/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomPr3M-Zw5V_T71k.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Lao Looped" - }, - { - "src": "http://fonts.gstatic.com/s/notosanslaolooped/v5/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomMj3M-Zw5V_T71k.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Lao Looped" - }, - { - "src": "http://fonts.gstatic.com/s/notosanslaolooped/v5/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomCTwM-Zw5V_T71k.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Lao Looped" - }, - { - "src": "http://fonts.gstatic.com/s/notosanslaolooped/v5/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomB3wM-Zw5V_T71k.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Lao Looped" - }, - { - "src": "http://fonts.gstatic.com/s/notosanslaolooped/v5/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomHrwM-Zw5V_T71k.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Sans Lao Looped" - }, - { - "src": "http://fonts.gstatic.com/s/notosanslaolooped/v5/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomFPwM-Zw5V_T71k.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans Lao Looped" - } - ] - }, - { - "name": "Noto Sans Lepcha", - "fontFamily": "Noto Sans Lepcha, sans-serif", - "slug": "noto-sans-lepcha", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanslepcha/v16/0QI7MWlB_JWgA166SKhu05TekNS32AJstqBXgd4.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Lepcha" - } - ] - }, - { - "name": "Noto Sans Limbu", - "fontFamily": "Noto Sans Limbu, sans-serif", - "slug": "noto-sans-limbu", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanslimbu/v22/3JnlSDv90Gmq2mrzckOBBRRoNJVj0MF3OHRDnA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Limbu" - } - ] - }, - { - "name": "Noto Sans Linear A", - "fontFamily": "Noto Sans Linear A, sans-serif", - "slug": "noto-sans-linear-a", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanslineara/v16/oPWS_l16kP4jCuhpgEGmwJOiA18FZj22zmHQAGQicw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Linear A" - } - ] - }, - { - "name": "Noto Sans Linear B", - "fontFamily": "Noto Sans Linear B, sans-serif", - "slug": "noto-sans-linear-b", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanslinearb/v15/HhyJU4wt9vSgfHoORYOiXOckKNB737IV3BkFTq4EPw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Linear B" - } - ] - }, - { - "name": "Noto Sans Lisu", - "fontFamily": "Noto Sans Lisu, sans-serif", - "slug": "noto-sans-lisu", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanslisu/v25/uk-3EGO3o6EruUbnwovcYhz6kh57_nqbcTdjJnHP2Vwt29IlxkVdig.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Lisu" - }, - { - "src": "http://fonts.gstatic.com/s/notosanslisu/v25/uk-3EGO3o6EruUbnwovcYhz6kh57_nqbcTdjJnHP61wt29IlxkVdig.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Lisu" - }, - { - "src": "http://fonts.gstatic.com/s/notosanslisu/v25/uk-3EGO3o6EruUbnwovcYhz6kh57_nqbcTdjJnHPB1st29IlxkVdig.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Lisu" - }, - { - "src": "http://fonts.gstatic.com/s/notosanslisu/v25/uk-3EGO3o6EruUbnwovcYhz6kh57_nqbcTdjJnHPPlst29IlxkVdig.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Lisu" - } - ] - }, - { - "name": "Noto Sans Lycian", - "fontFamily": "Noto Sans Lycian, sans-serif", - "slug": "noto-sans-lycian", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanslycian/v15/QldVNSNMqAsHtsJ7UmqxBQA9r8wA5_naCJwn00E.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Lycian" - } - ] - }, - { - "name": "Noto Sans Lydian", - "fontFamily": "Noto Sans Lydian, sans-serif", - "slug": "noto-sans-lydian", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanslydian/v15/c4m71mVzGN7s8FmIukZJ1v4ZlcPReUPXMoIjEQI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Lydian" - } - ] - }, - { - "name": "Noto Sans Mahajani", - "fontFamily": "Noto Sans Mahajani, sans-serif", - "slug": "noto-sans-mahajani", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansmahajani/v15/-F6sfiVqLzI2JPCgQBnw60Agp0JrvD5Fh8ARHNh4zg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Mahajani" - } - ] - }, - { - "name": "Noto Sans Malayalam", - "fontFamily": "Noto Sans Malayalam, sans-serif", - "slug": "noto-sans-malayalam", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansmalayalam/v26/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_RuH9BFzEr6HxEA.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans Malayalam" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmalayalam/v26/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_xuD9BFzEr6HxEA.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Sans Malayalam" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmalayalam/v26/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_GOD9BFzEr6HxEA.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans Malayalam" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmalayalam/v26/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_RuD9BFzEr6HxEA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Malayalam" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmalayalam/v26/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_dOD9BFzEr6HxEA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Malayalam" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmalayalam/v26/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_mOf9BFzEr6HxEA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Malayalam" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmalayalam/v26/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_oef9BFzEr6HxEA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Malayalam" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmalayalam/v26/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_xuf9BFzEr6HxEA.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Sans Malayalam" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmalayalam/v26/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_7-f9BFzEr6HxEA.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans Malayalam" - } - ] - }, - { - "name": "Noto Sans Mandaic", - "fontFamily": "Noto Sans Mandaic, sans-serif", - "slug": "noto-sans-mandaic", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansmandaic/v15/cIfnMbdWt1w_HgCcilqhKQBo_OsMI5_A_gMk0izH.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Mandaic" - } - ] - }, - { - "name": "Noto Sans Manichaean", - "fontFamily": "Noto Sans Manichaean, sans-serif", - "slug": "noto-sans-manichaean", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansmanichaean/v15/taiVGntiC4--qtsfi4Jp9-_GkPZZCcrfekqCNTtFCtdX.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Manichaean" - } - ] - }, - { - "name": "Noto Sans Marchen", - "fontFamily": "Noto Sans Marchen, sans-serif", - "slug": "noto-sans-marchen", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansmarchen/v17/aFTO7OZ_Y282EP-WyG6QTOX_C8WZMHhPk652ZaHk.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Marchen" - } - ] - }, - { - "name": "Noto Sans Masaram Gondi", - "fontFamily": "Noto Sans Masaram Gondi, sans-serif", - "slug": "noto-sans-masaram-gondi", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansmasaramgondi/v17/6xK_dThFKcWIu4bpRBjRYRV7KZCbUq6n_1kPnuGe7RI9WSWX.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Masaram Gondi" - } - ] - }, - { - "name": "Noto Sans Math", - "fontFamily": "Noto Sans Math, sans-serif", - "slug": "noto-sans-math", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansmath/v15/7Aump_cpkSecTWaHRlH2hyV5UHkG-V048PW0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Math" - } - ] - }, - { - "name": "Noto Sans Mayan Numerals", - "fontFamily": "Noto Sans Mayan Numerals, sans-serif", - "slug": "noto-sans-mayan-numerals", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansmayannumerals/v15/PlIuFk25O6RzLfvNNVSivR09_KqYMwvvDKYjfIiE68oo6eepYQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Mayan Numerals" - } - ] - }, - { - "name": "Noto Sans Medefaidrin", - "fontFamily": "Noto Sans Medefaidrin, sans-serif", - "slug": "noto-sans-medefaidrin", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansmedefaidrin/v22/WwkzxOq6Dk-wranENynkfeVsNbRZtbOIdLb1exeM4ZeuabBfmErWlT318e5A3rw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Medefaidrin" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmedefaidrin/v22/WwkzxOq6Dk-wranENynkfeVsNbRZtbOIdLb1exeM4ZeuabBfmHjWlT318e5A3rw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Medefaidrin" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmedefaidrin/v22/WwkzxOq6Dk-wranENynkfeVsNbRZtbOIdLb1exeM4ZeuabBfmJTRlT318e5A3rw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Medefaidrin" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmedefaidrin/v22/WwkzxOq6Dk-wranENynkfeVsNbRZtbOIdLb1exeM4ZeuabBfmK3RlT318e5A3rw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Medefaidrin" - } - ] - }, - { - "name": "Noto Sans Meetei Mayek", - "fontFamily": "Noto Sans Meetei Mayek, sans-serif", - "slug": "noto-sans-meetei-mayek", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansmeeteimayek/v14/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1TJ__TW5PgeFYVa.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans Meetei Mayek" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmeeteimayek/v14/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1RJ_vTW5PgeFYVa.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Sans Meetei Mayek" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmeeteimayek/v14/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1SX_vTW5PgeFYVa.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans Meetei Mayek" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmeeteimayek/v14/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1TJ_vTW5PgeFYVa.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Meetei Mayek" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmeeteimayek/v14/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1T7_vTW5PgeFYVa.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Meetei Mayek" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmeeteimayek/v14/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1QX-fTW5PgeFYVa.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Meetei Mayek" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmeeteimayek/v14/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1Qu-fTW5PgeFYVa.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Meetei Mayek" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmeeteimayek/v14/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1RJ-fTW5PgeFYVa.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Sans Meetei Mayek" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmeeteimayek/v14/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1Rg-fTW5PgeFYVa.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans Meetei Mayek" - } - ] - }, - { - "name": "Noto Sans Mende Kikakui", - "fontFamily": "Noto Sans Mende Kikakui, sans-serif", - "slug": "noto-sans-mende-kikakui", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansmendekikakui/v28/11hRGoLHz17aKjQCWj-JHcLvu2Q5zZrnkbNCLUx_aDJLAHer.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Mende Kikakui" - } - ] - }, - { - "name": "Noto Sans Meroitic", - "fontFamily": "Noto Sans Meroitic, sans-serif", - "slug": "noto-sans-meroitic", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansmeroitic/v16/IFS5HfRJndhE3P4b5jnZ3ITPvC6i00UDgDhTiKY9KQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Meroitic" - } - ] - }, - { - "name": "Noto Sans Miao", - "fontFamily": "Noto Sans Miao, sans-serif", - "slug": "noto-sans-miao", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansmiao/v17/Dxxz8jmXMW75w3OmoDXVV4zyZUjgUYVslLhx.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Miao" - } - ] - }, - { - "name": "Noto Sans Modi", - "fontFamily": "Noto Sans Modi, sans-serif", - "slug": "noto-sans-modi", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansmodi/v20/pe03MIySN5pO62Z5YkFyT7jeav5qWVAgVol-.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Modi" - } - ] - }, - { - "name": "Noto Sans Mongolian", - "fontFamily": "Noto Sans Mongolian, sans-serif", - "slug": "noto-sans-mongolian", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansmongolian/v17/VdGCAYADGIwE0EopZx8xQfHlgEAMsrToxLsg6-av1x0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Mongolian" - } - ] - }, - { - "name": "Noto Sans Mono", - "fontFamily": "Noto Sans Mono, monospace", - "slug": "noto-sans-mono", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansmono/v27/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_FNI49rXVEQQL8Y.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans Mono" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmono/v27/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_NNJ49rXVEQQL8Y.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Sans Mono" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmono/v27/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_A1J49rXVEQQL8Y.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans Mono" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmono/v27/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_FNJ49rXVEQQL8Y.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Mono" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmono/v27/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_GFJ49rXVEQQL8Y.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Mono" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmono/v27/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_I1O49rXVEQQL8Y.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Mono" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmono/v27/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_LRO49rXVEQQL8Y.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Mono" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmono/v27/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_NNO49rXVEQQL8Y.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Sans Mono" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmono/v27/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_PpO49rXVEQQL8Y.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans Mono" - } - ] - }, - { - "name": "Noto Sans Mro", - "fontFamily": "Noto Sans Mro, sans-serif", - "slug": "noto-sans-mro", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansmro/v18/qWcsB6--pZv9TqnUQMhe9b39WDzRtjkho4M.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Mro" - } - ] - }, - { - "name": "Noto Sans Multani", - "fontFamily": "Noto Sans Multani, sans-serif", - "slug": "noto-sans-multani", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansmultani/v20/9Bty3ClF38_RfOpe1gCaZ8p30BOFO1A0pfCs5Kos.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Multani" - } - ] - }, - { - "name": "Noto Sans Myanmar", - "fontFamily": "Noto Sans Myanmar, sans-serif", - "slug": "noto-sans-myanmar", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansmyanmar/v20/AlZs_y1ZtY3ymOryg38hOCSdOnFq0HGS1uEapkAC3AY.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans Myanmar" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmyanmar/v20/AlZv_y1ZtY3ymOryg38hOCSdOnFq0HE-98EwiEwLxR-r.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Sans Myanmar" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmyanmar/v20/AlZv_y1ZtY3ymOryg38hOCSdOnFq0HFa9MEwiEwLxR-r.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans Myanmar" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmyanmar/v20/AlZq_y1ZtY3ymOryg38hOCSdOnFq0En23OU4o1AC.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Myanmar" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmyanmar/v20/AlZv_y1ZtY3ymOryg38hOCSdOnFq0HEC9cEwiEwLxR-r.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Myanmar" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmyanmar/v20/AlZv_y1ZtY3ymOryg38hOCSdOnFq0HEu8sEwiEwLxR-r.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Myanmar" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmyanmar/v20/AlZv_y1ZtY3ymOryg38hOCSdOnFq0HFK88EwiEwLxR-r.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Myanmar" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmyanmar/v20/AlZv_y1ZtY3ymOryg38hOCSdOnFq0HFW8MEwiEwLxR-r.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Sans Myanmar" - }, - { - "src": "http://fonts.gstatic.com/s/notosansmyanmar/v20/AlZv_y1ZtY3ymOryg38hOCSdOnFq0HFy8cEwiEwLxR-r.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans Myanmar" - } - ] - }, - { - "name": "Noto Sans NKo", - "fontFamily": "Noto Sans NKo, sans-serif", - "slug": "noto-sans-nko", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansnko/v2/esDX31ZdNv-KYGGJpKGk2_RpMpCMHMLBrdA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans NKo" - } - ] - }, - { - "name": "Noto Sans Nabataean", - "fontFamily": "Noto Sans Nabataean, sans-serif", - "slug": "noto-sans-nabataean", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansnabataean/v15/IFS4HfVJndhE3P4b5jnZ34DfsjO330dNoBJ9hK8kMK4.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Nabataean" - } - ] - }, - { - "name": "Noto Sans Nag Mundari", - "fontFamily": "Noto Sans Nag Mundari, sans-serif", - "slug": "noto-sans-nag-mundari", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansnagmundari/v1/3qTAoi2hnSyU8TNFIdhZTyod3g5lBnKlQFk2kS9fr9Eq09RHRxirbUGA0whP19M.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Nag Mundari" - }, - { - "src": "http://fonts.gstatic.com/s/notosansnagmundari/v1/3qTAoi2hnSyU8TNFIdhZTyod3g5lBnKlQFk2kS9fr9Eq09RHRyqrbUGA0whP19M.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Nag Mundari" - }, - { - "src": "http://fonts.gstatic.com/s/notosansnagmundari/v1/3qTAoi2hnSyU8TNFIdhZTyod3g5lBnKlQFk2kS9fr9Eq09RHR8asbUGA0whP19M.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Nag Mundari" - }, - { - "src": "http://fonts.gstatic.com/s/notosansnagmundari/v1/3qTAoi2hnSyU8TNFIdhZTyod3g5lBnKlQFk2kS9fr9Eq09RHR_-sbUGA0whP19M.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Nag Mundari" - } - ] - }, - { - "name": "Noto Sans Nandinagari", - "fontFamily": "Noto Sans Nandinagari, sans-serif", - "slug": "noto-sans-nandinagari", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansnandinagari/v3/or38Q7733eiDljA1IufXSNFT-1KI5y10H4jVa5RXzC1KOw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Nandinagari" - } - ] - }, - { - "name": "Noto Sans New Tai Lue", - "fontFamily": "Noto Sans New Tai Lue, sans-serif", - "slug": "noto-sans-new-tai-lue", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansnewtailue/v20/H4cKBW-Pl9DZ0Xe_nHUapt7PovLXAhAnY7wqaLy-OJgU3p_pdeXAYUbghFPKzeY.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans New Tai Lue" - }, - { - "src": "http://fonts.gstatic.com/s/notosansnewtailue/v20/H4cKBW-Pl9DZ0Xe_nHUapt7PovLXAhAnY7wqaLy-OJgU3p_pddfAYUbghFPKzeY.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans New Tai Lue" - }, - { - "src": "http://fonts.gstatic.com/s/notosansnewtailue/v20/H4cKBW-Pl9DZ0Xe_nHUapt7PovLXAhAnY7wqaLy-OJgU3p_pdTvHYUbghFPKzeY.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans New Tai Lue" - }, - { - "src": "http://fonts.gstatic.com/s/notosansnewtailue/v20/H4cKBW-Pl9DZ0Xe_nHUapt7PovLXAhAnY7wqaLy-OJgU3p_pdQLHYUbghFPKzeY.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans New Tai Lue" - } - ] - }, - { - "name": "Noto Sans Newa", - "fontFamily": "Noto Sans Newa, sans-serif", - "slug": "noto-sans-newa", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansnewa/v16/7r3fqXp6utEsO9pI4f8ok8sWg8n_qN4R5lNU.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Newa" - } - ] - }, - { - "name": "Noto Sans Nushu", - "fontFamily": "Noto Sans Nushu, sans-serif", - "slug": "noto-sans-nushu", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansnushu/v19/rnCw-xRQ3B7652emAbAe_Ai1IYaFWFAMArZKqQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Nushu" - } - ] - }, - { - "name": "Noto Sans Ogham", - "fontFamily": "Noto Sans Ogham, sans-serif", - "slug": "noto-sans-ogham", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansogham/v15/kmKlZqk1GBDGN0mY6k5lmEmww4hrt5laQxcoCA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Ogham" - } - ] - }, - { - "name": "Noto Sans Ol Chiki", - "fontFamily": "Noto Sans Ol Chiki, sans-serif", - "slug": "noto-sans-ol-chiki", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansolchiki/v21/N0b92TJNOPt-eHmFZCdQbrL32r-4CvhzDzRwlxOQYuVALWk267I6gVrz5gQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Ol Chiki" - }, - { - "src": "http://fonts.gstatic.com/s/notosansolchiki/v21/N0b92TJNOPt-eHmFZCdQbrL32r-4CvhzDzRwlxOQYuVALVs267I6gVrz5gQ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Ol Chiki" - }, - { - "src": "http://fonts.gstatic.com/s/notosansolchiki/v21/N0b92TJNOPt-eHmFZCdQbrL32r-4CvhzDzRwlxOQYuVALbcx67I6gVrz5gQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Ol Chiki" - }, - { - "src": "http://fonts.gstatic.com/s/notosansolchiki/v21/N0b92TJNOPt-eHmFZCdQbrL32r-4CvhzDzRwlxOQYuVALY4x67I6gVrz5gQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Ol Chiki" - } - ] - }, - { - "name": "Noto Sans Old Hungarian", - "fontFamily": "Noto Sans Old Hungarian, sans-serif", - "slug": "noto-sans-old-hungarian", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansoldhungarian/v15/E213_cD6hP3GwCJPEUssHEM0KqLaHJXg2PiIgRfjbg5nCYXt.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Old Hungarian" - } - ] - }, - { - "name": "Noto Sans Old Italic", - "fontFamily": "Noto Sans Old Italic, sans-serif", - "slug": "noto-sans-old-italic", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansolditalic/v15/TuGOUUFzXI5FBtUq5a8bh68BJxxEVam7tWlRdRhtCC4d.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Old Italic" - } - ] - }, - { - "name": "Noto Sans Old North Arabian", - "fontFamily": "Noto Sans Old North Arabian, sans-serif", - "slug": "noto-sans-old-north-arabian", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansoldnortharabian/v15/esDF30BdNv-KYGGJpKGk2tNiMt7Jar6olZDyNdr81zBQmUo_xw4ABw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Old North Arabian" - } - ] - }, - { - "name": "Noto Sans Old Permic", - "fontFamily": "Noto Sans Old Permic, sans-serif", - "slug": "noto-sans-old-permic", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansoldpermic/v16/snf1s1q1-dF8pli1TesqcbUY4Mr-ElrwKLdXgv_dKYB5.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Old Permic" - } - ] - }, - { - "name": "Noto Sans Old Persian", - "fontFamily": "Noto Sans Old Persian, sans-serif", - "slug": "noto-sans-old-persian", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansoldpersian/v15/wEOjEAbNnc5caQTFG18FHrZr9Bp6-8CmIJ_tqOlQfx9CjA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Old Persian" - } - ] - }, - { - "name": "Noto Sans Old Sogdian", - "fontFamily": "Noto Sans Old Sogdian, sans-serif", - "slug": "noto-sans-old-sogdian", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansoldsogdian/v15/3JnjSCH90Gmq2mrzckOBBhFhdrMst48aURt7neIqM-9uyg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Old Sogdian" - } - ] - }, - { - "name": "Noto Sans Old South Arabian", - "fontFamily": "Noto Sans Old South Arabian, sans-serif", - "slug": "noto-sans-old-south-arabian", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansoldsoutharabian/v15/3qT5oiOhnSyU8TNFIdhZTice3hB_HWKsEnF--0XCHiKx1OtDT9HwTA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Old South Arabian" - } - ] - }, - { - "name": "Noto Sans Old Turkic", - "fontFamily": "Noto Sans Old Turkic, sans-serif", - "slug": "noto-sans-old-turkic", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansoldturkic/v15/yMJNMJVya43H0SUF_WmcGEQVqoEMKDKbsE2RjEw-Vyws.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Old Turkic" - } - ] - }, - { - "name": "Noto Sans Oriya", - "fontFamily": "Noto Sans Oriya, sans-serif", - "slug": "noto-sans-oriya", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansoriya/v27/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5Ivj0fq_c6LhHBRe-.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans Oriya" - }, - { - "src": "http://fonts.gstatic.com/s/notosansoriya/v27/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5Ivh0f6_c6LhHBRe-.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Sans Oriya" - }, - { - "src": "http://fonts.gstatic.com/s/notosansoriya/v27/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5Iviqf6_c6LhHBRe-.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans Oriya" - }, - { - "src": "http://fonts.gstatic.com/s/notosansoriya/v27/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5Ivj0f6_c6LhHBRe-.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Oriya" - }, - { - "src": "http://fonts.gstatic.com/s/notosansoriya/v27/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5IvjGf6_c6LhHBRe-.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Oriya" - }, - { - "src": "http://fonts.gstatic.com/s/notosansoriya/v27/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5IvgqeK_c6LhHBRe-.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Oriya" - }, - { - "src": "http://fonts.gstatic.com/s/notosansoriya/v27/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5IvgTeK_c6LhHBRe-.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Oriya" - }, - { - "src": "http://fonts.gstatic.com/s/notosansoriya/v27/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5Ivh0eK_c6LhHBRe-.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Sans Oriya" - }, - { - "src": "http://fonts.gstatic.com/s/notosansoriya/v27/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5IvhdeK_c6LhHBRe-.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans Oriya" - } - ] - }, - { - "name": "Noto Sans Osage", - "fontFamily": "Noto Sans Osage, sans-serif", - "slug": "noto-sans-osage", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansosage/v18/oPWX_kB6kP4jCuhpgEGmw4mtAVtXRlaSxkrMCQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Osage" - } - ] - }, - { - "name": "Noto Sans Osmanya", - "fontFamily": "Noto Sans Osmanya, sans-serif", - "slug": "noto-sans-osmanya", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansosmanya/v18/8vIS7xs32H97qzQKnzfeWzUyUpOJmz6kR47NCV5Z.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Osmanya" - } - ] - }, - { - "name": "Noto Sans Pahawh Hmong", - "fontFamily": "Noto Sans Pahawh Hmong, sans-serif", - "slug": "noto-sans-pahawh-hmong", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanspahawhhmong/v18/bWtp7e_KfBziStx7lIzKKaMUOBEA3UPQDW7krzc_c48aMpM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Pahawh Hmong" - } - ] - }, - { - "name": "Noto Sans Palmyrene", - "fontFamily": "Noto Sans Palmyrene, sans-serif", - "slug": "noto-sans-palmyrene", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanspalmyrene/v15/ZgNPjOdKPa7CHqq0h37c_ASCWvH93SFCPnK5ZpdNtcA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Palmyrene" - } - ] - }, - { - "name": "Noto Sans Pau Cin Hau", - "fontFamily": "Noto Sans Pau Cin Hau, sans-serif", - "slug": "noto-sans-pau-cin-hau", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanspaucinhau/v20/x3d-cl3IZKmUqiMg_9wBLLtzl22EayN7ehIdjEWqKMxsKw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Pau Cin Hau" - } - ] - }, - { - "name": "Noto Sans Phags Pa", - "fontFamily": "Noto Sans Phags Pa, sans-serif", - "slug": "noto-sans-phags-pa", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansphagspa/v15/pxiZyoo6v8ZYyWh5WuPeJzMkd4SrGChkqkSsrvNXiA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Phags Pa" - } - ] - }, - { - "name": "Noto Sans Phoenician", - "fontFamily": "Noto Sans Phoenician, sans-serif", - "slug": "noto-sans-phoenician", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansphoenician/v15/jizFRF9Ksm4Bt9PvcTaEkIHiTVtxmFtS5X7Jot-p5561.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Phoenician" - } - ] - }, - { - "name": "Noto Sans Psalter Pahlavi", - "fontFamily": "Noto Sans Psalter Pahlavi, sans-serif", - "slug": "noto-sans-psalter-pahlavi", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanspsalterpahlavi/v15/rP2Vp3K65FkAtHfwd-eISGznYihzggmsicPfud3w1G3KsUQBct4.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Psalter Pahlavi" - } - ] - }, - { - "name": "Noto Sans Rejang", - "fontFamily": "Noto Sans Rejang, sans-serif", - "slug": "noto-sans-rejang", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansrejang/v18/Ktk2AKuMeZjqPnXgyqrib7DIogqwN4O3WYZB_sU.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Rejang" - } - ] - }, - { - "name": "Noto Sans Runic", - "fontFamily": "Noto Sans Runic, sans-serif", - "slug": "noto-sans-runic", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansrunic/v15/H4c_BXWPl9DZ0Xe_nHUaus7W68WWaxpvHtgIYg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Runic" - } - ] - }, - { - "name": "Noto Sans SC", - "fontFamily": "Noto Sans SC, sans-serif", - "slug": "noto-sans-sc", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanssc/v26/k3kJo84MPvpLmixcA63oeALZTYKL2wv287Sb.otf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans SC" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssc/v26/k3kIo84MPvpLmixcA63oeALZhaCt9yX6-q2CGg.otf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans SC" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssc/v26/k3kXo84MPvpLmixcA63oeALhL4iJ-Q7m8w.otf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans SC" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssc/v26/k3kIo84MPvpLmixcA63oeALZ3aGt9yX6-q2CGg.otf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans SC" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssc/v26/k3kIo84MPvpLmixcA63oeALZlaet9yX6-q2CGg.otf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans SC" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssc/v26/k3kIo84MPvpLmixcA63oeALZraWt9yX6-q2CGg.otf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans SC" - } - ] - }, - { - "name": "Noto Sans Samaritan", - "fontFamily": "Noto Sans Samaritan, sans-serif", - "slug": "noto-sans-samaritan", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanssamaritan/v15/buEqppe9f8_vkXadMBJJo0tSmaYjFkxOUo5jNlOVMzQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Samaritan" - } - ] - }, - { - "name": "Noto Sans Saurashtra", - "fontFamily": "Noto Sans Saurashtra, sans-serif", - "slug": "noto-sans-saurashtra", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanssaurashtra/v19/ea8GacQ0Wfz_XKWXe6OtoA8w8zvmYwTef9ndjhPTSIx9.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Saurashtra" - } - ] - }, - { - "name": "Noto Sans Sharada", - "fontFamily": "Noto Sans Sharada, sans-serif", - "slug": "noto-sans-sharada", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanssharada/v16/gok0H7rwAEdtF9N8-mdTGALG6p0kwoXLPOwr4H8a.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Sharada" - } - ] - }, - { - "name": "Noto Sans Shavian", - "fontFamily": "Noto Sans Shavian, sans-serif", - "slug": "noto-sans-shavian", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansshavian/v15/CHy5V_HZE0jxJBQlqAeCKjJvQBNF4EFQSplv2Cwg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Shavian" - } - ] - }, - { - "name": "Noto Sans Siddham", - "fontFamily": "Noto Sans Siddham, sans-serif", - "slug": "noto-sans-siddham", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanssiddham/v17/OZpZg-FwqiNLe9PELUikxTWDoCCeGqndk3Ic92ZH.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Siddham" - } - ] - }, - { - "name": "Noto Sans SignWriting", - "fontFamily": "Noto Sans SignWriting, sans-serif", - "slug": "noto-sans-signwriting", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanssignwriting/v1/Noas6VX_wIWFbTTCrYmvy9A2UnkL-2SZAWiUEVCARYQemg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans SignWriting" - } - ] - }, - { - "name": "Noto Sans Sinhala", - "fontFamily": "Noto Sans Sinhala, sans-serif", - "slug": "noto-sans-sinhala", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanssinhala/v26/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwg2b5lgLpJwbQRM.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans Sinhala" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssinhala/v26/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwo2a5lgLpJwbQRM.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Sans Sinhala" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssinhala/v26/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwlOa5lgLpJwbQRM.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans Sinhala" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssinhala/v26/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwg2a5lgLpJwbQRM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Sinhala" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssinhala/v26/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwj-a5lgLpJwbQRM.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Sinhala" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssinhala/v26/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwtOd5lgLpJwbQRM.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Sinhala" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssinhala/v26/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwuqd5lgLpJwbQRM.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Sinhala" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssinhala/v26/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwo2d5lgLpJwbQRM.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Sans Sinhala" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssinhala/v26/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwqSd5lgLpJwbQRM.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans Sinhala" - } - ] - }, - { - "name": "Noto Sans Sogdian", - "fontFamily": "Noto Sans Sogdian, sans-serif", - "slug": "noto-sans-sogdian", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanssogdian/v15/taiQGn5iC4--qtsfi4Jp6eHPnfxQBo--Pm6KHidM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Sogdian" - } - ] - }, - { - "name": "Noto Sans Sora Sompeng", - "fontFamily": "Noto Sans Sora Sompeng, sans-serif", - "slug": "noto-sans-sora-sompeng", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanssorasompeng/v24/PlIRFkO5O6RzLfvNNVSioxM2_OTrEhPyDLolKvCsHzCxWuGkYHR818DpZXJQd4Mu.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Sora Sompeng" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssorasompeng/v24/PlIRFkO5O6RzLfvNNVSioxM2_OTrEhPyDLolKvCsHzCxWuGkYHRO18DpZXJQd4Mu.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Sora Sompeng" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssorasompeng/v24/PlIRFkO5O6RzLfvNNVSioxM2_OTrEhPyDLolKvCsHzCxWuGkYHSi0MDpZXJQd4Mu.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Sora Sompeng" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssorasompeng/v24/PlIRFkO5O6RzLfvNNVSioxM2_OTrEhPyDLolKvCsHzCxWuGkYHSb0MDpZXJQd4Mu.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Sora Sompeng" - } - ] - }, - { - "name": "Noto Sans Soyombo", - "fontFamily": "Noto Sans Soyombo, sans-serif", - "slug": "noto-sans-soyombo", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanssoyombo/v15/RWmSoL-Y6-8q5LTtXs6MF6q7xsxgY0FrIFOcK25W.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Soyombo" - } - ] - }, - { - "name": "Noto Sans Sundanese", - "fontFamily": "Noto Sans Sundanese, sans-serif", - "slug": "noto-sans-sundanese", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanssundanese/v24/FwZw7_84xUkosG2xJo2gm7nFwSLQkdymq2mkz3Gz1_b6ctxpNNHCizv7fQES.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Sundanese" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssundanese/v24/FwZw7_84xUkosG2xJo2gm7nFwSLQkdymq2mkz3Gz1_b6ctxbNNHCizv7fQES.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Sundanese" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssundanese/v24/FwZw7_84xUkosG2xJo2gm7nFwSLQkdymq2mkz3Gz1_b6cty3M9HCizv7fQES.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Sundanese" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssundanese/v24/FwZw7_84xUkosG2xJo2gm7nFwSLQkdymq2mkz3Gz1_b6ctyOM9HCizv7fQES.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Sundanese" - } - ] - }, - { - "name": "Noto Sans Syloti Nagri", - "fontFamily": "Noto Sans Syloti Nagri, sans-serif", - "slug": "noto-sans-syloti-nagri", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanssylotinagri/v20/uU9eCAQZ75uhfF9UoWDRiY3q7Sf_VFV3m4dGFVfxN87gsj0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Syloti Nagri" - } - ] - }, - { - "name": "Noto Sans Symbols", - "fontFamily": "Noto Sans Symbols, sans-serif", - "slug": "noto-sans-symbols", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanssymbols/v40/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3gfQ4gavVFRkzrbQ.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans Symbols" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssymbols/v40/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3g_Q8gavVFRkzrbQ.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Sans Symbols" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssymbols/v40/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3gIw8gavVFRkzrbQ.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans Symbols" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssymbols/v40/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3gfQ8gavVFRkzrbQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Symbols" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssymbols/v40/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3gTw8gavVFRkzrbQ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Symbols" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssymbols/v40/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3gowggavVFRkzrbQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Symbols" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssymbols/v40/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3gmgggavVFRkzrbQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Symbols" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssymbols/v40/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3g_QggavVFRkzrbQ.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Sans Symbols" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssymbols/v40/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3g1AggavVFRkzrbQ.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans Symbols" - } - ] - }, - { - "name": "Noto Sans Symbols 2", - "fontFamily": "Noto Sans Symbols 2, sans-serif", - "slug": "noto-sans-symbols-2", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanssymbols2/v19/I_uyMoGduATTei9eI8daxVHDyfisHr71ypPqfX71-AI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Symbols 2" - } - ] - }, - { - "name": "Noto Sans Syriac", - "fontFamily": "Noto Sans Syriac, sans-serif", - "slug": "noto-sans-syriac", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanssyriac/v16/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-VD9caJyZfUL_FC.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans Syriac" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssyriac/v16/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-XD9MaJyZfUL_FC.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Sans Syriac" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssyriac/v16/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-Ud9MaJyZfUL_FC.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans Syriac" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssyriac/v16/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-VD9MaJyZfUL_FC.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Syriac" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssyriac/v16/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-Vx9MaJyZfUL_FC.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Syriac" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssyriac/v16/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-Wd88aJyZfUL_FC.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Syriac" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssyriac/v16/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-Wk88aJyZfUL_FC.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Syriac" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssyriac/v16/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-XD88aJyZfUL_FC.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Sans Syriac" - }, - { - "src": "http://fonts.gstatic.com/s/notosanssyriac/v16/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-Xq88aJyZfUL_FC.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans Syriac" - } - ] - }, - { - "name": "Noto Sans TC", - "fontFamily": "Noto Sans TC, sans-serif", - "slug": "noto-sans-tc", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanstc/v26/-nFlOG829Oofr2wohFbTp9i9WyEJIfNZ1sjy.otf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans TC" - }, - { - "src": "http://fonts.gstatic.com/s/notosanstc/v26/-nFkOG829Oofr2wohFbTp9i9kwMvDd1V39Hr7g.otf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans TC" - }, - { - "src": "http://fonts.gstatic.com/s/notosanstc/v26/-nF7OG829Oofr2wohFbTp9iFOSsLA_ZJ1g.otf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans TC" - }, - { - "src": "http://fonts.gstatic.com/s/notosanstc/v26/-nFkOG829Oofr2wohFbTp9i9ywIvDd1V39Hr7g.otf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans TC" - }, - { - "src": "http://fonts.gstatic.com/s/notosanstc/v26/-nFkOG829Oofr2wohFbTp9i9gwQvDd1V39Hr7g.otf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans TC" - }, - { - "src": "http://fonts.gstatic.com/s/notosanstc/v26/-nFkOG829Oofr2wohFbTp9i9uwYvDd1V39Hr7g.otf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans TC" - } - ] - }, - { - "name": "Noto Sans Tagalog", - "fontFamily": "Noto Sans Tagalog, sans-serif", - "slug": "noto-sans-tagalog", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanstagalog/v18/J7aFnoNzCnFcV9ZI-sUYuvote1R0wwEAA8jHexnL.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Tagalog" - } - ] - }, - { - "name": "Noto Sans Tagbanwa", - "fontFamily": "Noto Sans Tagbanwa, sans-serif", - "slug": "noto-sans-tagbanwa", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanstagbanwa/v18/Y4GWYbB8VTEp4t3MKJSMmQdIKjRtt_nZRjQEaYpGoQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Tagbanwa" - } - ] - }, - { - "name": "Noto Sans Tai Le", - "fontFamily": "Noto Sans Tai Le, sans-serif", - "slug": "noto-sans-tai-le", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanstaile/v17/vEFK2-VODB8RrNDvZSUmVxEATwR58tK1W77HtMo.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Tai Le" - } - ] - }, - { - "name": "Noto Sans Tai Tham", - "fontFamily": "Noto Sans Tai Tham, sans-serif", - "slug": "noto-sans-tai-tham", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanstaitham/v19/kJEbBv0U4hgtwxDUw2x9q7tbjLIfbPGHBoaVSAZ3MdLJBCUbPgquyaRGKMw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Tai Tham" - }, - { - "src": "http://fonts.gstatic.com/s/notosanstaitham/v19/kJEbBv0U4hgtwxDUw2x9q7tbjLIfbPGHBoaVSAZ3MdLJBBcbPgquyaRGKMw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Tai Tham" - }, - { - "src": "http://fonts.gstatic.com/s/notosanstaitham/v19/kJEbBv0U4hgtwxDUw2x9q7tbjLIfbPGHBoaVSAZ3MdLJBPscPgquyaRGKMw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Tai Tham" - }, - { - "src": "http://fonts.gstatic.com/s/notosanstaitham/v19/kJEbBv0U4hgtwxDUw2x9q7tbjLIfbPGHBoaVSAZ3MdLJBMIcPgquyaRGKMw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Tai Tham" - } - ] - }, - { - "name": "Noto Sans Tai Viet", - "fontFamily": "Noto Sans Tai Viet, sans-serif", - "slug": "noto-sans-tai-viet", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanstaiviet/v16/8QIUdj3HhN_lv4jf9vsE-9GMOLsaSPZr644fWsRO9w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Tai Viet" - } - ] - }, - { - "name": "Noto Sans Takri", - "fontFamily": "Noto Sans Takri, sans-serif", - "slug": "noto-sans-takri", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanstakri/v21/TuGJUVpzXI5FBtUq5a8bnKIOdTwQNO_W3khJXg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Takri" - } - ] - }, - { - "name": "Noto Sans Tamil", - "fontFamily": "Noto Sans Tamil, sans-serif", - "slug": "noto-sans-tamil", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanstamil/v27/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7vGor0RqKDt_EvT.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/notosanstamil/v27/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7tGo70RqKDt_EvT.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Sans Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/notosanstamil/v27/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7uYo70RqKDt_EvT.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/notosanstamil/v27/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7vGo70RqKDt_EvT.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/notosanstamil/v27/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7v0o70RqKDt_EvT.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/notosanstamil/v27/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7sYpL0RqKDt_EvT.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/notosanstamil/v27/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7shpL0RqKDt_EvT.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/notosanstamil/v27/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7tGpL0RqKDt_EvT.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Sans Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/notosanstamil/v27/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7tvpL0RqKDt_EvT.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans Tamil" - } - ] - }, - { - "name": "Noto Sans Tamil Supplement", - "fontFamily": "Noto Sans Tamil Supplement, sans-serif", - "slug": "noto-sans-tamil-supplement", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanstamilsupplement/v19/DdTz78kEtnooLS5rXF1DaruiCd_bFp_Ph4sGcn7ax_vsAeMkeq1x.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Tamil Supplement" - } - ] - }, - { - "name": "Noto Sans Tangsa", - "fontFamily": "Noto Sans Tangsa, sans-serif", - "slug": "noto-sans-tangsa", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanstangsa/v3/z7NCdQPmcigbbZAIOl9igP26K470lICpky0-peX5Qp1YkyoRYdplyJDA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Tangsa" - }, - { - "src": "http://fonts.gstatic.com/s/notosanstangsa/v3/z7NCdQPmcigbbZAIOl9igP26K470lICpky0-peX5Qp1qkyoRYdplyJDA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Tangsa" - }, - { - "src": "http://fonts.gstatic.com/s/notosanstangsa/v3/z7NCdQPmcigbbZAIOl9igP26K470lICpky0-peX5Qp2GlCoRYdplyJDA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Tangsa" - }, - { - "src": "http://fonts.gstatic.com/s/notosanstangsa/v3/z7NCdQPmcigbbZAIOl9igP26K470lICpky0-peX5Qp2_lCoRYdplyJDA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Tangsa" - } - ] - }, - { - "name": "Noto Sans Telugu", - "fontFamily": "Noto Sans Telugu, sans-serif", - "slug": "noto-sans-telugu", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanstelugu/v25/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEntezfqQUbf-3v37w.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans Telugu" - }, - { - "src": "http://fonts.gstatic.com/s/notosanstelugu/v25/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEnt-zbqQUbf-3v37w.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Sans Telugu" - }, - { - "src": "http://fonts.gstatic.com/s/notosanstelugu/v25/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEntJTbqQUbf-3v37w.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans Telugu" - }, - { - "src": "http://fonts.gstatic.com/s/notosanstelugu/v25/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEntezbqQUbf-3v37w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Telugu" - }, - { - "src": "http://fonts.gstatic.com/s/notosanstelugu/v25/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEntSTbqQUbf-3v37w.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Telugu" - }, - { - "src": "http://fonts.gstatic.com/s/notosanstelugu/v25/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEntpTHqQUbf-3v37w.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Telugu" - }, - { - "src": "http://fonts.gstatic.com/s/notosanstelugu/v25/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEntnDHqQUbf-3v37w.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Telugu" - }, - { - "src": "http://fonts.gstatic.com/s/notosanstelugu/v25/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEnt-zHqQUbf-3v37w.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Sans Telugu" - }, - { - "src": "http://fonts.gstatic.com/s/notosanstelugu/v25/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEnt0jHqQUbf-3v37w.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans Telugu" - } - ] - }, - { - "name": "Noto Sans Thaana", - "fontFamily": "Noto Sans Thaana, sans-serif", - "slug": "noto-sans-thaana", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansthaana/v23/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4XrbxLhnu4-tbNu.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans Thaana" - }, - { - "src": "http://fonts.gstatic.com/s/notosansthaana/v23/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4VrbhLhnu4-tbNu.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Sans Thaana" - }, - { - "src": "http://fonts.gstatic.com/s/notosansthaana/v23/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4W1bhLhnu4-tbNu.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans Thaana" - }, - { - "src": "http://fonts.gstatic.com/s/notosansthaana/v23/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4XrbhLhnu4-tbNu.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Thaana" - }, - { - "src": "http://fonts.gstatic.com/s/notosansthaana/v23/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4XZbhLhnu4-tbNu.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Thaana" - }, - { - "src": "http://fonts.gstatic.com/s/notosansthaana/v23/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4U1aRLhnu4-tbNu.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Thaana" - }, - { - "src": "http://fonts.gstatic.com/s/notosansthaana/v23/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4UMaRLhnu4-tbNu.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Thaana" - }, - { - "src": "http://fonts.gstatic.com/s/notosansthaana/v23/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4VraRLhnu4-tbNu.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Sans Thaana" - }, - { - "src": "http://fonts.gstatic.com/s/notosansthaana/v23/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4VCaRLhnu4-tbNu.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans Thaana" - } - ] - }, - { - "name": "Noto Sans Thai", - "fontFamily": "Noto Sans Thai, sans-serif", - "slug": "noto-sans-thai", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansthai/v20/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdU5RspzF-QRvzzXg.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans Thai" - }, - { - "src": "http://fonts.gstatic.com/s/notosansthai/v20/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdUxRtpzF-QRvzzXg.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Sans Thai" - }, - { - "src": "http://fonts.gstatic.com/s/notosansthai/v20/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdU8ptpzF-QRvzzXg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans Thai" - }, - { - "src": "http://fonts.gstatic.com/s/notosansthai/v20/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdU5RtpzF-QRvzzXg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Thai" - }, - { - "src": "http://fonts.gstatic.com/s/notosansthai/v20/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdU6ZtpzF-QRvzzXg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Thai" - }, - { - "src": "http://fonts.gstatic.com/s/notosansthai/v20/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdU0pqpzF-QRvzzXg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Thai" - }, - { - "src": "http://fonts.gstatic.com/s/notosansthai/v20/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdU3NqpzF-QRvzzXg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Thai" - }, - { - "src": "http://fonts.gstatic.com/s/notosansthai/v20/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdUxRqpzF-QRvzzXg.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Sans Thai" - }, - { - "src": "http://fonts.gstatic.com/s/notosansthai/v20/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdUz1qpzF-QRvzzXg.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans Thai" - } - ] - }, - { - "name": "Noto Sans Thai Looped", - "fontFamily": "Noto Sans Thai Looped, sans-serif", - "slug": "noto-sans-thai-looped", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansthailooped/v14/B50fF6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R3YX6AYeCT_Wfd1.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Sans Thai Looped" - }, - { - "src": "http://fonts.gstatic.com/s/notosansthailooped/v14/B50cF6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R3Y84E4UgrzUO5sKA.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Sans Thai Looped" - }, - { - "src": "http://fonts.gstatic.com/s/notosansthailooped/v14/B50cF6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R3Yl4I4UgrzUO5sKA.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Sans Thai Looped" - }, - { - "src": "http://fonts.gstatic.com/s/notosansthailooped/v14/B50RF6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R3gO6ocWiHvWQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Thai Looped" - }, - { - "src": "http://fonts.gstatic.com/s/notosansthailooped/v14/B50cF6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R3Yz4M4UgrzUO5sKA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Sans Thai Looped" - }, - { - "src": "http://fonts.gstatic.com/s/notosansthailooped/v14/B50cF6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R3Y44Q4UgrzUO5sKA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Sans Thai Looped" - }, - { - "src": "http://fonts.gstatic.com/s/notosansthailooped/v14/B50cF6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R3Yh4U4UgrzUO5sKA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Sans Thai Looped" - }, - { - "src": "http://fonts.gstatic.com/s/notosansthailooped/v14/B50cF6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R3Ym4Y4UgrzUO5sKA.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Sans Thai Looped" - }, - { - "src": "http://fonts.gstatic.com/s/notosansthailooped/v14/B50cF6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R3Yv4c4UgrzUO5sKA.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Sans Thai Looped" - } - ] - }, - { - "name": "Noto Sans Tifinagh", - "fontFamily": "Noto Sans Tifinagh, sans-serif", - "slug": "noto-sans-tifinagh", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanstifinagh/v17/I_uzMoCduATTei9eI8dawkHIwvmhCvbn6rnEcXfs4Q.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Tifinagh" - } - ] - }, - { - "name": "Noto Sans Tirhuta", - "fontFamily": "Noto Sans Tirhuta, sans-serif", - "slug": "noto-sans-tirhuta", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanstirhuta/v15/t5t6IQYRNJ6TWjahPR6X-M-apUyby7uGUBsTrn5P.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Tirhuta" - } - ] - }, - { - "name": "Noto Sans Ugaritic", - "fontFamily": "Noto Sans Ugaritic, sans-serif", - "slug": "noto-sans-ugaritic", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansugaritic/v16/3qTwoiqhnSyU8TNFIdhZVCwbjCpkAXXkMhoIkiazfg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Ugaritic" - } - ] - }, - { - "name": "Noto Sans Vai", - "fontFamily": "Noto Sans Vai, sans-serif", - "slug": "noto-sans-vai", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansvai/v17/NaPecZTSBuhTirw6IaFn_UrURMTsDIRSfr0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Vai" - } - ] - }, - { - "name": "Noto Sans Wancho", - "fontFamily": "Noto Sans Wancho, sans-serif", - "slug": "noto-sans-wancho", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanswancho/v17/zrf-0GXXyfn6Fs0lH9P4cUubP0GBqAPopiRfKp8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Wancho" - } - ] - }, - { - "name": "Noto Sans Warang Citi", - "fontFamily": "Noto Sans Warang Citi, sans-serif", - "slug": "noto-sans-warang-citi", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanswarangciti/v17/EYqtmb9SzL1YtsZSScyKDXIeOv3w-zgsNvKRpeVCCXzdgA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Warang Citi" - } - ] - }, - { - "name": "Noto Sans Yi", - "fontFamily": "Noto Sans Yi, sans-serif", - "slug": "noto-sans-yi", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosansyi/v19/sJoD3LFXjsSdcnzn071rO3apxVDJNVgSNg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Yi" - } - ] - }, - { - "name": "Noto Sans Zanabazar Square", - "fontFamily": "Noto Sans Zanabazar Square, sans-serif", - "slug": "noto-sans-zanabazar-square", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notosanszanabazarsquare/v16/Cn-jJsuGWQxOjaGwMQ6fOicyxLBEMRfDtkzl4uagQtJxOCEgN0Gc.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Sans Zanabazar Square" - } - ] - }, - { - "name": "Noto Serif", - "fontFamily": "Noto Serif, serif", - "slug": "noto-serif", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZqFGjwM0Lhq_Szw.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZKFCjwM0Lhq_Szw.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZ9lCjwM0Lhq_Szw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZqFCjwM0Lhq_Szw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZmlCjwM0Lhq_Szw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZdlejwM0Lhq_Szw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZT1ejwM0Lhq_Szw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZKFejwM0Lhq_Szw.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZAVejwM0Lhq_Szw.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBNLgscPpKrCzyUi.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Noto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBPLg8cPpKrCzyUi.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Noto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBMVg8cPpKrCzyUi.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Noto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBNLg8cPpKrCzyUi.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Noto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBN5g8cPpKrCzyUi.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Noto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBOVhMcPpKrCzyUi.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Noto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBOshMcPpKrCzyUi.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Noto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBPLhMcPpKrCzyUi.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Noto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/notoserif/v22/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBPihMcPpKrCzyUi.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Noto Serif" - } - ] - }, - { - "name": "Noto Serif Ahom", - "fontFamily": "Noto Serif Ahom, serif", - "slug": "noto-serif-ahom", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoserifahom/v19/FeVIS0hfp6cprmEUffAW_fUL_AN-wuYrPFiwaw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif Ahom" - } - ] - }, - { - "name": "Noto Serif Armenian", - "fontFamily": "Noto Serif Armenian, serif", - "slug": "noto-serif-armenian", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoserifarmenian/v25/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZi8ObxvXagGdkbg.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Serif Armenian" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifarmenian/v25/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZC8KbxvXagGdkbg.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Serif Armenian" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifarmenian/v25/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZ1cKbxvXagGdkbg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Serif Armenian" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifarmenian/v25/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZi8KbxvXagGdkbg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif Armenian" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifarmenian/v25/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZucKbxvXagGdkbg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Serif Armenian" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifarmenian/v25/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZVcWbxvXagGdkbg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Serif Armenian" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifarmenian/v25/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZbMWbxvXagGdkbg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Serif Armenian" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifarmenian/v25/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZC8WbxvXagGdkbg.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Serif Armenian" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifarmenian/v25/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZIsWbxvXagGdkbg.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Serif Armenian" - } - ] - }, - { - "name": "Noto Serif Balinese", - "fontFamily": "Noto Serif Balinese, serif", - "slug": "noto-serif-balinese", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoserifbalinese/v18/QdVKSS0-JginysQSRvuCmUMB_wVeQAxXRbgJdhapcUU.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif Balinese" - } - ] - }, - { - "name": "Noto Serif Bengali", - "fontFamily": "Noto Serif Bengali, serif", - "slug": "noto-serif-bengali", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoserifbengali/v19/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JfcAH3qn4LjQH8yD.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Serif Bengali" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifbengali/v19/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JfeAHnqn4LjQH8yD.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Serif Bengali" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifbengali/v19/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JfdeHnqn4LjQH8yD.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Serif Bengali" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifbengali/v19/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JfcAHnqn4LjQH8yD.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif Bengali" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifbengali/v19/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JfcyHnqn4LjQH8yD.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Serif Bengali" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifbengali/v19/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JffeGXqn4LjQH8yD.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Serif Bengali" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifbengali/v19/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JffnGXqn4LjQH8yD.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Serif Bengali" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifbengali/v19/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JfeAGXqn4LjQH8yD.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Serif Bengali" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifbengali/v19/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JfepGXqn4LjQH8yD.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Serif Bengali" - } - ] - }, - { - "name": "Noto Serif Devanagari", - "fontFamily": "Noto Serif Devanagari, serif", - "slug": "noto-serif-devanagari", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoserifdevanagari/v28/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTA-og-HMUe1u_dv.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Serif Devanagari" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifdevanagari/v28/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTC-ow-HMUe1u_dv.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Serif Devanagari" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifdevanagari/v28/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTBgow-HMUe1u_dv.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Serif Devanagari" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifdevanagari/v28/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTA-ow-HMUe1u_dv.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif Devanagari" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifdevanagari/v28/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTAMow-HMUe1u_dv.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Serif Devanagari" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifdevanagari/v28/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTDgpA-HMUe1u_dv.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Serif Devanagari" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifdevanagari/v28/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTDZpA-HMUe1u_dv.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Serif Devanagari" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifdevanagari/v28/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTC-pA-HMUe1u_dv.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Serif Devanagari" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifdevanagari/v28/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTCXpA-HMUe1u_dv.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Serif Devanagari" - } - ] - }, - { - "name": "Noto Serif Display", - "fontFamily": "Noto Serif Display, serif", - "slug": "noto-serif-display", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVpd49gKaDU9hvzC.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Serif Display" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVrd4tgKaDU9hvzC.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Serif Display" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVoD4tgKaDU9hvzC.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Serif Display" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVpd4tgKaDU9hvzC.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif Display" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVpv4tgKaDU9hvzC.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Serif Display" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVqD5dgKaDU9hvzC.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Serif Display" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVq65dgKaDU9hvzC.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Serif Display" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVrd5dgKaDU9hvzC.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Serif Display" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVr05dgKaDU9hvzC.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Serif Display" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-VoTBIYjEfg-zCmf4.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Noto Serif Display" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-VobBJYjEfg-zCmf4.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Noto Serif Display" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-VoW5JYjEfg-zCmf4.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Noto Serif Display" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-VoTBJYjEfg-zCmf4.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Noto Serif Display" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-VoQJJYjEfg-zCmf4.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Noto Serif Display" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-Voe5OYjEfg-zCmf4.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Noto Serif Display" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-VoddOYjEfg-zCmf4.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Noto Serif Display" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-VobBOYjEfg-zCmf4.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Noto Serif Display" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifdisplay/v18/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-VoZlOYjEfg-zCmf4.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Noto Serif Display" - } - ] - }, - { - "name": "Noto Serif Dogra", - "fontFamily": "Noto Serif Dogra, serif", - "slug": "noto-serif-dogra", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoserifdogra/v16/MQpP-XquKMC7ROPP3QOOlm7xPu3fGy63IbPzkns.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif Dogra" - } - ] - }, - { - "name": "Noto Serif Ethiopic", - "fontFamily": "Noto Serif Ethiopic, serif", - "slug": "noto-serif-ethiopic", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoserifethiopic/v23/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCzSQjkaO9UVLyiw.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Serif Ethiopic" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifethiopic/v23/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCTSUjkaO9UVLyiw.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Serif Ethiopic" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifethiopic/v23/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCkyUjkaO9UVLyiw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Serif Ethiopic" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifethiopic/v23/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCzSUjkaO9UVLyiw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif Ethiopic" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifethiopic/v23/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxC_yUjkaO9UVLyiw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Serif Ethiopic" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifethiopic/v23/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCEyIjkaO9UVLyiw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Serif Ethiopic" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifethiopic/v23/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCKiIjkaO9UVLyiw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Serif Ethiopic" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifethiopic/v23/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCTSIjkaO9UVLyiw.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Serif Ethiopic" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifethiopic/v23/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCZCIjkaO9UVLyiw.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Serif Ethiopic" - } - ] - }, - { - "name": "Noto Serif Georgian", - "fontFamily": "Noto Serif Georgian, serif", - "slug": "noto-serif-georgian", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoserifgeorgian/v24/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSTvsfdzTw-FgZxQ.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Serif Georgian" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifgeorgian/v24/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSzvofdzTw-FgZxQ.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Serif Georgian" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifgeorgian/v24/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSEPofdzTw-FgZxQ.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Serif Georgian" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifgeorgian/v24/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSTvofdzTw-FgZxQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif Georgian" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifgeorgian/v24/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSfPofdzTw-FgZxQ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Serif Georgian" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifgeorgian/v24/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSkP0fdzTw-FgZxQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Serif Georgian" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifgeorgian/v24/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSqf0fdzTw-FgZxQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Serif Georgian" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifgeorgian/v24/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSzv0fdzTw-FgZxQ.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Serif Georgian" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifgeorgian/v24/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aS5_0fdzTw-FgZxQ.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Serif Georgian" - } - ] - }, - { - "name": "Noto Serif Grantha", - "fontFamily": "Noto Serif Grantha, serif", - "slug": "noto-serif-grantha", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoserifgrantha/v19/qkBIXuEH5NzDDvc3fLDYxPk9-Wq3WLiqFENLR7fHGw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif Grantha" - } - ] - }, - { - "name": "Noto Serif Gujarati", - "fontFamily": "Noto Serif Gujarati, serif", - "slug": "noto-serif-gujarati", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoserifgujarati/v26/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2HuYycYzuM1Kf-OJu.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Serif Gujarati" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifgujarati/v26/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2HuaycIzuM1Kf-OJu.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Serif Gujarati" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifgujarati/v26/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2HuZscIzuM1Kf-OJu.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Serif Gujarati" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifgujarati/v26/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2HuYycIzuM1Kf-OJu.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif Gujarati" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifgujarati/v26/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2HuYAcIzuM1Kf-OJu.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Serif Gujarati" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifgujarati/v26/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2Hubsd4zuM1Kf-OJu.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Serif Gujarati" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifgujarati/v26/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2HubVd4zuM1Kf-OJu.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Serif Gujarati" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifgujarati/v26/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2Huayd4zuM1Kf-OJu.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Serif Gujarati" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifgujarati/v26/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2Huabd4zuM1Kf-OJu.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Serif Gujarati" - } - ] - }, - { - "name": "Noto Serif Gurmukhi", - "fontFamily": "Noto Serif Gurmukhi, serif", - "slug": "noto-serif-gurmukhi", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoserifgurmukhi/v20/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr6-eBTNmqVU7y6l.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Serif Gurmukhi" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifgurmukhi/v20/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr4-eRTNmqVU7y6l.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Serif Gurmukhi" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifgurmukhi/v20/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr7geRTNmqVU7y6l.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Serif Gurmukhi" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifgurmukhi/v20/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr6-eRTNmqVU7y6l.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif Gurmukhi" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifgurmukhi/v20/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr6MeRTNmqVU7y6l.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Serif Gurmukhi" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifgurmukhi/v20/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr5gfhTNmqVU7y6l.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Serif Gurmukhi" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifgurmukhi/v20/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr5ZfhTNmqVU7y6l.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Serif Gurmukhi" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifgurmukhi/v20/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr4-fhTNmqVU7y6l.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Serif Gurmukhi" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifgurmukhi/v20/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr4XfhTNmqVU7y6l.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Serif Gurmukhi" - } - ] - }, - { - "name": "Noto Serif HK", - "fontFamily": "Noto Serif HK, serif", - "slug": "noto-serif-hk", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoserifhk/v2/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMf-K2RmV9Su1M6i.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Serif HK" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifhk/v2/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMcgK2RmV9Su1M6i.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Serif HK" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifhk/v2/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMd-K2RmV9Su1M6i.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif HK" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifhk/v2/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMdMK2RmV9Su1M6i.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Serif HK" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifhk/v2/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMegLGRmV9Su1M6i.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Serif HK" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifhk/v2/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMeZLGRmV9Su1M6i.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Serif HK" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifhk/v2/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMf-LGRmV9Su1M6i.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Serif HK" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifhk/v2/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMfXLGRmV9Su1M6i.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Serif HK" - } - ] - }, - { - "name": "Noto Serif Hebrew", - "fontFamily": "Noto Serif Hebrew, serif", - "slug": "noto-serif-hebrew", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoserifhebrew/v25/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVAwTAG8_vlQxz24.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Serif Hebrew" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifhebrew/v25/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVIwSAG8_vlQxz24.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Serif Hebrew" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifhebrew/v25/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVFISAG8_vlQxz24.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Serif Hebrew" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifhebrew/v25/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVAwSAG8_vlQxz24.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif Hebrew" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifhebrew/v25/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVD4SAG8_vlQxz24.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Serif Hebrew" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifhebrew/v25/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVNIVAG8_vlQxz24.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Serif Hebrew" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifhebrew/v25/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVOsVAG8_vlQxz24.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Serif Hebrew" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifhebrew/v25/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVIwVAG8_vlQxz24.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Serif Hebrew" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifhebrew/v25/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVKUVAG8_vlQxz24.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Serif Hebrew" - } - ] - }, - { - "name": "Noto Serif JP", - "fontFamily": "Noto Serif JP, serif", - "slug": "noto-serif-jp", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoserifjp/v21/xn77YHs72GKoTvER4Gn3b5eMZBaPRkgfU8fEwb0.otf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Serif JP" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifjp/v21/xn77YHs72GKoTvER4Gn3b5eMZHKMRkgfU8fEwb0.otf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Serif JP" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifjp/v21/xn7mYHs72GKoTvER4Gn3b5eMXNikYkY0T84.otf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif JP" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifjp/v21/xn77YHs72GKoTvER4Gn3b5eMZCqNRkgfU8fEwb0.otf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Serif JP" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifjp/v21/xn77YHs72GKoTvER4Gn3b5eMZAaKRkgfU8fEwb0.otf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Serif JP" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifjp/v21/xn77YHs72GKoTvER4Gn3b5eMZGKLRkgfU8fEwb0.otf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Serif JP" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifjp/v21/xn77YHs72GKoTvER4Gn3b5eMZFqJRkgfU8fEwb0.otf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Serif JP" - } - ] - }, - { - "name": "Noto Serif KR", - "fontFamily": "Noto Serif KR, serif", - "slug": "noto-serif-kr", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoserifkr/v20/3JnmSDn90Gmq2mr3blnHaTZXTihC8O1ZNH1ahck.otf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Serif KR" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifkr/v20/3JnmSDn90Gmq2mr3blnHaTZXTkxB8O1ZNH1ahck.otf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Serif KR" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifkr/v20/3Jn7SDn90Gmq2mr3blnHaTZXduZp1ONyKHQ.otf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif KR" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifkr/v20/3JnmSDn90Gmq2mr3blnHaTZXThRA8O1ZNH1ahck.otf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Serif KR" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifkr/v20/3JnmSDn90Gmq2mr3blnHaTZXTjhH8O1ZNH1ahck.otf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Serif KR" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifkr/v20/3JnmSDn90Gmq2mr3blnHaTZXTlxG8O1ZNH1ahck.otf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Serif KR" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifkr/v20/3JnmSDn90Gmq2mr3blnHaTZXTmRE8O1ZNH1ahck.otf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Serif KR" - } - ] - }, - { - "name": "Noto Serif Kannada", - "fontFamily": "Noto Serif Kannada, serif", - "slug": "noto-serif-kannada", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoserifkannada/v26/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgcYCceRJ71svgcI.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Serif Kannada" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifkannada/v26/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgUYDceRJ71svgcI.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Serif Kannada" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifkannada/v26/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgZgDceRJ71svgcI.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Serif Kannada" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifkannada/v26/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgcYDceRJ71svgcI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif Kannada" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifkannada/v26/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgfQDceRJ71svgcI.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Serif Kannada" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifkannada/v26/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgRgEceRJ71svgcI.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Serif Kannada" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifkannada/v26/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgSEEceRJ71svgcI.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Serif Kannada" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifkannada/v26/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgUYEceRJ71svgcI.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Serif Kannada" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifkannada/v26/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgW8EceRJ71svgcI.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Serif Kannada" - } - ] - }, - { - "name": "Noto Serif Khmer", - "fontFamily": "Noto Serif Khmer, serif", - "slug": "noto-serif-khmer", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoserifkhmer/v23/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdN6B4wXEZK9Xo4xg.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Serif Khmer" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifkhmer/v23/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdNaB8wXEZK9Xo4xg.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Serif Khmer" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifkhmer/v23/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdNth8wXEZK9Xo4xg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Serif Khmer" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifkhmer/v23/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdN6B8wXEZK9Xo4xg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif Khmer" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifkhmer/v23/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdN2h8wXEZK9Xo4xg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Serif Khmer" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifkhmer/v23/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdNNhgwXEZK9Xo4xg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Serif Khmer" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifkhmer/v23/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdNDxgwXEZK9Xo4xg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Serif Khmer" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifkhmer/v23/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdNaBgwXEZK9Xo4xg.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Serif Khmer" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifkhmer/v23/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdNQRgwXEZK9Xo4xg.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Serif Khmer" - } - ] - }, - { - "name": "Noto Serif Khojki", - "fontFamily": "Noto Serif Khojki, serif", - "slug": "noto-serif-khojki", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoserifkhojki/v8/I_uHMoOduATTei9aP90ctmPGxP2rBKTM4mcQ5M3z9QMY0ghvyZ0Qtc5HAQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif Khojki" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifkhojki/v8/I_uHMoOduATTei9aP90ctmPGxP2rBKTM4mcQ5M3z9QMY4AhvyZ0Qtc5HAQ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Serif Khojki" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifkhojki/v8/I_uHMoOduATTei9aP90ctmPGxP2rBKTM4mcQ5M3z9QMYDA9vyZ0Qtc5HAQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Serif Khojki" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifkhojki/v8/I_uHMoOduATTei9aP90ctmPGxP2rBKTM4mcQ5M3z9QMYNQ9vyZ0Qtc5HAQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Serif Khojki" - } - ] - }, - { - "name": "Noto Serif Lao", - "fontFamily": "Noto Serif Lao, serif", - "slug": "noto-serif-lao", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoseriflao/v23/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VeMLrvOjlmyhHHQ.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Serif Lao" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriflao/v23/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VWMKrvOjlmyhHHQ.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Serif Lao" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriflao/v23/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8Vb0KrvOjlmyhHHQ.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Serif Lao" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriflao/v23/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VeMKrvOjlmyhHHQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif Lao" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriflao/v23/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VdEKrvOjlmyhHHQ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Serif Lao" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriflao/v23/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VT0NrvOjlmyhHHQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Serif Lao" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriflao/v23/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VQQNrvOjlmyhHHQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Serif Lao" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriflao/v23/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VWMNrvOjlmyhHHQ.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Serif Lao" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriflao/v23/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VUoNrvOjlmyhHHQ.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Serif Lao" - } - ] - }, - { - "name": "Noto Serif Malayalam", - "fontFamily": "Noto Serif Malayalam, serif", - "slug": "noto-serif-malayalam", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoserifmalayalam/v28/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1t-1fnVwHpQVySg.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Serif Malayalam" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifmalayalam/v28/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1N-xfnVwHpQVySg.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Serif Malayalam" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifmalayalam/v28/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL16exfnVwHpQVySg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Serif Malayalam" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifmalayalam/v28/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1t-xfnVwHpQVySg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif Malayalam" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifmalayalam/v28/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1hexfnVwHpQVySg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Serif Malayalam" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifmalayalam/v28/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1aetfnVwHpQVySg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Serif Malayalam" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifmalayalam/v28/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1UOtfnVwHpQVySg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Serif Malayalam" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifmalayalam/v28/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1N-tfnVwHpQVySg.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Serif Malayalam" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifmalayalam/v28/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1HutfnVwHpQVySg.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Serif Malayalam" - } - ] - }, - { - "name": "Noto Serif Myanmar", - "fontFamily": "Noto Serif Myanmar, serif", - "slug": "noto-serif-myanmar", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoserifmyanmar/v13/VuJudM7F2Yv76aBKKs-bHMQfAHUw3jnNwBDsU9X6RPzQ.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Serif Myanmar" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifmyanmar/v13/VuJvdM7F2Yv76aBKKs-bHMQfAHUw3jnNbDHMefv2TeXJng.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Serif Myanmar" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifmyanmar/v13/VuJvdM7F2Yv76aBKKs-bHMQfAHUw3jnNCDLMefv2TeXJng.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Serif Myanmar" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifmyanmar/v13/VuJsdM7F2Yv76aBKKs-bHMQfAHUw3jn1pBrocdDqRA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif Myanmar" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifmyanmar/v13/VuJvdM7F2Yv76aBKKs-bHMQfAHUw3jnNUDPMefv2TeXJng.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Serif Myanmar" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifmyanmar/v13/VuJvdM7F2Yv76aBKKs-bHMQfAHUw3jnNfDTMefv2TeXJng.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Serif Myanmar" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifmyanmar/v13/VuJvdM7F2Yv76aBKKs-bHMQfAHUw3jnNGDXMefv2TeXJng.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Serif Myanmar" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifmyanmar/v13/VuJvdM7F2Yv76aBKKs-bHMQfAHUw3jnNBDbMefv2TeXJng.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Serif Myanmar" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifmyanmar/v13/VuJvdM7F2Yv76aBKKs-bHMQfAHUw3jnNIDfMefv2TeXJng.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Serif Myanmar" - } - ] - }, - { - "name": "Noto Serif NP Hmong", - "fontFamily": "Noto Serif NP Hmong, serif", - "slug": "noto-serif-np-hmong", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoserifnphmong/v1/pONN1gItFMO79E4L1GPUi-2sixKHZyFj9Jy6_KhXPwzdvbjPhFLp3u0rVO-d.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif NP Hmong" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifnphmong/v1/pONN1gItFMO79E4L1GPUi-2sixKHZyFj9Jy6_KhXPwzdvbj9hFLp3u0rVO-d.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Serif NP Hmong" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifnphmong/v1/pONN1gItFMO79E4L1GPUi-2sixKHZyFj9Jy6_KhXPwzdvbgRg1Lp3u0rVO-d.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Serif NP Hmong" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifnphmong/v1/pONN1gItFMO79E4L1GPUi-2sixKHZyFj9Jy6_KhXPwzdvbgog1Lp3u0rVO-d.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Serif NP Hmong" - } - ] - }, - { - "name": "Noto Serif Oriya", - "fontFamily": "Noto Serif Oriya, serif", - "slug": "noto-serif-oriya", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoseriforiya/v4/MjQQmj56u-r69izk_LDqWN7w0cYByutv9qeWYrvLaxrc_Hy-v039MF1j.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif Oriya" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriforiya/v4/MjQQmj56u-r69izk_LDqWN7w0cYByutv9qeWYrvLaxru_Hy-v039MF1j.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Serif Oriya" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriforiya/v4/MjQQmj56u-r69izk_LDqWN7w0cYByutv9qeWYrvLaxoC-3y-v039MF1j.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Serif Oriya" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriforiya/v4/MjQQmj56u-r69izk_LDqWN7w0cYByutv9qeWYrvLaxo7-3y-v039MF1j.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Serif Oriya" - } - ] - }, - { - "name": "Noto Serif SC", - "fontFamily": "Noto Serif SC, serif", - "slug": "noto-serif-sc", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoserifsc/v22/H4c8BXePl9DZ0Xe7gG9cyOj7mm63SzZBEtERe7U.otf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Serif SC" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifsc/v22/H4c8BXePl9DZ0Xe7gG9cyOj7mgq0SzZBEtERe7U.otf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Serif SC" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifsc/v22/H4chBXePl9DZ0Xe7gG9cyOj7oqCcbzhqDtg.otf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif SC" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifsc/v22/H4c8BXePl9DZ0Xe7gG9cyOj7mlK1SzZBEtERe7U.otf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Serif SC" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifsc/v22/H4c8BXePl9DZ0Xe7gG9cyOj7mn6ySzZBEtERe7U.otf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Serif SC" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifsc/v22/H4c8BXePl9DZ0Xe7gG9cyOj7mhqzSzZBEtERe7U.otf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Serif SC" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifsc/v22/H4c8BXePl9DZ0Xe7gG9cyOj7miKxSzZBEtERe7U.otf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Serif SC" - } - ] - }, - { - "name": "Noto Serif Sinhala", - "fontFamily": "Noto Serif Sinhala, serif", - "slug": "noto-serif-sinhala", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoserifsinhala/v26/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pGxRlMsxaLRn3W-.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Serif Sinhala" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifsinhala/v26/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pExR1MsxaLRn3W-.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Serif Sinhala" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifsinhala/v26/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pHvR1MsxaLRn3W-.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Serif Sinhala" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifsinhala/v26/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pGxR1MsxaLRn3W-.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif Sinhala" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifsinhala/v26/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pGDR1MsxaLRn3W-.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Serif Sinhala" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifsinhala/v26/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pFvQFMsxaLRn3W-.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Serif Sinhala" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifsinhala/v26/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pFWQFMsxaLRn3W-.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Serif Sinhala" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifsinhala/v26/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pExQFMsxaLRn3W-.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Serif Sinhala" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifsinhala/v26/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pEYQFMsxaLRn3W-.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Serif Sinhala" - } - ] - }, - { - "name": "Noto Serif TC", - "fontFamily": "Noto Serif TC, serif", - "slug": "noto-serif-tc", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoseriftc/v23/XLY9IZb5bJNDGYxLBibeHZ0Bvr8vbX9GTsoOAX4.otf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Serif TC" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftc/v23/XLY9IZb5bJNDGYxLBibeHZ0BvtssbX9GTsoOAX4.otf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Serif TC" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftc/v23/XLYgIZb5bJNDGYxLBibeHZ0BhnEESXFtUsM.otf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif TC" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftc/v23/XLY9IZb5bJNDGYxLBibeHZ0BvoMtbX9GTsoOAX4.otf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Serif TC" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftc/v23/XLY9IZb5bJNDGYxLBibeHZ0Bvq8qbX9GTsoOAX4.otf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Serif TC" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftc/v23/XLY9IZb5bJNDGYxLBibeHZ0BvssrbX9GTsoOAX4.otf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Serif TC" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftc/v23/XLY9IZb5bJNDGYxLBibeHZ0BvvMpbX9GTsoOAX4.otf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Serif TC" - } - ] - }, - { - "name": "Noto Serif Tamil", - "fontFamily": "Noto Serif Tamil, serif", - "slug": "noto-serif-tamil", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecattN6R8Pz3v8Etew.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Serif Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecatNN-R8Pz3v8Etew.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Serif Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecat6t-R8Pz3v8Etew.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Serif Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecattN-R8Pz3v8Etew.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecatht-R8Pz3v8Etew.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Serif Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecatatiR8Pz3v8Etew.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Serif Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecatU9iR8Pz3v8Etew.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Serif Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecatNNiR8Pz3v8Etew.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Serif Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecatHdiR8Pz3v8Etew.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Serif Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJx5svbzncQ9e3wx.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Noto Serif Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJz5s_bzncQ9e3wx.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Noto Serif Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJwns_bzncQ9e3wx.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Noto Serif Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJx5s_bzncQ9e3wx.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Noto Serif Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJxLs_bzncQ9e3wx.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Noto Serif Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJyntPbzncQ9e3wx.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Noto Serif Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJyetPbzncQ9e3wx.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Noto Serif Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJz5tPbzncQ9e3wx.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Noto Serif Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftamil/v28/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJzQtPbzncQ9e3wx.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Noto Serif Tamil" - } - ] - }, - { - "name": "Noto Serif Tangut", - "fontFamily": "Noto Serif Tangut, serif", - "slug": "noto-serif-tangut", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoseriftangut/v16/xn76YGc72GKoTvER4Gn3b4m9Ern7Em41fcvN2KT4.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif Tangut" - } - ] - }, - { - "name": "Noto Serif Telugu", - "fontFamily": "Noto Serif Telugu, serif", - "slug": "noto-serif-telugu", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoseriftelugu/v25/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9D9TGwuY2fjgrZYA.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Serif Telugu" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftelugu/v25/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9DdTCwuY2fjgrZYA.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Serif Telugu" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftelugu/v25/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9DqzCwuY2fjgrZYA.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Serif Telugu" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftelugu/v25/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9D9TCwuY2fjgrZYA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif Telugu" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftelugu/v25/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9DxzCwuY2fjgrZYA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Serif Telugu" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftelugu/v25/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9DKzewuY2fjgrZYA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Serif Telugu" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftelugu/v25/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9DEjewuY2fjgrZYA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Serif Telugu" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftelugu/v25/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9DdTewuY2fjgrZYA.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Serif Telugu" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftelugu/v25/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9DXDewuY2fjgrZYA.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Serif Telugu" - } - ] - }, - { - "name": "Noto Serif Thai", - "fontFamily": "Noto Serif Thai, serif", - "slug": "noto-serif-thai", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoserifthai/v19/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0oiFuRRCmsdu0Qx.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Serif Thai" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifthai/v19/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0qiF-RRCmsdu0Qx.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Serif Thai" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifthai/v19/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0p8F-RRCmsdu0Qx.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Serif Thai" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifthai/v19/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0oiF-RRCmsdu0Qx.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif Thai" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifthai/v19/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0oQF-RRCmsdu0Qx.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Serif Thai" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifthai/v19/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0r8EORRCmsdu0Qx.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Serif Thai" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifthai/v19/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0rFEORRCmsdu0Qx.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Serif Thai" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifthai/v19/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0qiEORRCmsdu0Qx.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Serif Thai" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifthai/v19/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0qLEORRCmsdu0Qx.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Serif Thai" - } - ] - }, - { - "name": "Noto Serif Tibetan", - "fontFamily": "Noto Serif Tibetan, serif", - "slug": "noto-serif-tibetan", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoseriftibetan/v22/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIrYdPS7rdSy_32c.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Noto Serif Tibetan" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftibetan/v22/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIjYcPS7rdSy_32c.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Noto Serif Tibetan" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftibetan/v22/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIugcPS7rdSy_32c.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Serif Tibetan" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftibetan/v22/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIrYcPS7rdSy_32c.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif Tibetan" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftibetan/v22/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIoQcPS7rdSy_32c.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Serif Tibetan" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftibetan/v22/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmImgbPS7rdSy_32c.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Serif Tibetan" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftibetan/v22/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIlEbPS7rdSy_32c.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Serif Tibetan" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftibetan/v22/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIjYbPS7rdSy_32c.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Noto Serif Tibetan" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftibetan/v22/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIh8bPS7rdSy_32c.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Noto Serif Tibetan" - } - ] - }, - { - "name": "Noto Serif Toto", - "fontFamily": "Noto Serif Toto, serif", - "slug": "noto-serif-toto", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoseriftoto/v4/Ktk6ALSMeZjqPnXk1rCkHYHNtwvtHItpjRP74dHhCy3Il-aj55vdNug.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif Toto" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftoto/v4/Ktk6ALSMeZjqPnXk1rCkHYHNtwvtHItpjRP74dHhCx_Il-aj55vdNug.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Serif Toto" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftoto/v4/Ktk6ALSMeZjqPnXk1rCkHYHNtwvtHItpjRP74dHhC_PPl-aj55vdNug.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Serif Toto" - }, - { - "src": "http://fonts.gstatic.com/s/notoseriftoto/v4/Ktk6ALSMeZjqPnXk1rCkHYHNtwvtHItpjRP74dHhC8rPl-aj55vdNug.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Serif Toto" - } - ] - }, - { - "name": "Noto Serif Yezidi", - "fontFamily": "Noto Serif Yezidi, serif", - "slug": "noto-serif-yezidi", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/notoserifyezidi/v16/XLYPIYr5bJNDGYxLBibeHZAn3B5KJENnQjbfhMSVZspD2yEkrlGJgmVCqg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Serif Yezidi" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifyezidi/v16/XLYPIYr5bJNDGYxLBibeHZAn3B5KJENnQjbfhMSVZspD6SEkrlGJgmVCqg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Serif Yezidi" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifyezidi/v16/XLYPIYr5bJNDGYxLBibeHZAn3B5KJENnQjbfhMSVZspDBSYkrlGJgmVCqg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Serif Yezidi" - }, - { - "src": "http://fonts.gstatic.com/s/notoserifyezidi/v16/XLYPIYr5bJNDGYxLBibeHZAn3B5KJENnQjbfhMSVZspDPCYkrlGJgmVCqg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Serif Yezidi" - } - ] - }, - { - "name": "Noto Traditional Nushu", - "fontFamily": "Noto Traditional Nushu, sans-serif", - "slug": "noto-traditional-nushu", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/nototraditionalnushu/v17/SZcV3EDkJ7q9FaoMPlmF4Su8hlIjoGh5aj67PUZX6ADm6oa8IXvy1tnPa7QoqirI.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Noto Traditional Nushu" - }, - { - "src": "http://fonts.gstatic.com/s/nototraditionalnushu/v17/SZcV3EDkJ7q9FaoMPlmF4Su8hlIjoGh5aj67PUZX6ADm6oa8IXus1tnPa7QoqirI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Noto Traditional Nushu" - }, - { - "src": "http://fonts.gstatic.com/s/nototraditionalnushu/v17/SZcV3EDkJ7q9FaoMPlmF4Su8hlIjoGh5aj67PUZX6ADm6oa8IXue1tnPa7QoqirI.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Noto Traditional Nushu" - }, - { - "src": "http://fonts.gstatic.com/s/nototraditionalnushu/v17/SZcV3EDkJ7q9FaoMPlmF4Su8hlIjoGh5aj67PUZX6ADm6oa8IXty0dnPa7QoqirI.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Noto Traditional Nushu" - }, - { - "src": "http://fonts.gstatic.com/s/nototraditionalnushu/v17/SZcV3EDkJ7q9FaoMPlmF4Su8hlIjoGh5aj67PUZX6ADm6oa8IXtL0dnPa7QoqirI.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Noto Traditional Nushu" - } - ] - }, - { - "name": "Nova Cut", - "fontFamily": "Nova Cut, system-ui", - "slug": "nova-cut", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/novacut/v24/KFOkCnSYu8mL-39LkWxPKTM1K9nz.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Nova Cut" - } - ] - }, - { - "name": "Nova Flat", - "fontFamily": "Nova Flat, system-ui", - "slug": "nova-flat", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/novaflat/v24/QdVUSTc-JgqpytEbVebEuStkm20oJA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Nova Flat" - } - ] - }, - { - "name": "Nova Mono", - "fontFamily": "Nova Mono, monospace", - "slug": "nova-mono", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/novamono/v18/Cn-0JtiGWQ5Ajb--MRKfYGxYrdM9Sg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Nova Mono" - } - ] - }, - { - "name": "Nova Oval", - "fontFamily": "Nova Oval, system-ui", - "slug": "nova-oval", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/novaoval/v24/jAnEgHdmANHvPenMaswCMY-h3cWkWg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Nova Oval" - } - ] - }, - { - "name": "Nova Round", - "fontFamily": "Nova Round, system-ui", - "slug": "nova-round", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/novaround/v21/flU9Rqquw5UhEnlwTJYTYYfeeetYEBc.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Nova Round" - } - ] - }, - { - "name": "Nova Script", - "fontFamily": "Nova Script, system-ui", - "slug": "nova-script", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/novascript/v25/7Au7p_IpkSWSTWaFWkumvmQNEl0O0kEx.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Nova Script" - } - ] - }, - { - "name": "Nova Slim", - "fontFamily": "Nova Slim, system-ui", - "slug": "nova-slim", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/novaslim/v24/Z9XUDmZNQAuem8jyZcn-yMOInrib9Q.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Nova Slim" - } - ] - }, - { - "name": "Nova Square", - "fontFamily": "Nova Square, system-ui", - "slug": "nova-square", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/novasquare/v20/RrQUbo9-9DV7b06QHgSWsZhARYMgGtWA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Nova Square" - } - ] - }, - { - "name": "Numans", - "fontFamily": "Numans, sans-serif", - "slug": "numans", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/numans/v15/SlGRmQmGupYAfH8IYRggiHVqaQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Numans" - } - ] - }, - { - "name": "Nunito", - "fontFamily": "Nunito, sans-serif", - "slug": "nunito", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/nunito/v25/XRXI3I6Li01BKofiOc5wtlZ2di8HDDshRTM9jo7eTWk.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Nunito" - }, - { - "src": "http://fonts.gstatic.com/s/nunito/v25/XRXI3I6Li01BKofiOc5wtlZ2di8HDOUhRTM9jo7eTWk.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Nunito" - }, - { - "src": "http://fonts.gstatic.com/s/nunito/v25/XRXI3I6Li01BKofiOc5wtlZ2di8HDLshRTM9jo7eTWk.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Nunito" - }, - { - "src": "http://fonts.gstatic.com/s/nunito/v25/XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhRTM9jo7eTWk.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Nunito" - }, - { - "src": "http://fonts.gstatic.com/s/nunito/v25/XRXI3I6Li01BKofiOc5wtlZ2di8HDGUmRTM9jo7eTWk.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Nunito" - }, - { - "src": "http://fonts.gstatic.com/s/nunito/v25/XRXI3I6Li01BKofiOc5wtlZ2di8HDFwmRTM9jo7eTWk.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Nunito" - }, - { - "src": "http://fonts.gstatic.com/s/nunito/v25/XRXI3I6Li01BKofiOc5wtlZ2di8HDDsmRTM9jo7eTWk.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Nunito" - }, - { - "src": "http://fonts.gstatic.com/s/nunito/v25/XRXI3I6Li01BKofiOc5wtlZ2di8HDBImRTM9jo7eTWk.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Nunito" - }, - { - "src": "http://fonts.gstatic.com/s/nunito/v25/XRXK3I6Li01BKofIMPyPbj8d7IEAGXNiLXA3iqzbXWnoeg.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Nunito" - }, - { - "src": "http://fonts.gstatic.com/s/nunito/v25/XRXK3I6Li01BKofIMPyPbj8d7IEAGXNi83A3iqzbXWnoeg.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Nunito" - }, - { - "src": "http://fonts.gstatic.com/s/nunito/v25/XRXK3I6Li01BKofIMPyPbj8d7IEAGXNirXA3iqzbXWnoeg.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Nunito" - }, - { - "src": "http://fonts.gstatic.com/s/nunito/v25/XRXK3I6Li01BKofIMPyPbj8d7IEAGXNin3A3iqzbXWnoeg.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Nunito" - }, - { - "src": "http://fonts.gstatic.com/s/nunito/v25/XRXK3I6Li01BKofIMPyPbj8d7IEAGXNic3c3iqzbXWnoeg.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Nunito" - }, - { - "src": "http://fonts.gstatic.com/s/nunito/v25/XRXK3I6Li01BKofIMPyPbj8d7IEAGXNiSnc3iqzbXWnoeg.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Nunito" - }, - { - "src": "http://fonts.gstatic.com/s/nunito/v25/XRXK3I6Li01BKofIMPyPbj8d7IEAGXNiLXc3iqzbXWnoeg.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Nunito" - }, - { - "src": "http://fonts.gstatic.com/s/nunito/v25/XRXK3I6Li01BKofIMPyPbj8d7IEAGXNiBHc3iqzbXWnoeg.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Nunito" - } - ] - }, - { - "name": "Nunito Sans", - "fontFamily": "Nunito Sans, sans-serif", - "slug": "nunito-sans", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/nunitosans/v15/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4GVilntF8kA_Ykqw.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Nunito Sans" - }, - { - "src": "http://fonts.gstatic.com/s/nunitosans/v15/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4GiClntF8kA_Ykqw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Nunito Sans" - }, - { - "src": "http://fonts.gstatic.com/s/nunitosans/v15/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4G1ilntF8kA_Ykqw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Nunito Sans" - }, - { - "src": "http://fonts.gstatic.com/s/nunitosans/v15/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4G5ClntF8kA_Ykqw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Nunito Sans" - }, - { - "src": "http://fonts.gstatic.com/s/nunitosans/v15/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4GCC5ntF8kA_Ykqw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Nunito Sans" - }, - { - "src": "http://fonts.gstatic.com/s/nunitosans/v15/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4GMS5ntF8kA_Ykqw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Nunito Sans" - }, - { - "src": "http://fonts.gstatic.com/s/nunitosans/v15/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4GVi5ntF8kA_Ykqw.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Nunito Sans" - }, - { - "src": "http://fonts.gstatic.com/s/nunitosans/v15/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4Gfy5ntF8kA_Ykqw.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Nunito Sans" - }, - { - "src": "http://fonts.gstatic.com/s/nunitosans/v15/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmoP91UgIfM0qxVd.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Nunito Sans" - }, - { - "src": "http://fonts.gstatic.com/s/nunitosans/v15/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmrR91UgIfM0qxVd.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Nunito Sans" - }, - { - "src": "http://fonts.gstatic.com/s/nunitosans/v15/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmqP91UgIfM0qxVd.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Nunito Sans" - }, - { - "src": "http://fonts.gstatic.com/s/nunitosans/v15/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmq991UgIfM0qxVd.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Nunito Sans" - }, - { - "src": "http://fonts.gstatic.com/s/nunitosans/v15/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmpR8FUgIfM0qxVd.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Nunito Sans" - }, - { - "src": "http://fonts.gstatic.com/s/nunitosans/v15/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmpo8FUgIfM0qxVd.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Nunito Sans" - }, - { - "src": "http://fonts.gstatic.com/s/nunitosans/v15/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmoP8FUgIfM0qxVd.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Nunito Sans" - }, - { - "src": "http://fonts.gstatic.com/s/nunitosans/v15/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmom8FUgIfM0qxVd.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Nunito Sans" - } - ] - }, - { - "name": "Nuosu SIL", - "fontFamily": "Nuosu SIL, serif", - "slug": "nuosu-sil", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/nuosusil/v6/8vIK7wM3wmRn_kc4uAjeFGxbO_zo-w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Nuosu SIL" - } - ] - }, - { - "name": "Odibee Sans", - "fontFamily": "Odibee Sans, system-ui", - "slug": "odibee-sans", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/odibeesans/v14/neIPzCSooYAho6WvjeToRYkyepH9qGsf.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Odibee Sans" - } - ] - }, - { - "name": "Odor Mean Chey", - "fontFamily": "Odor Mean Chey, serif", - "slug": "odor-mean-chey", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/odormeanchey/v27/raxkHiKDttkTe1aOGcJMR1A_4mrY2zqUKafv.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Odor Mean Chey" - } - ] - }, - { - "name": "Offside", - "fontFamily": "Offside, system-ui", - "slug": "offside", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/offside/v22/HI_KiYMWKa9QrAykQ5HiRp-dhpQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Offside" - } - ] - }, - { - "name": "Oi", - "fontFamily": "Oi, system-ui", - "slug": "oi", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/oi/v16/w8gXH2EuRqtaut6yjBOG.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Oi" - } - ] - }, - { - "name": "Old Standard TT", - "fontFamily": "Old Standard TT, serif", - "slug": "old-standard-tt", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/oldstandardtt/v18/MwQubh3o1vLImiwAVvYawgcf2eVurVC5RHdCZg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Old Standard TT" - }, - { - "src": "http://fonts.gstatic.com/s/oldstandardtt/v18/MwQsbh3o1vLImiwAVvYawgcf2eVer1q9ZnJSZtQG.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Old Standard TT" - }, - { - "src": "http://fonts.gstatic.com/s/oldstandardtt/v18/MwQrbh3o1vLImiwAVvYawgcf2eVWEX-dTFxeb80flQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Old Standard TT" - } - ] - }, - { - "name": "Oldenburg", - "fontFamily": "Oldenburg, system-ui", - "slug": "oldenburg", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/oldenburg/v20/fC1jPY5JYWzbywv7c4V6UU6oXyndrw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Oldenburg" - } - ] - }, - { - "name": "Ole", - "fontFamily": "Ole, cursive", - "slug": "ole", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ole/v3/dFazZf6Z-rd89fw69qJ_ew.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Ole" - } - ] - }, - { - "name": "Oleo Script", - "fontFamily": "Oleo Script, system-ui", - "slug": "oleo-script", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/oleoscript/v14/rax5HieDvtMOe0iICsUccBhasU7Q8Cad.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Oleo Script" - }, - { - "src": "http://fonts.gstatic.com/s/oleoscript/v14/raxkHieDvtMOe0iICsUccCDmnmrY2zqUKafv.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Oleo Script" - } - ] - }, - { - "name": "Oleo Script Swash Caps", - "fontFamily": "Oleo Script Swash Caps, system-ui", - "slug": "oleo-script-swash-caps", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/oleoscriptswashcaps/v13/Noaj6Vb-w5SFbTTAsZP_7JkCS08K-jCzDn_HMXquSY0Hg90.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Oleo Script Swash Caps" - }, - { - "src": "http://fonts.gstatic.com/s/oleoscriptswashcaps/v13/Noag6Vb-w5SFbTTAsZP_7JkCS08K-jCzDn_HCcaBbYUsn9T5dt0.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Oleo Script Swash Caps" - } - ] - }, - { - "name": "Oooh Baby", - "fontFamily": "Oooh Baby, cursive", - "slug": "oooh-baby", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ooohbaby/v4/2sDcZGJWgJTT2Jf76xQDb2-4C7wFZQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Oooh Baby" - } - ] - }, - { - "name": "Open Sans", - "fontFamily": "Open Sans, sans-serif", - "slug": "open-sans", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/opensans/v35/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsiH0C4nY1M2xLER.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Open Sans" - }, - { - "src": "http://fonts.gstatic.com/s/opensans/v35/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0C4nY1M2xLER.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Open Sans" - }, - { - "src": "http://fonts.gstatic.com/s/opensans/v35/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjr0C4nY1M2xLER.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Open Sans" - }, - { - "src": "http://fonts.gstatic.com/s/opensans/v35/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsgH1y4nY1M2xLER.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Open Sans" - }, - { - "src": "http://fonts.gstatic.com/s/opensans/v35/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsg-1y4nY1M2xLER.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Open Sans" - }, - { - "src": "http://fonts.gstatic.com/s/opensans/v35/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgshZ1y4nY1M2xLER.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Open Sans" - }, - { - "src": "http://fonts.gstatic.com/s/opensans/v35/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk5hkaVcUwaERZjA.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Open Sans" - }, - { - "src": "http://fonts.gstatic.com/s/opensans/v35/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkaVcUwaERZjA.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Open Sans" - }, - { - "src": "http://fonts.gstatic.com/s/opensans/v35/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk_RkaVcUwaERZjA.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Open Sans" - }, - { - "src": "http://fonts.gstatic.com/s/opensans/v35/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkxhjaVcUwaERZjA.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Open Sans" - }, - { - "src": "http://fonts.gstatic.com/s/opensans/v35/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkyFjaVcUwaERZjA.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Open Sans" - }, - { - "src": "http://fonts.gstatic.com/s/opensans/v35/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk0ZjaVcUwaERZjA.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Open Sans" - } - ] - }, - { - "name": "Oranienbaum", - "fontFamily": "Oranienbaum, serif", - "slug": "oranienbaum", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/oranienbaum/v15/OZpHg_txtzZKMuXLIVrx-3zn7kz3dpHc.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Oranienbaum" - } - ] - }, - { - "name": "Orbitron", - "fontFamily": "Orbitron, sans-serif", - "slug": "orbitron", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/orbitron/v29/yMJMMIlzdpvBhQQL_SC3X9yhF25-T1nyGy6xpmIyXjU1pg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Orbitron" - }, - { - "src": "http://fonts.gstatic.com/s/orbitron/v29/yMJMMIlzdpvBhQQL_SC3X9yhF25-T1nyKS6xpmIyXjU1pg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Orbitron" - }, - { - "src": "http://fonts.gstatic.com/s/orbitron/v29/yMJMMIlzdpvBhQQL_SC3X9yhF25-T1nyxSmxpmIyXjU1pg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Orbitron" - }, - { - "src": "http://fonts.gstatic.com/s/orbitron/v29/yMJMMIlzdpvBhQQL_SC3X9yhF25-T1ny_CmxpmIyXjU1pg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Orbitron" - }, - { - "src": "http://fonts.gstatic.com/s/orbitron/v29/yMJMMIlzdpvBhQQL_SC3X9yhF25-T1nymymxpmIyXjU1pg.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Orbitron" - }, - { - "src": "http://fonts.gstatic.com/s/orbitron/v29/yMJMMIlzdpvBhQQL_SC3X9yhF25-T1nysimxpmIyXjU1pg.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Orbitron" - } - ] - }, - { - "name": "Oregano", - "fontFamily": "Oregano, system-ui", - "slug": "oregano", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/oregano/v13/If2IXTPxciS3H4S2kZffPznO3yM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Oregano" - }, - { - "src": "http://fonts.gstatic.com/s/oregano/v13/If2KXTPxciS3H4S2oZXVOxvLzyP_qw.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Oregano" - } - ] - }, - { - "name": "Orelega One", - "fontFamily": "Orelega One, system-ui", - "slug": "orelega-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/orelegaone/v10/3qTpojOggD2XtAdFb-QXZGt61EcYaQ7F.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Orelega One" - } - ] - }, - { - "name": "Orienta", - "fontFamily": "Orienta, sans-serif", - "slug": "orienta", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/orienta/v15/PlI9FlK4Jrl5Y9zNeyeo9HRFhcU.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Orienta" - } - ] - }, - { - "name": "Original Surfer", - "fontFamily": "Original Surfer, system-ui", - "slug": "original-surfer", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/originalsurfer/v18/RWmQoKGZ9vIirYntXJ3_MbekzNMiDEtvAlaMKw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Original Surfer" - } - ] - }, - { - "name": "Oswald", - "fontFamily": "Oswald, sans-serif", - "slug": "oswald", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/oswald/v49/TK3_WkUHHAIjg75cFRf3bXL8LICs13FvgUFoZAaRliE.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Oswald" - }, - { - "src": "http://fonts.gstatic.com/s/oswald/v49/TK3_WkUHHAIjg75cFRf3bXL8LICs169vgUFoZAaRliE.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Oswald" - }, - { - "src": "http://fonts.gstatic.com/s/oswald/v49/TK3_WkUHHAIjg75cFRf3bXL8LICs1_FvgUFoZAaRliE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Oswald" - }, - { - "src": "http://fonts.gstatic.com/s/oswald/v49/TK3_WkUHHAIjg75cFRf3bXL8LICs18NvgUFoZAaRliE.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Oswald" - }, - { - "src": "http://fonts.gstatic.com/s/oswald/v49/TK3_WkUHHAIjg75cFRf3bXL8LICs1y9ogUFoZAaRliE.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Oswald" - }, - { - "src": "http://fonts.gstatic.com/s/oswald/v49/TK3_WkUHHAIjg75cFRf3bXL8LICs1xZogUFoZAaRliE.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Oswald" - } - ] - }, - { - "name": "Outfit", - "fontFamily": "Outfit, sans-serif", - "slug": "outfit", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/outfit/v11/QGYyz_MVcBeNP4NjuGObqx1XmO1I4TC0C4G-EiAou6Y.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Outfit" - }, - { - "src": "http://fonts.gstatic.com/s/outfit/v11/QGYyz_MVcBeNP4NjuGObqx1XmO1I4bC1C4G-EiAou6Y.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Outfit" - }, - { - "src": "http://fonts.gstatic.com/s/outfit/v11/QGYyz_MVcBeNP4NjuGObqx1XmO1I4W61C4G-EiAou6Y.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Outfit" - }, - { - "src": "http://fonts.gstatic.com/s/outfit/v11/QGYyz_MVcBeNP4NjuGObqx1XmO1I4TC1C4G-EiAou6Y.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Outfit" - }, - { - "src": "http://fonts.gstatic.com/s/outfit/v11/QGYyz_MVcBeNP4NjuGObqx1XmO1I4QK1C4G-EiAou6Y.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Outfit" - }, - { - "src": "http://fonts.gstatic.com/s/outfit/v11/QGYyz_MVcBeNP4NjuGObqx1XmO1I4e6yC4G-EiAou6Y.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Outfit" - }, - { - "src": "http://fonts.gstatic.com/s/outfit/v11/QGYyz_MVcBeNP4NjuGObqx1XmO1I4deyC4G-EiAou6Y.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Outfit" - }, - { - "src": "http://fonts.gstatic.com/s/outfit/v11/QGYyz_MVcBeNP4NjuGObqx1XmO1I4bCyC4G-EiAou6Y.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Outfit" - }, - { - "src": "http://fonts.gstatic.com/s/outfit/v11/QGYyz_MVcBeNP4NjuGObqx1XmO1I4ZmyC4G-EiAou6Y.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Outfit" - } - ] - }, - { - "name": "Over the Rainbow", - "fontFamily": "Over the Rainbow, cursive", - "slug": "over-the-rainbow", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/overtherainbow/v16/11haGoXG1k_HKhMLUWz7Mc7vvW5upvOm9NA2XG0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Over the Rainbow" - } - ] - }, - { - "name": "Overlock", - "fontFamily": "Overlock, system-ui", - "slug": "overlock", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/overlock/v15/Z9XVDmdMWRiN1_T9Z4Te4u2El6GC.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Overlock" - }, - { - "src": "http://fonts.gstatic.com/s/overlock/v15/Z9XTDmdMWRiN1_T9Z7Tc6OmmkrGC7Cs.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Overlock" - }, - { - "src": "http://fonts.gstatic.com/s/overlock/v15/Z9XSDmdMWRiN1_T9Z7xizcmMvL2L9TLT.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Overlock" - }, - { - "src": "http://fonts.gstatic.com/s/overlock/v15/Z9XQDmdMWRiN1_T9Z7Tc0FWJtrmp8CLTlNs.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Overlock" - }, - { - "src": "http://fonts.gstatic.com/s/overlock/v15/Z9XSDmdMWRiN1_T9Z7xaz8mMvL2L9TLT.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Overlock" - }, - { - "src": "http://fonts.gstatic.com/s/overlock/v15/Z9XQDmdMWRiN1_T9Z7Tc0G2Ltrmp8CLTlNs.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Overlock" - } - ] - }, - { - "name": "Overlock SC", - "fontFamily": "Overlock SC, system-ui", - "slug": "overlock-sc", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/overlocksc/v21/1cX3aUHKGZrstGAY8nwVzHGAq8Sk1PoH.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Overlock SC" - } - ] - }, - { - "name": "Overpass", - "fontFamily": "Overpass, sans-serif", - "slug": "overpass", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/overpass/v12/qFda35WCmI96Ajtm83upeyoaX6QPnlo6_PLrOZCLtce-og.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Overpass" - }, - { - "src": "http://fonts.gstatic.com/s/overpass/v12/qFda35WCmI96Ajtm83upeyoaX6QPnlo6fPPrOZCLtce-og.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Overpass" - }, - { - "src": "http://fonts.gstatic.com/s/overpass/v12/qFda35WCmI96Ajtm83upeyoaX6QPnlo6ovPrOZCLtce-og.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Overpass" - }, - { - "src": "http://fonts.gstatic.com/s/overpass/v12/qFda35WCmI96Ajtm83upeyoaX6QPnlo6_PPrOZCLtce-og.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Overpass" - }, - { - "src": "http://fonts.gstatic.com/s/overpass/v12/qFda35WCmI96Ajtm83upeyoaX6QPnlo6zvPrOZCLtce-og.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Overpass" - }, - { - "src": "http://fonts.gstatic.com/s/overpass/v12/qFda35WCmI96Ajtm83upeyoaX6QPnlo6IvTrOZCLtce-og.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Overpass" - }, - { - "src": "http://fonts.gstatic.com/s/overpass/v12/qFda35WCmI96Ajtm83upeyoaX6QPnlo6G_TrOZCLtce-og.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Overpass" - }, - { - "src": "http://fonts.gstatic.com/s/overpass/v12/qFda35WCmI96Ajtm83upeyoaX6QPnlo6fPTrOZCLtce-og.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Overpass" - }, - { - "src": "http://fonts.gstatic.com/s/overpass/v12/qFda35WCmI96Ajtm83upeyoaX6QPnlo6VfTrOZCLtce-og.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Overpass" - }, - { - "src": "http://fonts.gstatic.com/s/overpass/v12/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLADe5qPl8Kuosgz.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Overpass" - }, - { - "src": "http://fonts.gstatic.com/s/overpass/v12/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLCDepqPl8Kuosgz.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Overpass" - }, - { - "src": "http://fonts.gstatic.com/s/overpass/v12/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLBdepqPl8Kuosgz.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Overpass" - }, - { - "src": "http://fonts.gstatic.com/s/overpass/v12/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLADepqPl8Kuosgz.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Overpass" - }, - { - "src": "http://fonts.gstatic.com/s/overpass/v12/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLAxepqPl8Kuosgz.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Overpass" - }, - { - "src": "http://fonts.gstatic.com/s/overpass/v12/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLDdfZqPl8Kuosgz.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Overpass" - }, - { - "src": "http://fonts.gstatic.com/s/overpass/v12/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLDkfZqPl8Kuosgz.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Overpass" - }, - { - "src": "http://fonts.gstatic.com/s/overpass/v12/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLCDfZqPl8Kuosgz.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Overpass" - }, - { - "src": "http://fonts.gstatic.com/s/overpass/v12/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLCqfZqPl8Kuosgz.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Overpass" - } - ] - }, - { - "name": "Overpass Mono", - "fontFamily": "Overpass Mono, monospace", - "slug": "overpass-mono", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/overpassmono/v15/_Xm5-H86tzKDdAPa-KPQZ-AC_COcRycquHlL6EWKokzzXur-SmIr.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Overpass Mono" - }, - { - "src": "http://fonts.gstatic.com/s/overpassmono/v15/_Xm5-H86tzKDdAPa-KPQZ-AC_COcRycquHlL6EXUokzzXur-SmIr.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Overpass Mono" - }, - { - "src": "http://fonts.gstatic.com/s/overpassmono/v15/_Xm5-H86tzKDdAPa-KPQZ-AC_COcRycquHlL6EXmokzzXur-SmIr.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Overpass Mono" - }, - { - "src": "http://fonts.gstatic.com/s/overpassmono/v15/_Xm5-H86tzKDdAPa-KPQZ-AC_COcRycquHlL6EUKpUzzXur-SmIr.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Overpass Mono" - }, - { - "src": "http://fonts.gstatic.com/s/overpassmono/v15/_Xm5-H86tzKDdAPa-KPQZ-AC_COcRycquHlL6EUzpUzzXur-SmIr.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Overpass Mono" - } - ] - }, - { - "name": "Ovo", - "fontFamily": "Ovo, serif", - "slug": "ovo", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ovo/v17/yYLl0h7Wyfzjy4Q5_3WVxA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Ovo" - } - ] - }, - { - "name": "Oxanium", - "fontFamily": "Oxanium, system-ui", - "slug": "oxanium", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/oxanium/v14/RrQPboN_4yJ0JmiMUW7sIGjd1IA9G83JfniMBXQ7d67x.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Oxanium" - }, - { - "src": "http://fonts.gstatic.com/s/oxanium/v14/RrQPboN_4yJ0JmiMUW7sIGjd1IA9G80XfniMBXQ7d67x.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Oxanium" - }, - { - "src": "http://fonts.gstatic.com/s/oxanium/v14/RrQPboN_4yJ0JmiMUW7sIGjd1IA9G81JfniMBXQ7d67x.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Oxanium" - }, - { - "src": "http://fonts.gstatic.com/s/oxanium/v14/RrQPboN_4yJ0JmiMUW7sIGjd1IA9G817fniMBXQ7d67x.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Oxanium" - }, - { - "src": "http://fonts.gstatic.com/s/oxanium/v14/RrQPboN_4yJ0JmiMUW7sIGjd1IA9G82XeXiMBXQ7d67x.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Oxanium" - }, - { - "src": "http://fonts.gstatic.com/s/oxanium/v14/RrQPboN_4yJ0JmiMUW7sIGjd1IA9G82ueXiMBXQ7d67x.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Oxanium" - }, - { - "src": "http://fonts.gstatic.com/s/oxanium/v14/RrQPboN_4yJ0JmiMUW7sIGjd1IA9G83JeXiMBXQ7d67x.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Oxanium" - } - ] - }, - { - "name": "Oxygen", - "fontFamily": "Oxygen, sans-serif", - "slug": "oxygen", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/oxygen/v15/2sDcZG1Wl4LcnbuCJW8Db2-4C7wFZQ.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Oxygen" - }, - { - "src": "http://fonts.gstatic.com/s/oxygen/v15/2sDfZG1Wl4Lcnbu6iUcnZ0SkAg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Oxygen" - }, - { - "src": "http://fonts.gstatic.com/s/oxygen/v15/2sDcZG1Wl4LcnbuCNWgDb2-4C7wFZQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Oxygen" - } - ] - }, - { - "name": "Oxygen Mono", - "fontFamily": "Oxygen Mono, monospace", - "slug": "oxygen-mono", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/oxygenmono/v14/h0GsssGg9FxgDgCjLeAd7ijfze-PPlUu.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Oxygen Mono" - } - ] - }, - { - "name": "PT Mono", - "fontFamily": "PT Mono, monospace", - "slug": "pt-mono", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ptmono/v13/9oRONYoBnWILk-9ArCg5MtPyAcg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "PT Mono" - } - ] - }, - { - "name": "PT Sans", - "fontFamily": "PT Sans, sans-serif", - "slug": "pt-sans", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ptsans/v17/jizaRExUiTo99u79P0WOxOGMMDQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "PT Sans" - }, - { - "src": "http://fonts.gstatic.com/s/ptsans/v17/jizYRExUiTo99u79D0eEwMOJIDQA-g.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "PT Sans" - }, - { - "src": "http://fonts.gstatic.com/s/ptsans/v17/jizfRExUiTo99u79B_mh4OmnLD0Z4zM.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "PT Sans" - }, - { - "src": "http://fonts.gstatic.com/s/ptsans/v17/jizdRExUiTo99u79D0e8fOytKB8c8zMrig.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "PT Sans" - } - ] - }, - { - "name": "PT Sans Caption", - "fontFamily": "PT Sans Caption, sans-serif", - "slug": "pt-sans-caption", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ptsanscaption/v19/0FlMVP6Hrxmt7-fsUFhlFXNIlpcqfQXwQy6yxg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "PT Sans Caption" - }, - { - "src": "http://fonts.gstatic.com/s/ptsanscaption/v19/0FlJVP6Hrxmt7-fsUFhlFXNIlpcSwSrUSwWuz38Tgg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "PT Sans Caption" - } - ] - }, - { - "name": "PT Sans Narrow", - "fontFamily": "PT Sans Narrow, sans-serif", - "slug": "pt-sans-narrow", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ptsansnarrow/v18/BngRUXNadjH0qYEzV7ab-oWlsYCByxyKeuDp.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "PT Sans Narrow" - }, - { - "src": "http://fonts.gstatic.com/s/ptsansnarrow/v18/BngSUXNadjH0qYEzV7ab-oWlsbg95DiCUfzgRd-3.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "PT Sans Narrow" - } - ] - }, - { - "name": "PT Serif", - "fontFamily": "PT Serif, serif", - "slug": "pt-serif", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ptserif/v18/EJRVQgYoZZY2vCFuvDFRxL6ddjb-.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "PT Serif" - }, - { - "src": "http://fonts.gstatic.com/s/ptserif/v18/EJRTQgYoZZY2vCFuvAFTzrq_cyb-vco.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "PT Serif" - }, - { - "src": "http://fonts.gstatic.com/s/ptserif/v18/EJRSQgYoZZY2vCFuvAnt65qVXSr3pNNB.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "PT Serif" - }, - { - "src": "http://fonts.gstatic.com/s/ptserif/v18/EJRQQgYoZZY2vCFuvAFT9gaQVy7VocNB6Iw.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "PT Serif" - } - ] - }, - { - "name": "PT Serif Caption", - "fontFamily": "PT Serif Caption, serif", - "slug": "pt-serif-caption", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ptserifcaption/v17/ieVl2ZhbGCW-JoW6S34pSDpqYKU059WxDCs5cvI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "PT Serif Caption" - }, - { - "src": "http://fonts.gstatic.com/s/ptserifcaption/v17/ieVj2ZhbGCW-JoW6S34pSDpqYKU019e7CAk8YvJEeg.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "PT Serif Caption" - } - ] - }, - { - "name": "Pacifico", - "fontFamily": "Pacifico, cursive", - "slug": "pacifico", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/pacifico/v22/FwZY7-Qmy14u9lezJ96A4sijpFu_.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Pacifico" - } - ] - }, - { - "name": "Padauk", - "fontFamily": "Padauk, sans-serif", - "slug": "padauk", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/padauk/v16/RrQRboJg-id7OnbBa0_g3LlYbg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Padauk" - }, - { - "src": "http://fonts.gstatic.com/s/padauk/v16/RrQSboJg-id7Onb512DE1JJEZ4YwGg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Padauk" - } - ] - }, - { - "name": "Padyakke Expanded One", - "fontFamily": "Padyakke Expanded One, system-ui", - "slug": "padyakke-expanded-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/padyakkeexpandedone/v2/K2FvfY9El_tbR0JfHb6WWvrBaU6XAUvC4IAYOKRkpDjeoQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Padyakke Expanded One" - } - ] - }, - { - "name": "Palanquin", - "fontFamily": "Palanquin, sans-serif", - "slug": "palanquin", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/palanquin/v13/9XUhlJ90n1fBFg7ceXwUEltI7rWmZzTH.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Palanquin" - }, - { - "src": "http://fonts.gstatic.com/s/palanquin/v13/9XUilJ90n1fBFg7ceXwUvnpoxJuqbi3ezg.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Palanquin" - }, - { - "src": "http://fonts.gstatic.com/s/palanquin/v13/9XUilJ90n1fBFg7ceXwU2nloxJuqbi3ezg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Palanquin" - }, - { - "src": "http://fonts.gstatic.com/s/palanquin/v13/9XUnlJ90n1fBFg7ceXwsdlFMzLC2Zw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Palanquin" - }, - { - "src": "http://fonts.gstatic.com/s/palanquin/v13/9XUilJ90n1fBFg7ceXwUgnhoxJuqbi3ezg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Palanquin" - }, - { - "src": "http://fonts.gstatic.com/s/palanquin/v13/9XUilJ90n1fBFg7ceXwUrn9oxJuqbi3ezg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Palanquin" - }, - { - "src": "http://fonts.gstatic.com/s/palanquin/v13/9XUilJ90n1fBFg7ceXwUyn5oxJuqbi3ezg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Palanquin" - } - ] - }, - { - "name": "Palanquin Dark", - "fontFamily": "Palanquin Dark, sans-serif", - "slug": "palanquin-dark", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/palanquindark/v12/xn75YHgl1nqmANMB-26xC7yuF_6OTEo9VtfE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Palanquin Dark" - }, - { - "src": "http://fonts.gstatic.com/s/palanquindark/v12/xn76YHgl1nqmANMB-26xC7yuF8Z6ZW41fcvN2KT4.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Palanquin Dark" - }, - { - "src": "http://fonts.gstatic.com/s/palanquindark/v12/xn76YHgl1nqmANMB-26xC7yuF8ZWYm41fcvN2KT4.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Palanquin Dark" - }, - { - "src": "http://fonts.gstatic.com/s/palanquindark/v12/xn76YHgl1nqmANMB-26xC7yuF8YyY241fcvN2KT4.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Palanquin Dark" - } - ] - }, - { - "name": "Palette Mosaic", - "fontFamily": "Palette Mosaic, system-ui", - "slug": "palette-mosaic", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/palettemosaic/v10/AMOIz4aBvWuBFe3TohdW6YZ9MFiy4dxL4jSr.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Palette Mosaic" - } - ] - }, - { - "name": "Pangolin", - "fontFamily": "Pangolin, cursive", - "slug": "pangolin", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/pangolin/v11/cY9GfjGcW0FPpi-tWPfK5d3aiLBG.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Pangolin" - } - ] - }, - { - "name": "Paprika", - "fontFamily": "Paprika, system-ui", - "slug": "paprika", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/paprika/v21/8QIJdijZitv49rDfuIgOq7jkAOw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Paprika" - } - ] - }, - { - "name": "Parisienne", - "fontFamily": "Parisienne, cursive", - "slug": "parisienne", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/parisienne/v13/E21i_d3kivvAkxhLEVZpcy96DuKuavM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Parisienne" - } - ] - }, - { - "name": "Passero One", - "fontFamily": "Passero One, system-ui", - "slug": "passero-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/passeroone/v24/JTUTjIko8DOq5FeaeEAjgE5B5Arr-s50.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Passero One" - } - ] - }, - { - "name": "Passion One", - "fontFamily": "Passion One, system-ui", - "slug": "passion-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/passionone/v16/PbynFmL8HhTPqbjUzux3JHuW_Frg6YoV.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Passion One" - }, - { - "src": "http://fonts.gstatic.com/s/passionone/v16/Pby6FmL8HhTPqbjUzux3JEMq037owpYcuH8y.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Passion One" - }, - { - "src": "http://fonts.gstatic.com/s/passionone/v16/Pby6FmL8HhTPqbjUzux3JEMS0X7owpYcuH8y.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Passion One" - } - ] - }, - { - "name": "Passions Conflict", - "fontFamily": "Passions Conflict, cursive", - "slug": "passions-conflict", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/passionsconflict/v5/kmKnZrcrFhfafnWX9x0GuEC-zowow5NeYRI4CN2V.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Passions Conflict" - } - ] - }, - { - "name": "Pathway Extreme", - "fontFamily": "Pathway Extreme, sans-serif", - "slug": "pathway-extreme", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xak2Nx1Kyw3igP5eg.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Pathway Extreme" - }, - { - "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xakWN11Kyw3igP5eg.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Pathway Extreme" - }, - { - "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xakht11Kyw3igP5eg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Pathway Extreme" - }, - { - "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xak2N11Kyw3igP5eg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Pathway Extreme" - }, - { - "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xak6t11Kyw3igP5eg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Pathway Extreme" - }, - { - "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xakBtp1Kyw3igP5eg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Pathway Extreme" - }, - { - "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xakP9p1Kyw3igP5eg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Pathway Extreme" - }, - { - "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xakWNp1Kyw3igP5eg.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Pathway Extreme" - }, - { - "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xakcdp1Kyw3igP5eg.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Pathway Extreme" - }, - { - "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ6daSYzqAbpepnF.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Pathway Extreme" - }, - { - "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ4daCYzqAbpepnF.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Pathway Extreme" - }, - { - "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ7DaCYzqAbpepnF.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Pathway Extreme" - }, - { - "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ6daCYzqAbpepnF.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Pathway Extreme" - }, - { - "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ6vaCYzqAbpepnF.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Pathway Extreme" - }, - { - "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ5DbyYzqAbpepnF.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Pathway Extreme" - }, - { - "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ56byYzqAbpepnF.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Pathway Extreme" - }, - { - "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ4dbyYzqAbpepnF.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Pathway Extreme" - }, - { - "src": "http://fonts.gstatic.com/s/pathwayextreme/v3/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ40byYzqAbpepnF.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Pathway Extreme" - } - ] - }, - { - "name": "Pathway Gothic One", - "fontFamily": "Pathway Gothic One, sans-serif", - "slug": "pathway-gothic-one", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/pathwaygothicone/v15/MwQrbgD32-KAvjkYGNUUxAtW7pEBwx-dTFxeb80flQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Pathway Gothic One" - } - ] - }, - { - "name": "Patrick Hand", - "fontFamily": "Patrick Hand, cursive", - "slug": "patrick-hand", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/patrickhand/v20/LDI1apSQOAYtSuYWp8ZhfYeMWcjKm7sp8g.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Patrick Hand" - } - ] - }, - { - "name": "Patrick Hand SC", - "fontFamily": "Patrick Hand SC, cursive", - "slug": "patrick-hand-sc", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/patrickhandsc/v13/0nkwC9f7MfsBiWcLtY65AWDK873ViSi6JQc7Vg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Patrick Hand SC" - } - ] - }, - { - "name": "Pattaya", - "fontFamily": "Pattaya, sans-serif", - "slug": "pattaya", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/pattaya/v13/ea8ZadcqV_zkHY-XNdCn92ZEmVs.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Pattaya" - } - ] - }, - { - "name": "Patua One", - "fontFamily": "Patua One, system-ui", - "slug": "patua-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/patuaone/v16/ZXuke1cDvLCKLDcimxBI5PNvNA9LuA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Patua One" - } - ] - }, - { - "name": "Pavanam", - "fontFamily": "Pavanam, sans-serif", - "slug": "pavanam", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/pavanam/v11/BXRrvF_aiezLh0xPDOtQ9Wf0QcE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Pavanam" - } - ] - }, - { - "name": "Paytone One", - "fontFamily": "Paytone One, sans-serif", - "slug": "paytone-one", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/paytoneone/v21/0nksC9P7MfYHj2oFtYm2CiTqivr9iBq_.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Paytone One" - } - ] - }, - { - "name": "Peddana", - "fontFamily": "Peddana, serif", - "slug": "peddana", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/peddana/v20/aFTU7PBhaX89UcKWhh2aBYyMcKw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Peddana" - } - ] - }, - { - "name": "Peralta", - "fontFamily": "Peralta, system-ui", - "slug": "peralta", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/peralta/v17/hYkJPu0-RP_9d3kRGxAhrv956B8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Peralta" - } - ] - }, - { - "name": "Permanent Marker", - "fontFamily": "Permanent Marker, cursive", - "slug": "permanent-marker", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/permanentmarker/v16/Fh4uPib9Iyv2ucM6pGQMWimMp004HaqIfrT5nlk.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Permanent Marker" - } - ] - }, - { - "name": "Petemoss", - "fontFamily": "Petemoss, cursive", - "slug": "petemoss", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/petemoss/v5/A2BZn5tA2xgtGWHZgxkesKb9UouQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Petemoss" - } - ] - }, - { - "name": "Petit Formal Script", - "fontFamily": "Petit Formal Script, cursive", - "slug": "petit-formal-script", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/petitformalscript/v14/B50TF6xQr2TXJBnGOFME6u5OR83oRP5qoHnqP4gZSiE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Petit Formal Script" - } - ] - }, - { - "name": "Petrona", - "fontFamily": "Petrona, serif", - "slug": "petrona", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/petrona/v32/mtGl4_NXL7bZo9XXq35wRLONYyOjFk6NsARBH452Mvds.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Petrona" - }, - { - "src": "http://fonts.gstatic.com/s/petrona/v32/mtGl4_NXL7bZo9XXq35wRLONYyOjFk4NsQRBH452Mvds.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Petrona" - }, - { - "src": "http://fonts.gstatic.com/s/petrona/v32/mtGl4_NXL7bZo9XXq35wRLONYyOjFk7TsQRBH452Mvds.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Petrona" - }, - { - "src": "http://fonts.gstatic.com/s/petrona/v32/mtGl4_NXL7bZo9XXq35wRLONYyOjFk6NsQRBH452Mvds.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Petrona" - }, - { - "src": "http://fonts.gstatic.com/s/petrona/v32/mtGl4_NXL7bZo9XXq35wRLONYyOjFk6_sQRBH452Mvds.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Petrona" - }, - { - "src": "http://fonts.gstatic.com/s/petrona/v32/mtGl4_NXL7bZo9XXq35wRLONYyOjFk5TtgRBH452Mvds.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Petrona" - }, - { - "src": "http://fonts.gstatic.com/s/petrona/v32/mtGl4_NXL7bZo9XXq35wRLONYyOjFk5qtgRBH452Mvds.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Petrona" - }, - { - "src": "http://fonts.gstatic.com/s/petrona/v32/mtGl4_NXL7bZo9XXq35wRLONYyOjFk4NtgRBH452Mvds.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Petrona" - }, - { - "src": "http://fonts.gstatic.com/s/petrona/v32/mtGl4_NXL7bZo9XXq35wRLONYyOjFk4ktgRBH452Mvds.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Petrona" - }, - { - "src": "http://fonts.gstatic.com/s/petrona/v32/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8uwDFYpUN-dsIWs.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Petrona" - }, - { - "src": "http://fonts.gstatic.com/s/petrona/v32/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8mwCFYpUN-dsIWs.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Petrona" - }, - { - "src": "http://fonts.gstatic.com/s/petrona/v32/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8rICFYpUN-dsIWs.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Petrona" - }, - { - "src": "http://fonts.gstatic.com/s/petrona/v32/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8uwCFYpUN-dsIWs.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Petrona" - }, - { - "src": "http://fonts.gstatic.com/s/petrona/v32/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8t4CFYpUN-dsIWs.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Petrona" - }, - { - "src": "http://fonts.gstatic.com/s/petrona/v32/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8jIFFYpUN-dsIWs.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Petrona" - }, - { - "src": "http://fonts.gstatic.com/s/petrona/v32/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8gsFFYpUN-dsIWs.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Petrona" - }, - { - "src": "http://fonts.gstatic.com/s/petrona/v32/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8mwFFYpUN-dsIWs.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Petrona" - }, - { - "src": "http://fonts.gstatic.com/s/petrona/v32/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8kUFFYpUN-dsIWs.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Petrona" - } - ] - }, - { - "name": "Philosopher", - "fontFamily": "Philosopher, sans-serif", - "slug": "philosopher", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/philosopher/v19/vEFV2_5QCwIS4_Dhez5jcVBpRUwU08qe.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Philosopher" - }, - { - "src": "http://fonts.gstatic.com/s/philosopher/v19/vEFX2_5QCwIS4_Dhez5jcWBrT0g21tqeR7c.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Philosopher" - }, - { - "src": "http://fonts.gstatic.com/s/philosopher/v19/vEFI2_5QCwIS4_Dhez5jcWjVamgc-NaXXq7H.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Philosopher" - }, - { - "src": "http://fonts.gstatic.com/s/philosopher/v19/vEFK2_5QCwIS4_Dhez5jcWBrd_QZ8tK1W77HtMo.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Philosopher" - } - ] - }, - { - "name": "Phudu", - "fontFamily": "Phudu, system-ui", - "slug": "phudu", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/phudu/v1/0FlJVPSHk0ya-7OUeO_U-Lwm7PkK62zUSwWuz38Tgg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Phudu" - }, - { - "src": "http://fonts.gstatic.com/s/phudu/v1/0FlJVPSHk0ya-7OUeO_U-Lwm7PkKtWzUSwWuz38Tgg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Phudu" - }, - { - "src": "http://fonts.gstatic.com/s/phudu/v1/0FlJVPSHk0ya-7OUeO_U-Lwm7PkKh2zUSwWuz38Tgg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Phudu" - }, - { - "src": "http://fonts.gstatic.com/s/phudu/v1/0FlJVPSHk0ya-7OUeO_U-Lwm7PkKa2vUSwWuz38Tgg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Phudu" - }, - { - "src": "http://fonts.gstatic.com/s/phudu/v1/0FlJVPSHk0ya-7OUeO_U-Lwm7PkKUmvUSwWuz38Tgg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Phudu" - }, - { - "src": "http://fonts.gstatic.com/s/phudu/v1/0FlJVPSHk0ya-7OUeO_U-Lwm7PkKNWvUSwWuz38Tgg.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Phudu" - }, - { - "src": "http://fonts.gstatic.com/s/phudu/v1/0FlJVPSHk0ya-7OUeO_U-Lwm7PkKHGvUSwWuz38Tgg.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Phudu" - } - ] - }, - { - "name": "Piazzolla", - "fontFamily": "Piazzolla, serif", - "slug": "piazzolla", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7LYx3Ly1AHfAAy5.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Piazzolla" - }, - { - "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7JYxnLy1AHfAAy5.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Piazzolla" - }, - { - "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7KGxnLy1AHfAAy5.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Piazzolla" - }, - { - "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7LYxnLy1AHfAAy5.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Piazzolla" - }, - { - "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7LqxnLy1AHfAAy5.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Piazzolla" - }, - { - "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7IGwXLy1AHfAAy5.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Piazzolla" - }, - { - "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7I_wXLy1AHfAAy5.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Piazzolla" - }, - { - "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7JYwXLy1AHfAAy5.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Piazzolla" - }, - { - "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7JxwXLy1AHfAAy5.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Piazzolla" - }, - { - "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhZqw3gX9BRy5m5M.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Piazzolla" - }, - { - "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhRqx3gX9BRy5m5M.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Piazzolla" - }, - { - "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhcSx3gX9BRy5m5M.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Piazzolla" - }, - { - "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhZqx3gX9BRy5m5M.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Piazzolla" - }, - { - "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhaix3gX9BRy5m5M.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Piazzolla" - }, - { - "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhUS23gX9BRy5m5M.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Piazzolla" - }, - { - "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhX223gX9BRy5m5M.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Piazzolla" - }, - { - "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhRq23gX9BRy5m5M.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Piazzolla" - }, - { - "src": "http://fonts.gstatic.com/s/piazzolla/v33/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhTO23gX9BRy5m5M.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Piazzolla" - } - ] - }, - { - "name": "Piedra", - "fontFamily": "Piedra, system-ui", - "slug": "piedra", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/piedra/v22/ke8kOg8aN0Bn7hTunEyHN_M3gA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Piedra" - } - ] - }, - { - "name": "Pinyon Script", - "fontFamily": "Pinyon Script, cursive", - "slug": "pinyon-script", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/pinyonscript/v18/6xKpdSJbL9-e9LuoeQiDRQR8aOLQO4bhiDY.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Pinyon Script" - } - ] - }, - { - "name": "Pirata One", - "fontFamily": "Pirata One, system-ui", - "slug": "pirata-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/pirataone/v22/I_urMpiDvgLdLh0fAtoftiiEr5_BdZ8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Pirata One" - } - ] - }, - { - "name": "Plaster", - "fontFamily": "Plaster, system-ui", - "slug": "plaster", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/plaster/v24/DdTm79QatW80eRh4Ei5JOtLOeLI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Plaster" - } - ] - }, - { - "name": "Play", - "fontFamily": "Play, sans-serif", - "slug": "play", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/play/v17/6aez4K2oVqwIjtI8Hp8Tx3A.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Play" - }, - { - "src": "http://fonts.gstatic.com/s/play/v17/6ae84K2oVqwItm4TOpc423nTJTM.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Play" - } - ] - }, - { - "name": "Playball", - "fontFamily": "Playball, system-ui", - "slug": "playball", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/playball/v17/TK3gWksYAxQ7jbsKcj8Dl-tPKo2t.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Playball" - } - ] - }, - { - "name": "Playfair", - "fontFamily": "Playfair, serif", - "slug": "playfair", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/playfair/v1/0nkQC9D7PO4KhmUJ5_zTZ_4MYQXznAK-bUcZXKO3UMnW6VNpe4-SiiZ4b8h5G3GutPlKetgdoSMw5ifm.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Playfair" - }, - { - "src": "http://fonts.gstatic.com/s/playfair/v1/0nkQC9D7PO4KhmUJ5_zTZ_4MYQXznAK-bUcZXKO3UMnW6VNpe4-SiiZ4b8h5G3GutPkUetgdoSMw5ifm.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Playfair" - }, - { - "src": "http://fonts.gstatic.com/s/playfair/v1/0nkQC9D7PO4KhmUJ5_zTZ_4MYQXznAK-bUcZXKO3UMnW6VNpe4-SiiZ4b8h5G3GutPkmetgdoSMw5ifm.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Playfair" - }, - { - "src": "http://fonts.gstatic.com/s/playfair/v1/0nkQC9D7PO4KhmUJ5_zTZ_4MYQXznAK-bUcZXKO3UMnW6VNpe4-SiiZ4b8h5G3GutPnKfdgdoSMw5ifm.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Playfair" - }, - { - "src": "http://fonts.gstatic.com/s/playfair/v1/0nkQC9D7PO4KhmUJ5_zTZ_4MYQXznAK-bUcZXKO3UMnW6VNpe4-SiiZ4b8h5G3GutPnzfdgdoSMw5ifm.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Playfair" - }, - { - "src": "http://fonts.gstatic.com/s/playfair/v1/0nkQC9D7PO4KhmUJ5_zTZ_4MYQXznAK-bUcZXKO3UMnW6VNpe4-SiiZ4b8h5G3GutPmUfdgdoSMw5ifm.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Playfair" - }, - { - "src": "http://fonts.gstatic.com/s/playfair/v1/0nkQC9D7PO4KhmUJ5_zTZ_4MYQXznAK-bUcZXKO3UMnW6VNpe4-SiiZ4b8h5G3GutPm9fdgdoSMw5ifm.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Playfair" - }, - { - "src": "http://fonts.gstatic.com/s/playfair/v1/0nkSC9D7PO4KhmUJ59baVQ_iWhg0cgSrLQZjFpFUsLCFf_1ubkfQeG9KkBAQcOsAs-zcOW5eqycS4zfmNrE.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Playfair" - }, - { - "src": "http://fonts.gstatic.com/s/playfair/v1/0nkSC9D7PO4KhmUJ59baVQ_iWhg0cgSrLQZjFpFUsLCFf_1ubkfQeG9KkBAQcOsAs-zcOTBeqycS4zfmNrE.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Playfair" - }, - { - "src": "http://fonts.gstatic.com/s/playfair/v1/0nkSC9D7PO4KhmUJ59baVQ_iWhg0cgSrLQZjFpFUsLCFf_1ubkfQeG9KkBAQcOsAs-zcOQJeqycS4zfmNrE.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Playfair" - }, - { - "src": "http://fonts.gstatic.com/s/playfair/v1/0nkSC9D7PO4KhmUJ59baVQ_iWhg0cgSrLQZjFpFUsLCFf_1ubkfQeG9KkBAQcOsAs-zcOe5ZqycS4zfmNrE.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Playfair" - }, - { - "src": "http://fonts.gstatic.com/s/playfair/v1/0nkSC9D7PO4KhmUJ59baVQ_iWhg0cgSrLQZjFpFUsLCFf_1ubkfQeG9KkBAQcOsAs-zcOddZqycS4zfmNrE.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Playfair" - }, - { - "src": "http://fonts.gstatic.com/s/playfair/v1/0nkSC9D7PO4KhmUJ59baVQ_iWhg0cgSrLQZjFpFUsLCFf_1ubkfQeG9KkBAQcOsAs-zcObBZqycS4zfmNrE.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Playfair" - }, - { - "src": "http://fonts.gstatic.com/s/playfair/v1/0nkSC9D7PO4KhmUJ59baVQ_iWhg0cgSrLQZjFpFUsLCFf_1ubkfQeG9KkBAQcOsAs-zcOZlZqycS4zfmNrE.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Playfair" - } - ] - }, - { - "name": "Playfair Display", - "fontFamily": "Playfair Display, serif", - "slug": "playfair-display", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/playfairdisplay/v30/nuFvD-vYSZviVYUb_rj3ij__anPXJzDwcbmjWBN2PKdFvUDQZNLo_U2r.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Playfair Display" - }, - { - "src": "http://fonts.gstatic.com/s/playfairdisplay/v30/nuFvD-vYSZviVYUb_rj3ij__anPXJzDwcbmjWBN2PKd3vUDQZNLo_U2r.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Playfair Display" - }, - { - "src": "http://fonts.gstatic.com/s/playfairdisplay/v30/nuFvD-vYSZviVYUb_rj3ij__anPXJzDwcbmjWBN2PKebukDQZNLo_U2r.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Playfair Display" - }, - { - "src": "http://fonts.gstatic.com/s/playfairdisplay/v30/nuFvD-vYSZviVYUb_rj3ij__anPXJzDwcbmjWBN2PKeiukDQZNLo_U2r.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Playfair Display" - }, - { - "src": "http://fonts.gstatic.com/s/playfairdisplay/v30/nuFvD-vYSZviVYUb_rj3ij__anPXJzDwcbmjWBN2PKfFukDQZNLo_U2r.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Playfair Display" - }, - { - "src": "http://fonts.gstatic.com/s/playfairdisplay/v30/nuFvD-vYSZviVYUb_rj3ij__anPXJzDwcbmjWBN2PKfsukDQZNLo_U2r.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Playfair Display" - }, - { - "src": "http://fonts.gstatic.com/s/playfairdisplay/v30/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_qiTbtbK-F2rA0s.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Playfair Display" - }, - { - "src": "http://fonts.gstatic.com/s/playfairdisplay/v30/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_pqTbtbK-F2rA0s.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Playfair Display" - }, - { - "src": "http://fonts.gstatic.com/s/playfairdisplay/v30/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_naUbtbK-F2rA0s.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Playfair Display" - }, - { - "src": "http://fonts.gstatic.com/s/playfairdisplay/v30/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_k-UbtbK-F2rA0s.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Playfair Display" - }, - { - "src": "http://fonts.gstatic.com/s/playfairdisplay/v30/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_iiUbtbK-F2rA0s.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Playfair Display" - }, - { - "src": "http://fonts.gstatic.com/s/playfairdisplay/v30/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_gGUbtbK-F2rA0s.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Playfair Display" - } - ] - }, - { - "name": "Playfair Display SC", - "fontFamily": "Playfair Display SC, serif", - "slug": "playfair-display-sc", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/playfairdisplaysc/v15/ke85OhoaMkR6-hSn7kbHVoFf7ZfgMPr_pb4GEcM2M4s.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Playfair Display SC" - }, - { - "src": "http://fonts.gstatic.com/s/playfairdisplaysc/v15/ke87OhoaMkR6-hSn7kbHVoFf7ZfgMPr_lbwMFeEzI4sNKg.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Playfair Display SC" - }, - { - "src": "http://fonts.gstatic.com/s/playfairdisplaysc/v15/ke80OhoaMkR6-hSn7kbHVoFf7ZfgMPr_nQIpNcsdL4IUMyE.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Playfair Display SC" - }, - { - "src": "http://fonts.gstatic.com/s/playfairdisplaysc/v15/ke82OhoaMkR6-hSn7kbHVoFf7ZfgMPr_lbw0qc4XK6ARIyH5IA.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Playfair Display SC" - }, - { - "src": "http://fonts.gstatic.com/s/playfairdisplaysc/v15/ke80OhoaMkR6-hSn7kbHVoFf7ZfgMPr_nTorNcsdL4IUMyE.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Playfair Display SC" - }, - { - "src": "http://fonts.gstatic.com/s/playfairdisplaysc/v15/ke82OhoaMkR6-hSn7kbHVoFf7ZfgMPr_lbw0kcwXK6ARIyH5IA.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Playfair Display SC" - } - ] - }, - { - "name": "Plus Jakarta Sans", - "fontFamily": "Plus Jakarta Sans, sans-serif", - "slug": "plus-jakarta-sans", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/plusjakartasans/v7/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_KU7NShXUEKi4Rw.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Plus Jakarta Sans" - }, - { - "src": "http://fonts.gstatic.com/s/plusjakartasans/v7/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_907NShXUEKi4Rw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Plus Jakarta Sans" - }, - { - "src": "http://fonts.gstatic.com/s/plusjakartasans/v7/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_qU7NShXUEKi4Rw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Plus Jakarta Sans" - }, - { - "src": "http://fonts.gstatic.com/s/plusjakartasans/v7/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_m07NShXUEKi4Rw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Plus Jakarta Sans" - }, - { - "src": "http://fonts.gstatic.com/s/plusjakartasans/v7/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_d0nNShXUEKi4Rw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Plus Jakarta Sans" - }, - { - "src": "http://fonts.gstatic.com/s/plusjakartasans/v7/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_TknNShXUEKi4Rw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Plus Jakarta Sans" - }, - { - "src": "http://fonts.gstatic.com/s/plusjakartasans/v7/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_KUnNShXUEKi4Rw.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Plus Jakarta Sans" - }, - { - "src": "http://fonts.gstatic.com/s/plusjakartasans/v7/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ2lCR_QMq2oR82k.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Plus Jakarta Sans" - }, - { - "src": "http://fonts.gstatic.com/s/plusjakartasans/v7/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ17CR_QMq2oR82k.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Plus Jakarta Sans" - }, - { - "src": "http://fonts.gstatic.com/s/plusjakartasans/v7/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ0lCR_QMq2oR82k.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Plus Jakarta Sans" - }, - { - "src": "http://fonts.gstatic.com/s/plusjakartasans/v7/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ0XCR_QMq2oR82k.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Plus Jakarta Sans" - }, - { - "src": "http://fonts.gstatic.com/s/plusjakartasans/v7/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ37Dh_QMq2oR82k.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Plus Jakarta Sans" - }, - { - "src": "http://fonts.gstatic.com/s/plusjakartasans/v7/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ3CDh_QMq2oR82k.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Plus Jakarta Sans" - }, - { - "src": "http://fonts.gstatic.com/s/plusjakartasans/v7/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ2lDh_QMq2oR82k.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Plus Jakarta Sans" - } - ] - }, - { - "name": "Podkova", - "fontFamily": "Podkova, serif", - "slug": "podkova", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/podkova/v26/K2FufZ1EmftJSV9VQpXb1lo9vC3nZWtFzcU4EoporSHH.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Podkova" - }, - { - "src": "http://fonts.gstatic.com/s/podkova/v26/K2FufZ1EmftJSV9VQpXb1lo9vC3nZWt3zcU4EoporSHH.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Podkova" - }, - { - "src": "http://fonts.gstatic.com/s/podkova/v26/K2FufZ1EmftJSV9VQpXb1lo9vC3nZWubysU4EoporSHH.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Podkova" - }, - { - "src": "http://fonts.gstatic.com/s/podkova/v26/K2FufZ1EmftJSV9VQpXb1lo9vC3nZWuiysU4EoporSHH.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Podkova" - }, - { - "src": "http://fonts.gstatic.com/s/podkova/v26/K2FufZ1EmftJSV9VQpXb1lo9vC3nZWvFysU4EoporSHH.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Podkova" - } - ] - }, - { - "name": "Poiret One", - "fontFamily": "Poiret One, system-ui", - "slug": "poiret-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/poiretone/v14/UqyVK80NJXN4zfRgbdfbk5lWVscxdKE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Poiret One" - } - ] - }, - { - "name": "Poller One", - "fontFamily": "Poller One, system-ui", - "slug": "poller-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/pollerone/v19/ahccv82n0TN3gia5E4Bud-lbgUS5u0s.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Poller One" - } - ] - }, - { - "name": "Poltawski Nowy", - "fontFamily": "Poltawski Nowy, serif", - "slug": "poltawski-nowy", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/poltawskinowy/v2/flUsRq6ww480U1xsUpFXD-iDBNlSAOLkKCLnWq8KqCWnDS6V5CzCoQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Poltawski Nowy" - }, - { - "src": "http://fonts.gstatic.com/s/poltawskinowy/v2/flUsRq6ww480U1xsUpFXD-iDBNlSAOLkKCLnWq8KmiWnDS6V5CzCoQ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Poltawski Nowy" - }, - { - "src": "http://fonts.gstatic.com/s/poltawskinowy/v2/flUsRq6ww480U1xsUpFXD-iDBNlSAOLkKCLnWq8KdiKnDS6V5CzCoQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Poltawski Nowy" - }, - { - "src": "http://fonts.gstatic.com/s/poltawskinowy/v2/flUsRq6ww480U1xsUpFXD-iDBNlSAOLkKCLnWq8KTyKnDS6V5CzCoQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Poltawski Nowy" - }, - { - "src": "http://fonts.gstatic.com/s/poltawskinowy/v2/flUuRq6ww480U1xsUpFXD-iDBPNbMh08QUl99KgfYGZPTiSRxinSoROp.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Poltawski Nowy" - }, - { - "src": "http://fonts.gstatic.com/s/poltawskinowy/v2/flUuRq6ww480U1xsUpFXD-iDBPNbMh08QUl99KgfYGZ9TiSRxinSoROp.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Poltawski Nowy" - }, - { - "src": "http://fonts.gstatic.com/s/poltawskinowy/v2/flUuRq6ww480U1xsUpFXD-iDBPNbMh08QUl99KgfYGaRSSSRxinSoROp.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Poltawski Nowy" - }, - { - "src": "http://fonts.gstatic.com/s/poltawskinowy/v2/flUuRq6ww480U1xsUpFXD-iDBPNbMh08QUl99KgfYGaoSSSRxinSoROp.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Poltawski Nowy" - } - ] - }, - { - "name": "Poly", - "fontFamily": "Poly, serif", - "slug": "poly", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/poly/v16/MQpb-W6wKNitRLCAq2Lpris.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Poly" - }, - { - "src": "http://fonts.gstatic.com/s/poly/v16/MQpV-W6wKNitdLKKr0DsviuGWA.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Poly" - } - ] - }, - { - "name": "Pompiere", - "fontFamily": "Pompiere, system-ui", - "slug": "pompiere", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/pompiere/v15/VEMyRoxis5Dwuyeov6Wt5jDtreOL.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Pompiere" - } - ] - }, - { - "name": "Pontano Sans", - "fontFamily": "Pontano Sans, sans-serif", - "slug": "pontano-sans", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/pontanosans/v16/qFdW35GdgYR8EzR6oBLDHa3wyRf8W8eBM6XLOSzMncaMp9gzWsE.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Pontano Sans" - }, - { - "src": "http://fonts.gstatic.com/s/pontanosans/v16/qFdW35GdgYR8EzR6oBLDHa3wyRf8W8eBM6XLOXLMncaMp9gzWsE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Pontano Sans" - }, - { - "src": "http://fonts.gstatic.com/s/pontanosans/v16/qFdW35GdgYR8EzR6oBLDHa3wyRf8W8eBM6XLOUDMncaMp9gzWsE.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Pontano Sans" - }, - { - "src": "http://fonts.gstatic.com/s/pontanosans/v16/qFdW35GdgYR8EzR6oBLDHa3wyRf8W8eBM6XLOazLncaMp9gzWsE.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Pontano Sans" - }, - { - "src": "http://fonts.gstatic.com/s/pontanosans/v16/qFdW35GdgYR8EzR6oBLDHa3wyRf8W8eBM6XLOZXLncaMp9gzWsE.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Pontano Sans" - } - ] - }, - { - "name": "Poor Story", - "fontFamily": "Poor Story, system-ui", - "slug": "poor-story", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/poorstory/v20/jizfREFUsnUct9P6cDfd4OmnLD0Z4zM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Poor Story" - } - ] - }, - { - "name": "Poppins", - "fontFamily": "Poppins, sans-serif", - "slug": "poppins", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/poppins/v20/pxiGyp8kv8JHgFVrLPTed3FBGPaTSQ.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Poppins" - }, - { - "src": "http://fonts.gstatic.com/s/poppins/v20/pxiAyp8kv8JHgFVrJJLmE3tFOvODSVFF.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Poppins" - }, - { - "src": "http://fonts.gstatic.com/s/poppins/v20/pxiByp8kv8JHgFVrLFj_V1tvFP-KUEg.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Poppins" - }, - { - "src": "http://fonts.gstatic.com/s/poppins/v20/pxiDyp8kv8JHgFVrJJLmv1plEN2PQEhcqw.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Poppins" - }, - { - "src": "http://fonts.gstatic.com/s/poppins/v20/pxiByp8kv8JHgFVrLDz8V1tvFP-KUEg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Poppins" - }, - { - "src": "http://fonts.gstatic.com/s/poppins/v20/pxiDyp8kv8JHgFVrJJLm21llEN2PQEhcqw.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Poppins" - }, - { - "src": "http://fonts.gstatic.com/s/poppins/v20/pxiEyp8kv8JHgFVrFJDUc1NECPY.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Poppins" - }, - { - "src": "http://fonts.gstatic.com/s/poppins/v20/pxiGyp8kv8JHgFVrJJLed3FBGPaTSQ.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Poppins" - }, - { - "src": "http://fonts.gstatic.com/s/poppins/v20/pxiByp8kv8JHgFVrLGT9V1tvFP-KUEg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Poppins" - }, - { - "src": "http://fonts.gstatic.com/s/poppins/v20/pxiDyp8kv8JHgFVrJJLmg1hlEN2PQEhcqw.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Poppins" - }, - { - "src": "http://fonts.gstatic.com/s/poppins/v20/pxiByp8kv8JHgFVrLEj6V1tvFP-KUEg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Poppins" - }, - { - "src": "http://fonts.gstatic.com/s/poppins/v20/pxiDyp8kv8JHgFVrJJLmr19lEN2PQEhcqw.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Poppins" - }, - { - "src": "http://fonts.gstatic.com/s/poppins/v20/pxiByp8kv8JHgFVrLCz7V1tvFP-KUEg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Poppins" - }, - { - "src": "http://fonts.gstatic.com/s/poppins/v20/pxiDyp8kv8JHgFVrJJLmy15lEN2PQEhcqw.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Poppins" - }, - { - "src": "http://fonts.gstatic.com/s/poppins/v20/pxiByp8kv8JHgFVrLDD4V1tvFP-KUEg.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Poppins" - }, - { - "src": "http://fonts.gstatic.com/s/poppins/v20/pxiDyp8kv8JHgFVrJJLm111lEN2PQEhcqw.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Poppins" - }, - { - "src": "http://fonts.gstatic.com/s/poppins/v20/pxiByp8kv8JHgFVrLBT5V1tvFP-KUEg.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Poppins" - }, - { - "src": "http://fonts.gstatic.com/s/poppins/v20/pxiDyp8kv8JHgFVrJJLm81xlEN2PQEhcqw.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Poppins" - } - ] - }, - { - "name": "Port Lligat Sans", - "fontFamily": "Port Lligat Sans, sans-serif", - "slug": "port-lligat-sans", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/portlligatsans/v18/kmKmZrYrGBbdN1aV7Vokow6Lw4s4l7N0Tx4xEcQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Port Lligat Sans" - } - ] - }, - { - "name": "Port Lligat Slab", - "fontFamily": "Port Lligat Slab, serif", - "slug": "port-lligat-slab", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/portlligatslab/v21/LDIpaoiQNgArA8kR7ulhZ8P_NYOss7ob9yGLmfI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Port Lligat Slab" - } - ] - }, - { - "name": "Potta One", - "fontFamily": "Potta One, system-ui", - "slug": "potta-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/pottaone/v16/FeVSS05Bp6cy7xI-YfxQ3Z5nm29Gww.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Potta One" - } - ] - }, - { - "name": "Pragati Narrow", - "fontFamily": "Pragati Narrow, sans-serif", - "slug": "pragati-narrow", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/pragatinarrow/v13/vm8vdRf0T0bS1ffgsPB7WZ-mD17_ytN3M48a.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Pragati Narrow" - }, - { - "src": "http://fonts.gstatic.com/s/pragatinarrow/v13/vm8sdRf0T0bS1ffgsPB7WZ-mD2ZD5fd_GJMTlo_4.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Pragati Narrow" - } - ] - }, - { - "name": "Praise", - "fontFamily": "Praise, cursive", - "slug": "praise", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/praise/v5/qkBUXvUZ-cnFXcFyDvO67L9XmQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Praise" - } - ] - }, - { - "name": "Prata", - "fontFamily": "Prata, serif", - "slug": "prata", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/prata/v18/6xKhdSpbNNCT-vWIAG_5LWwJ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Prata" - } - ] - }, - { - "name": "Preahvihear", - "fontFamily": "Preahvihear, sans-serif", - "slug": "preahvihear", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/preahvihear/v27/6NUS8F-dNQeEYhzj7uluxswE49FJf8Wv.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Preahvihear" - } - ] - }, - { - "name": "Press Start 2P", - "fontFamily": "Press Start 2P, system-ui", - "slug": "press-start-2p", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/pressstart2p/v15/e3t4euO8T-267oIAQAu6jDQyK0nSgPJE4580.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Press Start 2P" - } - ] - }, - { - "name": "Pridi", - "fontFamily": "Pridi, serif", - "slug": "pridi", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/pridi/v11/2sDdZG5JnZLfkc1SiE0jRUG0AqUc.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Pridi" - }, - { - "src": "http://fonts.gstatic.com/s/pridi/v11/2sDdZG5JnZLfkc02i00jRUG0AqUc.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Pridi" - }, - { - "src": "http://fonts.gstatic.com/s/pridi/v11/2sDQZG5JnZLfkfWao2krbl29.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Pridi" - }, - { - "src": "http://fonts.gstatic.com/s/pridi/v11/2sDdZG5JnZLfkc1uik0jRUG0AqUc.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Pridi" - }, - { - "src": "http://fonts.gstatic.com/s/pridi/v11/2sDdZG5JnZLfkc1CjU0jRUG0AqUc.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Pridi" - }, - { - "src": "http://fonts.gstatic.com/s/pridi/v11/2sDdZG5JnZLfkc0mjE0jRUG0AqUc.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Pridi" - } - ] - }, - { - "name": "Princess Sofia", - "fontFamily": "Princess Sofia, cursive", - "slug": "princess-sofia", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/princesssofia/v22/qWczB6yguIb8DZ_GXZst16n7GRz7mDUoupoI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Princess Sofia" - } - ] - }, - { - "name": "Prociono", - "fontFamily": "Prociono, serif", - "slug": "prociono", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/prociono/v22/r05YGLlR-KxAf9GGO8upyDYtStiJ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Prociono" - } - ] - }, - { - "name": "Prompt", - "fontFamily": "Prompt, sans-serif", - "slug": "prompt", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/prompt/v10/-W_9XJnvUD7dzB2CA9oYREcjeo0k.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Prompt" - }, - { - "src": "http://fonts.gstatic.com/s/prompt/v10/-W_7XJnvUD7dzB2KZeJ8TkMBf50kbiM.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Prompt" - }, - { - "src": "http://fonts.gstatic.com/s/prompt/v10/-W_8XJnvUD7dzB2Cr_s4bmkvc5Q9dw.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Prompt" - }, - { - "src": "http://fonts.gstatic.com/s/prompt/v10/-W_6XJnvUD7dzB2KZeLQb2MrUZEtdzow.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Prompt" - }, - { - "src": "http://fonts.gstatic.com/s/prompt/v10/-W_8XJnvUD7dzB2Cy_g4bmkvc5Q9dw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Prompt" - }, - { - "src": "http://fonts.gstatic.com/s/prompt/v10/-W_6XJnvUD7dzB2KZeK0bGMrUZEtdzow.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Prompt" - }, - { - "src": "http://fonts.gstatic.com/s/prompt/v10/-W__XJnvUD7dzB26Z9AcZkIzeg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Prompt" - }, - { - "src": "http://fonts.gstatic.com/s/prompt/v10/-W_9XJnvUD7dzB2KZdoYREcjeo0k.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Prompt" - }, - { - "src": "http://fonts.gstatic.com/s/prompt/v10/-W_8XJnvUD7dzB2Ck_k4bmkvc5Q9dw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Prompt" - }, - { - "src": "http://fonts.gstatic.com/s/prompt/v10/-W_6XJnvUD7dzB2KZeLsbWMrUZEtdzow.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Prompt" - }, - { - "src": "http://fonts.gstatic.com/s/prompt/v10/-W_8XJnvUD7dzB2Cv_44bmkvc5Q9dw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Prompt" - }, - { - "src": "http://fonts.gstatic.com/s/prompt/v10/-W_6XJnvUD7dzB2KZeLAamMrUZEtdzow.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Prompt" - }, - { - "src": "http://fonts.gstatic.com/s/prompt/v10/-W_8XJnvUD7dzB2C2_84bmkvc5Q9dw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Prompt" - }, - { - "src": "http://fonts.gstatic.com/s/prompt/v10/-W_6XJnvUD7dzB2KZeKka2MrUZEtdzow.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Prompt" - }, - { - "src": "http://fonts.gstatic.com/s/prompt/v10/-W_8XJnvUD7dzB2Cx_w4bmkvc5Q9dw.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Prompt" - }, - { - "src": "http://fonts.gstatic.com/s/prompt/v10/-W_6XJnvUD7dzB2KZeK4aGMrUZEtdzow.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Prompt" - }, - { - "src": "http://fonts.gstatic.com/s/prompt/v10/-W_8XJnvUD7dzB2C4_04bmkvc5Q9dw.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Prompt" - }, - { - "src": "http://fonts.gstatic.com/s/prompt/v10/-W_6XJnvUD7dzB2KZeKcaWMrUZEtdzow.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Prompt" - } - ] - }, - { - "name": "Prosto One", - "fontFamily": "Prosto One, system-ui", - "slug": "prosto-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/prostoone/v17/OpNJno4VhNfK-RgpwWWxpipfWhXD00c.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Prosto One" - } - ] - }, - { - "name": "Proza Libre", - "fontFamily": "Proza Libre, sans-serif", - "slug": "proza-libre", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/prozalibre/v9/LYjGdGHgj0k1DIQRyUEyyHovftvXWYyz.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Proza Libre" - }, - { - "src": "http://fonts.gstatic.com/s/prozalibre/v9/LYjEdGHgj0k1DIQRyUEyyEotdN_1XJyz7zc.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Proza Libre" - }, - { - "src": "http://fonts.gstatic.com/s/prozalibre/v9/LYjbdGHgj0k1DIQRyUEyyELbV__fcpC69i6N.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Proza Libre" - }, - { - "src": "http://fonts.gstatic.com/s/prozalibre/v9/LYjZdGHgj0k1DIQRyUEyyEotTCvceJSY8z6Np1k.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Proza Libre" - }, - { - "src": "http://fonts.gstatic.com/s/prozalibre/v9/LYjbdGHgj0k1DIQRyUEyyEL3UP_fcpC69i6N.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Proza Libre" - }, - { - "src": "http://fonts.gstatic.com/s/prozalibre/v9/LYjZdGHgj0k1DIQRyUEyyEotTAfbeJSY8z6Np1k.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Proza Libre" - }, - { - "src": "http://fonts.gstatic.com/s/prozalibre/v9/LYjbdGHgj0k1DIQRyUEyyEKTUf_fcpC69i6N.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Proza Libre" - }, - { - "src": "http://fonts.gstatic.com/s/prozalibre/v9/LYjZdGHgj0k1DIQRyUEyyEotTGPaeJSY8z6Np1k.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Proza Libre" - }, - { - "src": "http://fonts.gstatic.com/s/prozalibre/v9/LYjbdGHgj0k1DIQRyUEyyEKPUv_fcpC69i6N.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Proza Libre" - }, - { - "src": "http://fonts.gstatic.com/s/prozalibre/v9/LYjZdGHgj0k1DIQRyUEyyEotTH_ZeJSY8z6Np1k.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Proza Libre" - } - ] - }, - { - "name": "Public Sans", - "fontFamily": "Public Sans, sans-serif", - "slug": "public-sans", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuFpi5ww0pX189fg.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Public Sans" - }, - { - "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymulpm5ww0pX189fg.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Public Sans" - }, - { - "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuSJm5ww0pX189fg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Public Sans" - }, - { - "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuFpm5ww0pX189fg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Public Sans" - }, - { - "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuJJm5ww0pX189fg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Public Sans" - }, - { - "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuyJ65ww0pX189fg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Public Sans" - }, - { - "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymu8Z65ww0pX189fg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Public Sans" - }, - { - "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymulp65ww0pX189fg.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Public Sans" - }, - { - "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuv565ww0pX189fg.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Public Sans" - }, - { - "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tpRgQctfVotfj7j.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Public Sans" - }, - { - "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673trRgActfVotfj7j.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Public Sans" - }, - { - "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673toPgActfVotfj7j.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Public Sans" - }, - { - "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tpRgActfVotfj7j.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Public Sans" - }, - { - "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tpjgActfVotfj7j.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Public Sans" - }, - { - "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tqPhwctfVotfj7j.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Public Sans" - }, - { - "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tq2hwctfVotfj7j.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Public Sans" - }, - { - "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673trRhwctfVotfj7j.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Public Sans" - }, - { - "src": "http://fonts.gstatic.com/s/publicsans/v14/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tr4hwctfVotfj7j.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Public Sans" - } - ] - }, - { - "name": "Puppies Play", - "fontFamily": "Puppies Play, cursive", - "slug": "puppies-play", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/puppiesplay/v6/wlp2gwHZEV99rG6M3NR9uB9vaAJSA_JN3Q.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Puppies Play" - } - ] - }, - { - "name": "Puritan", - "fontFamily": "Puritan, sans-serif", - "slug": "puritan", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/puritan/v24/845YNMgkAJ2VTtIo9JrwRdaI50M.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Puritan" - }, - { - "src": "http://fonts.gstatic.com/s/puritan/v24/845aNMgkAJ2VTtIoxJj6QfSN90PfXA.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Puritan" - }, - { - "src": "http://fonts.gstatic.com/s/puritan/v24/845dNMgkAJ2VTtIozCbfYd6j-0rGRes.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Puritan" - }, - { - "src": "http://fonts.gstatic.com/s/puritan/v24/845fNMgkAJ2VTtIoxJjC_dup_2jDVevnLQ.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Puritan" - } - ] - }, - { - "name": "Purple Purse", - "fontFamily": "Purple Purse, system-ui", - "slug": "purple-purse", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/purplepurse/v21/qWctB66gv53iAp-Vfs4My6qyeBb_ujA4ug.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Purple Purse" - } - ] - }, - { - "name": "Qahiri", - "fontFamily": "Qahiri, sans-serif", - "slug": "qahiri", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/qahiri/v9/tsssAp1RZy0C_hGuU3Chrnmupw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Qahiri" - } - ] - }, - { - "name": "Quando", - "fontFamily": "Quando, serif", - "slug": "quando", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/quando/v14/xMQVuFNaVa6YuW0pC6WzKX_QmA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Quando" - } - ] - }, - { - "name": "Quantico", - "fontFamily": "Quantico, sans-serif", - "slug": "quantico", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/quantico/v15/rax-HiSdp9cPL3KIF4xsLjxSmlLZ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Quantico" - }, - { - "src": "http://fonts.gstatic.com/s/quantico/v15/rax4HiSdp9cPL3KIF7xuJDhwn0LZ6T8.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Quantico" - }, - { - "src": "http://fonts.gstatic.com/s/quantico/v15/rax5HiSdp9cPL3KIF7TQARhasU7Q8Cad.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Quantico" - }, - { - "src": "http://fonts.gstatic.com/s/quantico/v15/rax7HiSdp9cPL3KIF7xuHIRfu0ry9TadML4.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Quantico" - } - ] - }, - { - "name": "Quattrocento", - "fontFamily": "Quattrocento, serif", - "slug": "quattrocento", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/quattrocento/v18/OZpEg_xvsDZQL_LKIF7q4jPHxGL7f4jFuA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Quattrocento" - }, - { - "src": "http://fonts.gstatic.com/s/quattrocento/v18/OZpbg_xvsDZQL_LKIF7q4jP_eE3fd6PZsXcM9w.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Quattrocento" - } - ] - }, - { - "name": "Quattrocento Sans", - "fontFamily": "Quattrocento Sans, sans-serif", - "slug": "quattrocento-sans", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/quattrocentosans/v18/va9c4lja2NVIDdIAAoMR5MfuElaRB3zOvU7eHGHJ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Quattrocento Sans" - }, - { - "src": "http://fonts.gstatic.com/s/quattrocentosans/v18/va9a4lja2NVIDdIAAoMR5MfuElaRB0zMt0r8GXHJkLI.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Quattrocento Sans" - }, - { - "src": "http://fonts.gstatic.com/s/quattrocentosans/v18/va9Z4lja2NVIDdIAAoMR5MfuElaRB0RykmrWN33AiasJ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Quattrocento Sans" - }, - { - "src": "http://fonts.gstatic.com/s/quattrocentosans/v18/va9X4lja2NVIDdIAAoMR5MfuElaRB0zMj_bTPXnijLsJV7E.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Quattrocento Sans" - } - ] - }, - { - "name": "Questrial", - "fontFamily": "Questrial, sans-serif", - "slug": "questrial", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/questrial/v18/QdVUSTchPBm7nuUeVf7EuStkm20oJA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Questrial" - } - ] - }, - { - "name": "Quicksand", - "fontFamily": "Quicksand, sans-serif", - "slug": "quicksand", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/quicksand/v30/6xK-dSZaM9iE8KbpRA_LJ3z8mH9BOJvgkKEo18G0wx40QDw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Quicksand" - }, - { - "src": "http://fonts.gstatic.com/s/quicksand/v30/6xK-dSZaM9iE8KbpRA_LJ3z8mH9BOJvgkP8o18G0wx40QDw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Quicksand" - }, - { - "src": "http://fonts.gstatic.com/s/quicksand/v30/6xK-dSZaM9iE8KbpRA_LJ3z8mH9BOJvgkM0o18G0wx40QDw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Quicksand" - }, - { - "src": "http://fonts.gstatic.com/s/quicksand/v30/6xK-dSZaM9iE8KbpRA_LJ3z8mH9BOJvgkCEv18G0wx40QDw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Quicksand" - }, - { - "src": "http://fonts.gstatic.com/s/quicksand/v30/6xK-dSZaM9iE8KbpRA_LJ3z8mH9BOJvgkBgv18G0wx40QDw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Quicksand" - } - ] - }, - { - "name": "Quintessential", - "fontFamily": "Quintessential, cursive", - "slug": "quintessential", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/quintessential/v20/fdNn9sOGq31Yjnh3qWU14DdtjY5wS7kmAyxM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Quintessential" - } - ] - }, - { - "name": "Qwigley", - "fontFamily": "Qwigley, cursive", - "slug": "qwigley", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/qwigley/v16/1cXzaU3UGJb5tGoCuVxsi1mBmcE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Qwigley" - } - ] - }, - { - "name": "Qwitcher Grypen", - "fontFamily": "Qwitcher Grypen, cursive", - "slug": "qwitcher-grypen", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/qwitchergrypen/v3/pxicypclp9tDilN9RrC5BSI1dZmrSGNAom-wpw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Qwitcher Grypen" - }, - { - "src": "http://fonts.gstatic.com/s/qwitchergrypen/v3/pxiZypclp9tDilN9RrC5BSI1dZmT9ExkqkSsrvNXiA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Qwitcher Grypen" - } - ] - }, - { - "name": "Racing Sans One", - "fontFamily": "Racing Sans One, system-ui", - "slug": "racing-sans-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/racingsansone/v13/sykr-yRtm7EvTrXNxkv5jfKKyDCwL3rmWpIBtA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Racing Sans One" - } - ] - }, - { - "name": "Radio Canada", - "fontFamily": "Radio Canada, sans-serif", - "slug": "radio-canada", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/radiocanada/v21/XRX13ISXn0dBMcibU6jlAqr3ejLv5OLZYiYXik6db2P4jxxlsls-0nESkQPIJOdSSfOT.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Radio Canada" - }, - { - "src": "http://fonts.gstatic.com/s/radiocanada/v21/XRX13ISXn0dBMcibU6jlAqr3ejLv5OLZYiYXik6db2P4jxxlsls-0nFMkQPIJOdSSfOT.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Radio Canada" - }, - { - "src": "http://fonts.gstatic.com/s/radiocanada/v21/XRX13ISXn0dBMcibU6jlAqr3ejLv5OLZYiYXik6db2P4jxxlsls-0nF-kQPIJOdSSfOT.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Radio Canada" - }, - { - "src": "http://fonts.gstatic.com/s/radiocanada/v21/XRX13ISXn0dBMcibU6jlAqr3ejLv5OLZYiYXik6db2P4jxxlsls-0nGSlgPIJOdSSfOT.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Radio Canada" - }, - { - "src": "http://fonts.gstatic.com/s/radiocanada/v21/XRX13ISXn0dBMcibU6jlAqr3ejLv5OLZYiYXik6db2P4jxxlsls-0nGrlgPIJOdSSfOT.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Radio Canada" - }, - { - "src": "http://fonts.gstatic.com/s/radiocanada/v21/XRX33ISXn0dBMcibU6jlAqrdcwAMBJuK9IgQn4bfnSrKcMQM2cGQ1WSE0rWLLuNwTOOTa9k.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Radio Canada" - }, - { - "src": "http://fonts.gstatic.com/s/radiocanada/v21/XRX33ISXn0dBMcibU6jlAqrdcwAMBJuK9IgQn4bfnSrKcMQM2cGQ1WSE0uuLLuNwTOOTa9k.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Radio Canada" - }, - { - "src": "http://fonts.gstatic.com/s/radiocanada/v21/XRX33ISXn0dBMcibU6jlAqrdcwAMBJuK9IgQn4bfnSrKcMQM2cGQ1WSE0tmLLuNwTOOTa9k.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Radio Canada" - }, - { - "src": "http://fonts.gstatic.com/s/radiocanada/v21/XRX33ISXn0dBMcibU6jlAqrdcwAMBJuK9IgQn4bfnSrKcMQM2cGQ1WSE0jWMLuNwTOOTa9k.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Radio Canada" - }, - { - "src": "http://fonts.gstatic.com/s/radiocanada/v21/XRX33ISXn0dBMcibU6jlAqrdcwAMBJuK9IgQn4bfnSrKcMQM2cGQ1WSE0gyMLuNwTOOTa9k.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Radio Canada" - } - ] - }, - { - "name": "Radley", - "fontFamily": "Radley, serif", - "slug": "radley", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/radley/v20/LYjDdGzinEIjCN19oAlEpVs3VQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Radley" - }, - { - "src": "http://fonts.gstatic.com/s/radley/v20/LYjBdGzinEIjCN1NogNAh14nVcfe.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Radley" - } - ] - }, - { - "name": "Rajdhani", - "fontFamily": "Rajdhani, sans-serif", - "slug": "rajdhani", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rajdhani/v15/LDI2apCSOBg7S-QT7pasEcOsc-bGkqIw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Rajdhani" - }, - { - "src": "http://fonts.gstatic.com/s/rajdhani/v15/LDIxapCSOBg7S-QT7q4AOeekWPrP.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rajdhani" - }, - { - "src": "http://fonts.gstatic.com/s/rajdhani/v15/LDI2apCSOBg7S-QT7pb0EMOsc-bGkqIw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Rajdhani" - }, - { - "src": "http://fonts.gstatic.com/s/rajdhani/v15/LDI2apCSOBg7S-QT7pbYF8Osc-bGkqIw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Rajdhani" - }, - { - "src": "http://fonts.gstatic.com/s/rajdhani/v15/LDI2apCSOBg7S-QT7pa8FsOsc-bGkqIw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Rajdhani" - } - ] - }, - { - "name": "Rakkas", - "fontFamily": "Rakkas, system-ui", - "slug": "rakkas", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rakkas/v17/Qw3cZQlNHiblL3j_lttPOeMcCw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rakkas" - } - ] - }, - { - "name": "Raleway", - "fontFamily": "Raleway, sans-serif", - "slug": "raleway", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/raleway/v28/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvao4CPNLA3JC9c.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Raleway" - }, - { - "src": "http://fonts.gstatic.com/s/raleway/v28/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVtaooCPNLA3JC9c.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Raleway" - }, - { - "src": "http://fonts.gstatic.com/s/raleway/v28/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVuEooCPNLA3JC9c.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Raleway" - }, - { - "src": "http://fonts.gstatic.com/s/raleway/v28/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvaooCPNLA3JC9c.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Raleway" - }, - { - "src": "http://fonts.gstatic.com/s/raleway/v28/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvoooCPNLA3JC9c.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Raleway" - }, - { - "src": "http://fonts.gstatic.com/s/raleway/v28/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVsEpYCPNLA3JC9c.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Raleway" - }, - { - "src": "http://fonts.gstatic.com/s/raleway/v28/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVs9pYCPNLA3JC9c.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Raleway" - }, - { - "src": "http://fonts.gstatic.com/s/raleway/v28/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVtapYCPNLA3JC9c.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Raleway" - }, - { - "src": "http://fonts.gstatic.com/s/raleway/v28/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVtzpYCPNLA3JC9c.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Raleway" - }, - { - "src": "http://fonts.gstatic.com/s/raleway/v28/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4WjNPrQVIT9c2c8.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Raleway" - }, - { - "src": "http://fonts.gstatic.com/s/raleway/v28/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4ejMPrQVIT9c2c8.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Raleway" - }, - { - "src": "http://fonts.gstatic.com/s/raleway/v28/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4TbMPrQVIT9c2c8.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Raleway" - }, - { - "src": "http://fonts.gstatic.com/s/raleway/v28/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4WjMPrQVIT9c2c8.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Raleway" - }, - { - "src": "http://fonts.gstatic.com/s/raleway/v28/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4VrMPrQVIT9c2c8.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Raleway" - }, - { - "src": "http://fonts.gstatic.com/s/raleway/v28/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4bbLPrQVIT9c2c8.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Raleway" - }, - { - "src": "http://fonts.gstatic.com/s/raleway/v28/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4Y_LPrQVIT9c2c8.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Raleway" - }, - { - "src": "http://fonts.gstatic.com/s/raleway/v28/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4ejLPrQVIT9c2c8.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Raleway" - }, - { - "src": "http://fonts.gstatic.com/s/raleway/v28/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4cHLPrQVIT9c2c8.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Raleway" - } - ] - }, - { - "name": "Raleway Dots", - "fontFamily": "Raleway Dots, system-ui", - "slug": "raleway-dots", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ralewaydots/v14/6NUR8FifJg6AfQvzpshgwJ8kyf9Fdty2ew.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Raleway Dots" - } - ] - }, - { - "name": "Ramabhadra", - "fontFamily": "Ramabhadra, sans-serif", - "slug": "ramabhadra", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ramabhadra/v15/EYq2maBOwqRW9P1SQ83LehNGX5uWw3o.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Ramabhadra" - } - ] - }, - { - "name": "Ramaraja", - "fontFamily": "Ramaraja, serif", - "slug": "ramaraja", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ramaraja/v15/SlGTmQearpYAYG1CABIkqnB6aSQU.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Ramaraja" - } - ] - }, - { - "name": "Rambla", - "fontFamily": "Rambla, sans-serif", - "slug": "rambla", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rambla/v13/snfrs0ip98hx6mr0I7IONthkwQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rambla" - }, - { - "src": "http://fonts.gstatic.com/s/rambla/v13/snfps0ip98hx6mrEIbgKFN10wYKa.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Rambla" - }, - { - "src": "http://fonts.gstatic.com/s/rambla/v13/snfos0ip98hx6mrMn50qPvN4yJuDYQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Rambla" - }, - { - "src": "http://fonts.gstatic.com/s/rambla/v13/snfus0ip98hx6mrEIYC2O_l86p6TYS-Y.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Rambla" - } - ] - }, - { - "name": "Rammetto One", - "fontFamily": "Rammetto One, system-ui", - "slug": "rammetto-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rammettoone/v15/LhWiMV3HOfMbMetJG3lQDpp9Mvuciu-_SQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rammetto One" - } - ] - }, - { - "name": "Rampart One", - "fontFamily": "Rampart One, system-ui", - "slug": "rampart-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rampartone/v7/K2F1fZFGl_JSR1tAWNG9R6qgLS76ZHOM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rampart One" - } - ] - }, - { - "name": "Ranchers", - "fontFamily": "Ranchers, system-ui", - "slug": "ranchers", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ranchers/v14/zrfm0H3Lx-P2Xvs2AoDYDC79XTHv.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Ranchers" - } - ] - }, - { - "name": "Rancho", - "fontFamily": "Rancho, cursive", - "slug": "rancho", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rancho/v17/46kulbzmXjLaqZRlbWXgd0RY1g.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rancho" - } - ] - }, - { - "name": "Ranga", - "fontFamily": "Ranga, system-ui", - "slug": "ranga", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ranga/v18/C8ct4cYisGb28p6CLDwZwmGE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Ranga" - }, - { - "src": "http://fonts.gstatic.com/s/ranga/v18/C8cg4cYisGb28qY-AxgR6X2NZAn2.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Ranga" - } - ] - }, - { - "name": "Rasa", - "fontFamily": "Rasa, serif", - "slug": "rasa", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rasa/v20/xn76YHIn1mWmVKl8ZtAM9NrJfN4YJW41fcvN2KT4.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Rasa" - }, - { - "src": "http://fonts.gstatic.com/s/rasa/v20/xn76YHIn1mWmVKl8ZtAM9NrJfN5GJW41fcvN2KT4.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rasa" - }, - { - "src": "http://fonts.gstatic.com/s/rasa/v20/xn76YHIn1mWmVKl8ZtAM9NrJfN50JW41fcvN2KT4.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Rasa" - }, - { - "src": "http://fonts.gstatic.com/s/rasa/v20/xn76YHIn1mWmVKl8ZtAM9NrJfN6YIm41fcvN2KT4.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Rasa" - }, - { - "src": "http://fonts.gstatic.com/s/rasa/v20/xn76YHIn1mWmVKl8ZtAM9NrJfN6hIm41fcvN2KT4.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Rasa" - }, - { - "src": "http://fonts.gstatic.com/s/rasa/v20/xn78YHIn1mWmfqBOmQhln0Bne8uOZth2d8_v3bT4Ycc.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Rasa" - }, - { - "src": "http://fonts.gstatic.com/s/rasa/v20/xn78YHIn1mWmfqBOmQhln0Bne8uOZoZ2d8_v3bT4Ycc.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Rasa" - }, - { - "src": "http://fonts.gstatic.com/s/rasa/v20/xn78YHIn1mWmfqBOmQhln0Bne8uOZrR2d8_v3bT4Ycc.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Rasa" - }, - { - "src": "http://fonts.gstatic.com/s/rasa/v20/xn78YHIn1mWmfqBOmQhln0Bne8uOZlhxd8_v3bT4Ycc.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Rasa" - }, - { - "src": "http://fonts.gstatic.com/s/rasa/v20/xn78YHIn1mWmfqBOmQhln0Bne8uOZmFxd8_v3bT4Ycc.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Rasa" - } - ] - }, - { - "name": "Rationale", - "fontFamily": "Rationale, sans-serif", - "slug": "rationale", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rationale/v24/9XUnlJ92n0_JFxHIfHcsdlFMzLC2Zw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rationale" - } - ] - }, - { - "name": "Ravi Prakash", - "fontFamily": "Ravi Prakash, system-ui", - "slug": "ravi-prakash", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/raviprakash/v19/gokpH6fsDkVrF9Bv9X8SOAKHmNZEq6TTFw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Ravi Prakash" - } - ] - }, - { - "name": "Readex Pro", - "fontFamily": "Readex Pro, sans-serif", - "slug": "readex-pro", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/readexpro/v21/SLXnc1bJ7HE5YDoGPuzj_dh8uc7wUy8ZQQyX2KY8TL0kGZN6blTCYUSmgmsglvjkag.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Readex Pro" - }, - { - "src": "http://fonts.gstatic.com/s/readexpro/v21/SLXnc1bJ7HE5YDoGPuzj_dh8uc7wUy8ZQQyX2KY8TL0kGZN6blTCv0Smgmsglvjkag.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Readex Pro" - }, - { - "src": "http://fonts.gstatic.com/s/readexpro/v21/SLXnc1bJ7HE5YDoGPuzj_dh8uc7wUy8ZQQyX2KY8TL0kGZN6blTC4USmgmsglvjkag.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Readex Pro" - }, - { - "src": "http://fonts.gstatic.com/s/readexpro/v21/SLXnc1bJ7HE5YDoGPuzj_dh8uc7wUy8ZQQyX2KY8TL0kGZN6blTC00Smgmsglvjkag.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Readex Pro" - }, - { - "src": "http://fonts.gstatic.com/s/readexpro/v21/SLXnc1bJ7HE5YDoGPuzj_dh8uc7wUy8ZQQyX2KY8TL0kGZN6blTCP0Omgmsglvjkag.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Readex Pro" - }, - { - "src": "http://fonts.gstatic.com/s/readexpro/v21/SLXnc1bJ7HE5YDoGPuzj_dh8uc7wUy8ZQQyX2KY8TL0kGZN6blTCBkOmgmsglvjkag.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Readex Pro" - } - ] - }, - { - "name": "Recursive", - "fontFamily": "Recursive, sans-serif", - "slug": "recursive", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/recursive/v37/8vJN7wMr0mhh-RQChyHEH06TlXhq_gukbYrFMk1QuAIcyEwG_X-dpEfaE5YaERmK-CImKsvxvU-MXGX2fSqasNfUvz2xbXfn1uEQadDck018vwxjDJCL.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Recursive" - }, - { - "src": "http://fonts.gstatic.com/s/recursive/v37/8vJN7wMr0mhh-RQChyHEH06TlXhq_gukbYrFMk1QuAIcyEwG_X-dpEfaE5YaERmK-CImKsvxvU-MXGX2fSqasNfUvz2xbXfn1uEQadCCk018vwxjDJCL.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Recursive" - }, - { - "src": "http://fonts.gstatic.com/s/recursive/v37/8vJN7wMr0mhh-RQChyHEH06TlXhq_gukbYrFMk1QuAIcyEwG_X-dpEfaE5YaERmK-CImKsvxvU-MXGX2fSqasNfUvz2xbXfn1uEQadCwk018vwxjDJCL.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Recursive" - }, - { - "src": "http://fonts.gstatic.com/s/recursive/v37/8vJN7wMr0mhh-RQChyHEH06TlXhq_gukbYrFMk1QuAIcyEwG_X-dpEfaE5YaERmK-CImKsvxvU-MXGX2fSqasNfUvz2xbXfn1uEQadBclE18vwxjDJCL.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Recursive" - }, - { - "src": "http://fonts.gstatic.com/s/recursive/v37/8vJN7wMr0mhh-RQChyHEH06TlXhq_gukbYrFMk1QuAIcyEwG_X-dpEfaE5YaERmK-CImKsvxvU-MXGX2fSqasNfUvz2xbXfn1uEQadBllE18vwxjDJCL.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Recursive" - }, - { - "src": "http://fonts.gstatic.com/s/recursive/v37/8vJN7wMr0mhh-RQChyHEH06TlXhq_gukbYrFMk1QuAIcyEwG_X-dpEfaE5YaERmK-CImKsvxvU-MXGX2fSqasNfUvz2xbXfn1uEQadAClE18vwxjDJCL.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Recursive" - }, - { - "src": "http://fonts.gstatic.com/s/recursive/v37/8vJN7wMr0mhh-RQChyHEH06TlXhq_gukbYrFMk1QuAIcyEwG_X-dpEfaE5YaERmK-CImKsvxvU-MXGX2fSqasNfUvz2xbXfn1uEQadArlE18vwxjDJCL.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Recursive" - } - ] - }, - { - "name": "Red Hat Display", - "fontFamily": "Red Hat Display, sans-serif", - "slug": "red-hat-display", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/redhatdisplay/v14/8vIf7wUr0m80wwYf0QCXZzYzUoTK8RZQvRd-D1NYbjKWckg5-Xecg3w.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Red Hat Display" - }, - { - "src": "http://fonts.gstatic.com/s/redhatdisplay/v14/8vIf7wUr0m80wwYf0QCXZzYzUoTK8RZQvRd-D1NYbmyWckg5-Xecg3w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Red Hat Display" - }, - { - "src": "http://fonts.gstatic.com/s/redhatdisplay/v14/8vIf7wUr0m80wwYf0QCXZzYzUoTK8RZQvRd-D1NYbl6Wckg5-Xecg3w.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Red Hat Display" - }, - { - "src": "http://fonts.gstatic.com/s/redhatdisplay/v14/8vIf7wUr0m80wwYf0QCXZzYzUoTK8RZQvRd-D1NYbrKRckg5-Xecg3w.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Red Hat Display" - }, - { - "src": "http://fonts.gstatic.com/s/redhatdisplay/v14/8vIf7wUr0m80wwYf0QCXZzYzUoTK8RZQvRd-D1NYbouRckg5-Xecg3w.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Red Hat Display" - }, - { - "src": "http://fonts.gstatic.com/s/redhatdisplay/v14/8vIf7wUr0m80wwYf0QCXZzYzUoTK8RZQvRd-D1NYbuyRckg5-Xecg3w.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Red Hat Display" - }, - { - "src": "http://fonts.gstatic.com/s/redhatdisplay/v14/8vIf7wUr0m80wwYf0QCXZzYzUoTK8RZQvRd-D1NYbsWRckg5-Xecg3w.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Red Hat Display" - }, - { - "src": "http://fonts.gstatic.com/s/redhatdisplay/v14/8vIh7wUr0m80wwYf0QCXZzYzUoTg-CSvZX4Vlf1fe6TVxAsz_VWZk3zJGg.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Red Hat Display" - }, - { - "src": "http://fonts.gstatic.com/s/redhatdisplay/v14/8vIh7wUr0m80wwYf0QCXZzYzUoTg-CSvZX4Vlf1fe6TVmgsz_VWZk3zJGg.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Red Hat Display" - }, - { - "src": "http://fonts.gstatic.com/s/redhatdisplay/v14/8vIh7wUr0m80wwYf0QCXZzYzUoTg-CSvZX4Vlf1fe6TVqAsz_VWZk3zJGg.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Red Hat Display" - }, - { - "src": "http://fonts.gstatic.com/s/redhatdisplay/v14/8vIh7wUr0m80wwYf0QCXZzYzUoTg-CSvZX4Vlf1fe6TVRAwz_VWZk3zJGg.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Red Hat Display" - }, - { - "src": "http://fonts.gstatic.com/s/redhatdisplay/v14/8vIh7wUr0m80wwYf0QCXZzYzUoTg-CSvZX4Vlf1fe6TVfQwz_VWZk3zJGg.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Red Hat Display" - }, - { - "src": "http://fonts.gstatic.com/s/redhatdisplay/v14/8vIh7wUr0m80wwYf0QCXZzYzUoTg-CSvZX4Vlf1fe6TVGgwz_VWZk3zJGg.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Red Hat Display" - }, - { - "src": "http://fonts.gstatic.com/s/redhatdisplay/v14/8vIh7wUr0m80wwYf0QCXZzYzUoTg-CSvZX4Vlf1fe6TVMwwz_VWZk3zJGg.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Red Hat Display" - } - ] - }, - { - "name": "Red Hat Mono", - "fontFamily": "Red Hat Mono, monospace", - "slug": "red-hat-mono", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/redhatmono/v10/jVyY7nDnA2uf2zVvFAhhzEs-VMSjJpBTfgjwQQPI-7HNuW4QuKI.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Red Hat Mono" - }, - { - "src": "http://fonts.gstatic.com/s/redhatmono/v10/jVyY7nDnA2uf2zVvFAhhzEs-VMSjJpBTfgjwQV3I-7HNuW4QuKI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Red Hat Mono" - }, - { - "src": "http://fonts.gstatic.com/s/redhatmono/v10/jVyY7nDnA2uf2zVvFAhhzEs-VMSjJpBTfgjwQW_I-7HNuW4QuKI.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Red Hat Mono" - }, - { - "src": "http://fonts.gstatic.com/s/redhatmono/v10/jVyY7nDnA2uf2zVvFAhhzEs-VMSjJpBTfgjwQYPP-7HNuW4QuKI.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Red Hat Mono" - }, - { - "src": "http://fonts.gstatic.com/s/redhatmono/v10/jVyY7nDnA2uf2zVvFAhhzEs-VMSjJpBTfgjwQbrP-7HNuW4QuKI.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Red Hat Mono" - }, - { - "src": "http://fonts.gstatic.com/s/redhatmono/v10/jVye7nDnA2uf2zVvFAhhzEsUXfZc_vk45Kb3VJWLTfLHvUwVqKIJuw.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Red Hat Mono" - }, - { - "src": "http://fonts.gstatic.com/s/redhatmono/v10/jVye7nDnA2uf2zVvFAhhzEsUXfZc_vk45Kb3VJWLE_LHvUwVqKIJuw.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Red Hat Mono" - }, - { - "src": "http://fonts.gstatic.com/s/redhatmono/v10/jVye7nDnA2uf2zVvFAhhzEsUXfZc_vk45Kb3VJWLIfLHvUwVqKIJuw.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Red Hat Mono" - }, - { - "src": "http://fonts.gstatic.com/s/redhatmono/v10/jVye7nDnA2uf2zVvFAhhzEsUXfZc_vk45Kb3VJWLzfXHvUwVqKIJuw.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Red Hat Mono" - }, - { - "src": "http://fonts.gstatic.com/s/redhatmono/v10/jVye7nDnA2uf2zVvFAhhzEsUXfZc_vk45Kb3VJWL9PXHvUwVqKIJuw.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Red Hat Mono" - } - ] - }, - { - "name": "Red Hat Text", - "fontFamily": "Red Hat Text, sans-serif", - "slug": "red-hat-text", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/redhattext/v13/RrQCbohi_ic6B3yVSzGBrMx6ZI_cy1A6Ok2ML-ZwVrbacYVFtIY.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Red Hat Text" - }, - { - "src": "http://fonts.gstatic.com/s/redhattext/v13/RrQCbohi_ic6B3yVSzGBrMx6ZI_cy1A6Ok2ML7hwVrbacYVFtIY.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Red Hat Text" - }, - { - "src": "http://fonts.gstatic.com/s/redhattext/v13/RrQCbohi_ic6B3yVSzGBrMx6ZI_cy1A6Ok2ML4pwVrbacYVFtIY.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Red Hat Text" - }, - { - "src": "http://fonts.gstatic.com/s/redhattext/v13/RrQCbohi_ic6B3yVSzGBrMx6ZI_cy1A6Ok2ML2Z3VrbacYVFtIY.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Red Hat Text" - }, - { - "src": "http://fonts.gstatic.com/s/redhattext/v13/RrQCbohi_ic6B3yVSzGBrMx6ZI_cy1A6Ok2ML193VrbacYVFtIY.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Red Hat Text" - }, - { - "src": "http://fonts.gstatic.com/s/redhattext/v13/RrQEbohi_ic6B3yVSzGBrMxQbb0jEzlRoOOLOnAz4PXQdadApIYv_g.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Red Hat Text" - }, - { - "src": "http://fonts.gstatic.com/s/redhattext/v13/RrQEbohi_ic6B3yVSzGBrMxQbb0jEzlRoOOLOnAzvvXQdadApIYv_g.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Red Hat Text" - }, - { - "src": "http://fonts.gstatic.com/s/redhattext/v13/RrQEbohi_ic6B3yVSzGBrMxQbb0jEzlRoOOLOnAzjPXQdadApIYv_g.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Red Hat Text" - }, - { - "src": "http://fonts.gstatic.com/s/redhattext/v13/RrQEbohi_ic6B3yVSzGBrMxQbb0jEzlRoOOLOnAzYPLQdadApIYv_g.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Red Hat Text" - }, - { - "src": "http://fonts.gstatic.com/s/redhattext/v13/RrQEbohi_ic6B3yVSzGBrMxQbb0jEzlRoOOLOnAzWfLQdadApIYv_g.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Red Hat Text" - } - ] - }, - { - "name": "Red Rose", - "fontFamily": "Red Rose, system-ui", - "slug": "red-rose", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/redrose/v18/QdVISTYiLBjouPgEUajvsfWwDtc3MH8y8_sDcjSsYUVUjg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Red Rose" - }, - { - "src": "http://fonts.gstatic.com/s/redrose/v18/QdVISTYiLBjouPgEUajvsfWwDtc3MH8yrfsDcjSsYUVUjg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Red Rose" - }, - { - "src": "http://fonts.gstatic.com/s/redrose/v18/QdVISTYiLBjouPgEUajvsfWwDtc3MH8yn_sDcjSsYUVUjg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Red Rose" - }, - { - "src": "http://fonts.gstatic.com/s/redrose/v18/QdVISTYiLBjouPgEUajvsfWwDtc3MH8yc_wDcjSsYUVUjg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Red Rose" - }, - { - "src": "http://fonts.gstatic.com/s/redrose/v18/QdVISTYiLBjouPgEUajvsfWwDtc3MH8ySvwDcjSsYUVUjg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Red Rose" - } - ] - }, - { - "name": "Redacted", - "fontFamily": "Redacted, system-ui", - "slug": "redacted", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/redacted/v6/Z9XVDmdRShme2O_7aITe4u2El6GC.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Redacted" - } - ] - }, - { - "name": "Redacted Script", - "fontFamily": "Redacted Script, system-ui", - "slug": "redacted-script", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/redactedscript/v7/ypvEbXGRglhokR7dcC3d1-R6zmxqHUzVmbI397ldkg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Redacted Script" - }, - { - "src": "http://fonts.gstatic.com/s/redactedscript/v7/ypvBbXGRglhokR7dcC3d1-R6zmxSsWTxkZkr_g.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Redacted Script" - }, - { - "src": "http://fonts.gstatic.com/s/redactedscript/v7/ypvEbXGRglhokR7dcC3d1-R6zmxqDUvVmbI397ldkg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Redacted Script" - } - ] - }, - { - "name": "Redressed", - "fontFamily": "Redressed, cursive", - "slug": "redressed", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/redressed/v25/x3dickHUbrmJ7wMy9MsBfPACvy_1BA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Redressed" - } - ] - }, - { - "name": "Reem Kufi", - "fontFamily": "Reem Kufi, sans-serif", - "slug": "reem-kufi", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/reemkufi/v20/2sDPZGJLip7W2J7v7wQZZE1I0yCmYzzQtuZnEGGf3qGuvM4.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Reem Kufi" - }, - { - "src": "http://fonts.gstatic.com/s/reemkufi/v20/2sDPZGJLip7W2J7v7wQZZE1I0yCmYzzQttRnEGGf3qGuvM4.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Reem Kufi" - }, - { - "src": "http://fonts.gstatic.com/s/reemkufi/v20/2sDPZGJLip7W2J7v7wQZZE1I0yCmYzzQtjhgEGGf3qGuvM4.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Reem Kufi" - }, - { - "src": "http://fonts.gstatic.com/s/reemkufi/v20/2sDPZGJLip7W2J7v7wQZZE1I0yCmYzzQtgFgEGGf3qGuvM4.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Reem Kufi" - } - ] - }, - { - "name": "Reem Kufi Fun", - "fontFamily": "Reem Kufi Fun, sans-serif", - "slug": "reem-kufi-fun", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/reemkufifun/v7/uK_m4rOFYukkmyUEbF43fIryZEk5qRZ8nrKChoYj3nCgrvqZzZXq.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Reem Kufi Fun" - }, - { - "src": "http://fonts.gstatic.com/s/reemkufifun/v7/uK_m4rOFYukkmyUEbF43fIryZEk5qRZ8nrKChoYR3nCgrvqZzZXq.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Reem Kufi Fun" - }, - { - "src": "http://fonts.gstatic.com/s/reemkufifun/v7/uK_m4rOFYukkmyUEbF43fIryZEk5qRZ8nrKChob92XCgrvqZzZXq.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Reem Kufi Fun" - }, - { - "src": "http://fonts.gstatic.com/s/reemkufifun/v7/uK_m4rOFYukkmyUEbF43fIryZEk5qRZ8nrKChobE2XCgrvqZzZXq.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Reem Kufi Fun" - } - ] - }, - { - "name": "Reem Kufi Ink", - "fontFamily": "Reem Kufi Ink, sans-serif", - "slug": "reem-kufi-ink", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/reemkufiink/v9/oPWJ_kJmmu8hCvB9iFumxZSnRj5dQnSX1ko.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Reem Kufi Ink" - } - ] - }, - { - "name": "Reenie Beanie", - "fontFamily": "Reenie Beanie, cursive", - "slug": "reenie-beanie", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/reeniebeanie/v16/z7NSdR76eDkaJKZJFkkjuvWxbP2_qoOgf_w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Reenie Beanie" - } - ] - }, - { - "name": "Reggae One", - "fontFamily": "Reggae One, system-ui", - "slug": "reggae-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/reggaeone/v15/~CgwKClJlZ2dhZSBPbmUgACoECAEYAQ==.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Reggae One" - } - ] - }, - { - "name": "Revalia", - "fontFamily": "Revalia, system-ui", - "slug": "revalia", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/revalia/v20/WwkexPimBE2-4ZPEeVruNIgJSNM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Revalia" - } - ] - }, - { - "name": "Rhodium Libre", - "fontFamily": "Rhodium Libre, serif", - "slug": "rhodium-libre", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rhodiumlibre/v17/1q2AY5adA0tn_ukeHcQHqpx6pETLeo2gm2U.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rhodium Libre" - } - ] - }, - { - "name": "Ribeye", - "fontFamily": "Ribeye, system-ui", - "slug": "ribeye", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ribeye/v22/L0x8DFMxk1MP9R3RvPCmRSlUig.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Ribeye" - } - ] - }, - { - "name": "Ribeye Marrow", - "fontFamily": "Ribeye Marrow, system-ui", - "slug": "ribeye-marrow", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ribeyemarrow/v22/GFDsWApshnqMRO2JdtRZ2d0vEAwTVWgKdtw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Ribeye Marrow" - } - ] - }, - { - "name": "Righteous", - "fontFamily": "Righteous, system-ui", - "slug": "righteous", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/righteous/v14/1cXxaUPXBpj2rGoU7C9mj3uEicG01A.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Righteous" - } - ] - }, - { - "name": "Risque", - "fontFamily": "Risque, system-ui", - "slug": "risque", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/risque/v20/VdGfAZUfHosahXxoCUYVBJ-T5g.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Risque" - } - ] - }, - { - "name": "Road Rage", - "fontFamily": "Road Rage, system-ui", - "slug": "road-rage", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/roadrage/v5/6NUU8F2fKAOBKjjr4ekvtMYAwdRZfw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Road Rage" - } - ] - }, - { - "name": "Roboto", - "fontFamily": "Roboto, sans-serif", - "slug": "roboto", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/roboto/v30/KFOkCnqEu92Fr1MmgWxPKTM1K9nz.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Roboto" - }, - { - "src": "http://fonts.gstatic.com/s/roboto/v30/KFOiCnqEu92Fr1Mu51QrIzcXLsnzjYk.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Roboto" - }, - { - "src": "http://fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmSU5vAx05IsDqlA.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Roboto" - }, - { - "src": "http://fonts.gstatic.com/s/roboto/v30/KFOjCnqEu92Fr1Mu51TjARc9AMX6lJBP.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Roboto" - }, - { - "src": "http://fonts.gstatic.com/s/roboto/v30/KFOmCnqEu92Fr1Me5WZLCzYlKw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Roboto" - }, - { - "src": "http://fonts.gstatic.com/s/roboto/v30/KFOkCnqEu92Fr1Mu52xPKTM1K9nz.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Roboto" - }, - { - "src": "http://fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmEU9vAx05IsDqlA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Roboto" - }, - { - "src": "http://fonts.gstatic.com/s/roboto/v30/KFOjCnqEu92Fr1Mu51S7ABc9AMX6lJBP.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Roboto" - }, - { - "src": "http://fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmWUlvAx05IsDqlA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Roboto" - }, - { - "src": "http://fonts.gstatic.com/s/roboto/v30/KFOjCnqEu92Fr1Mu51TzBhc9AMX6lJBP.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Roboto" - }, - { - "src": "http://fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmYUtvAx05IsDqlA.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Roboto" - }, - { - "src": "http://fonts.gstatic.com/s/roboto/v30/KFOjCnqEu92Fr1Mu51TLBBc9AMX6lJBP.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Roboto" - } - ] - }, - { - "name": "Roboto Condensed", - "fontFamily": "Roboto Condensed, sans-serif", - "slug": "roboto-condensed", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/robotocondensed/v25/ieVi2ZhZI2eCN5jzbjEETS9weq8-33mZKCMSbvtdYyQ.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Roboto Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/robotocondensed/v25/ieVg2ZhZI2eCN5jzbjEETS9weq8-19eDpCEYatlYcyRi4A.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Roboto Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/robotocondensed/v25/ieVl2ZhZI2eCN5jzbjEETS9weq8-59WxDCs5cvI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Roboto Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/robotocondensed/v25/ieVj2ZhZI2eCN5jzbjEETS9weq8-19e7CAk8YvJEeg.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Roboto Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/robotocondensed/v25/ieVi2ZhZI2eCN5jzbjEETS9weq8-32meKCMSbvtdYyQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Roboto Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/robotocondensed/v25/ieVg2ZhZI2eCN5jzbjEETS9weq8-19eDtCYYatlYcyRi4A.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Roboto Condensed" - } - ] - }, - { - "name": "Roboto Flex", - "fontFamily": "Roboto Flex, sans-serif", - "slug": "roboto-flex", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/robotoflex/v9/NaN4epOXO_NexZs0b5QrzlOHb8wCikXpYqmZsWI-__OGfttPZktqc2VdZ80KvCLZaPcSBZtOx2MifRuWR28sPJtUMbsFEK6cRrleUx9Xgbm3WLHa_F4Ep4Fm0PN19Ik5Dntczx0wZGzhPlL1YNMYKbv9_1IQXOw7AiUJVXpRJ6cXW4O8TNGoXjC79QRyaLshNDUf3e0O-gn5rrZCu20YNYG0EACUTNK-QKavMlxGIY8dxef0jQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Roboto Flex" - } - ] - }, - { - "name": "Roboto Mono", - "fontFamily": "Roboto Mono, monospace", - "slug": "roboto-mono", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/robotomono/v22/L0xuDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vuPQ--5Ip2sSQ.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Roboto Mono" - }, - { - "src": "http://fonts.gstatic.com/s/robotomono/v22/L0xuDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_XvqPQ--5Ip2sSQ.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Roboto Mono" - }, - { - "src": "http://fonts.gstatic.com/s/robotomono/v22/L0xuDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_gPqPQ--5Ip2sSQ.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Roboto Mono" - }, - { - "src": "http://fonts.gstatic.com/s/robotomono/v22/L0xuDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vqPQ--5Ip2sSQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Roboto Mono" - }, - { - "src": "http://fonts.gstatic.com/s/robotomono/v22/L0xuDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_7PqPQ--5Ip2sSQ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Roboto Mono" - }, - { - "src": "http://fonts.gstatic.com/s/robotomono/v22/L0xuDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_AP2PQ--5Ip2sSQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Roboto Mono" - }, - { - "src": "http://fonts.gstatic.com/s/robotomono/v22/L0xuDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_Of2PQ--5Ip2sSQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Roboto Mono" - }, - { - "src": "http://fonts.gstatic.com/s/robotomono/v22/L0xoDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAeW9AJi8SZwt.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Roboto Mono" - }, - { - "src": "http://fonts.gstatic.com/s/robotomono/v22/L0xoDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrnnAOW9AJi8SZwt.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Roboto Mono" - }, - { - "src": "http://fonts.gstatic.com/s/robotomono/v22/L0xoDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrk5AOW9AJi8SZwt.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Roboto Mono" - }, - { - "src": "http://fonts.gstatic.com/s/robotomono/v22/L0xoDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAOW9AJi8SZwt.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Roboto Mono" - }, - { - "src": "http://fonts.gstatic.com/s/robotomono/v22/L0xoDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlVAOW9AJi8SZwt.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Roboto Mono" - }, - { - "src": "http://fonts.gstatic.com/s/robotomono/v22/L0xoDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrm5B-W9AJi8SZwt.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Roboto Mono" - }, - { - "src": "http://fonts.gstatic.com/s/robotomono/v22/L0xoDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrmAB-W9AJi8SZwt.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Roboto Mono" - } - ] - }, - { - "name": "Roboto Serif", - "fontFamily": "Roboto Serif, serif", - "slug": "roboto-serif", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcEliosp6d2Af5fR4k.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Roboto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcElqotp6d2Af5fR4k.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Roboto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcElnQtp6d2Af5fR4k.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Roboto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcEliotp6d2Af5fR4k.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Roboto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcElhgtp6d2Af5fR4k.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Roboto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcElvQqp6d2Af5fR4k.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Roboto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcEls0qp6d2Af5fR4k.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Roboto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcElqoqp6d2Af5fR4k.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Roboto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcEloMqp6d2Af5fR4k.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Roboto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-JuT-V8BdxaV4nUFw.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Roboto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-Juz-R8BdxaV4nUFw.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Roboto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-JuEeR8BdxaV4nUFw.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Roboto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-JuT-R8BdxaV4nUFw.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Roboto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-JufeR8BdxaV4nUFw.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Roboto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-JukeN8BdxaV4nUFw.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Roboto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-JuqON8BdxaV4nUFw.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Roboto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-Juz-N8BdxaV4nUFw.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Roboto Serif" - }, - { - "src": "http://fonts.gstatic.com/s/robotoserif/v13/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-Ju5uN8BdxaV4nUFw.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Roboto Serif" - } - ] - }, - { - "name": "Roboto Slab", - "fontFamily": "Roboto Slab, serif", - "slug": "roboto-slab", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/robotoslab/v25/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjojIWWaG5iddG-1A.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Roboto Slab" - }, - { - "src": "http://fonts.gstatic.com/s/robotoslab/v25/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjoDISWaG5iddG-1A.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Roboto Slab" - }, - { - "src": "http://fonts.gstatic.com/s/robotoslab/v25/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjo0oSWaG5iddG-1A.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Roboto Slab" - }, - { - "src": "http://fonts.gstatic.com/s/robotoslab/v25/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjojISWaG5iddG-1A.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Roboto Slab" - }, - { - "src": "http://fonts.gstatic.com/s/robotoslab/v25/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjovoSWaG5iddG-1A.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Roboto Slab" - }, - { - "src": "http://fonts.gstatic.com/s/robotoslab/v25/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjoUoOWaG5iddG-1A.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Roboto Slab" - }, - { - "src": "http://fonts.gstatic.com/s/robotoslab/v25/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjoa4OWaG5iddG-1A.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Roboto Slab" - }, - { - "src": "http://fonts.gstatic.com/s/robotoslab/v25/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjoDIOWaG5iddG-1A.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Roboto Slab" - }, - { - "src": "http://fonts.gstatic.com/s/robotoslab/v25/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjoJYOWaG5iddG-1A.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Roboto Slab" - } - ] - }, - { - "name": "Rochester", - "fontFamily": "Rochester, cursive", - "slug": "rochester", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rochester/v18/6ae-4KCqVa4Zy6Fif-Uy31vWNTMwoQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rochester" - } - ] - }, - { - "name": "Rock 3D", - "fontFamily": "Rock 3D, system-ui", - "slug": "rock-3d", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rock3d/v10/yYLp0hrL0PCo651513SnwRnQyNI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rock 3D" - } - ] - }, - { - "name": "Rock Salt", - "fontFamily": "Rock Salt, cursive", - "slug": "rock-salt", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rocksalt/v18/MwQ0bhv11fWD6QsAVOZbsEk7hbBWrA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rock Salt" - } - ] - }, - { - "name": "RocknRoll One", - "fontFamily": "RocknRoll One, sans-serif", - "slug": "rocknroll-one", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rocknrollone/v10/kmK7ZqspGAfCeUiW6FFlmEC9guVhs7tfUxc.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "RocknRoll One" - } - ] - }, - { - "name": "Rokkitt", - "fontFamily": "Rokkitt, serif", - "slug": "rokkitt", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdb35qfgYFjGy5hukqqhw5XeRgdi1rydpDLE76HvN6n.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Rokkitt" - }, - { - "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdb35qfgYFjGy5hukqqhw5XeRgdi1pyd5DLE76HvN6n.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Rokkitt" - }, - { - "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdb35qfgYFjGy5hukqqhw5XeRgdi1qsd5DLE76HvN6n.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Rokkitt" - }, - { - "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdb35qfgYFjGy5hukqqhw5XeRgdi1ryd5DLE76HvN6n.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rokkitt" - }, - { - "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdb35qfgYFjGy5hukqqhw5XeRgdi1rAd5DLE76HvN6n.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Rokkitt" - }, - { - "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdb35qfgYFjGy5hukqqhw5XeRgdi1oscJDLE76HvN6n.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Rokkitt" - }, - { - "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdb35qfgYFjGy5hukqqhw5XeRgdi1oVcJDLE76HvN6n.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Rokkitt" - }, - { - "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdb35qfgYFjGy5hukqqhw5XeRgdi1pycJDLE76HvN6n.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Rokkitt" - }, - { - "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdb35qfgYFjGy5hukqqhw5XeRgdi1pbcJDLE76HvN6n.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Rokkitt" - }, - { - "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NHiJGbqluc6nu9E.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Rokkitt" - }, - { - "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NPiIGbqluc6nu9E.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Rokkitt" - }, - { - "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NCaIGbqluc6nu9E.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Rokkitt" - }, - { - "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NHiIGbqluc6nu9E.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Rokkitt" - }, - { - "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NEqIGbqluc6nu9E.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Rokkitt" - }, - { - "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NKaPGbqluc6nu9E.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Rokkitt" - }, - { - "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NJ-PGbqluc6nu9E.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Rokkitt" - }, - { - "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NPiPGbqluc6nu9E.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Rokkitt" - }, - { - "src": "http://fonts.gstatic.com/s/rokkitt/v34/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NNGPGbqluc6nu9E.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Rokkitt" - } - ] - }, - { - "name": "Romanesco", - "fontFamily": "Romanesco, cursive", - "slug": "romanesco", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/romanesco/v21/w8gYH2ozQOY7_r_J7mSn3HwLqOqSBg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Romanesco" - } - ] - }, - { - "name": "Ropa Sans", - "fontFamily": "Ropa Sans, sans-serif", - "slug": "ropa-sans", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ropasans/v15/EYqxmaNOzLlWtsZSScyKWjloU5KP2g.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Ropa Sans" - }, - { - "src": "http://fonts.gstatic.com/s/ropasans/v15/EYq3maNOzLlWtsZSScy6WDNscZef2mNE.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Ropa Sans" - } - ] - }, - { - "name": "Rosario", - "fontFamily": "Rosario, sans-serif", - "slug": "rosario", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rosario/v31/xfuu0WDhWW_fOEoY8l_VPNZfB7jPM69GCWczd-YnOzUD.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Rosario" - }, - { - "src": "http://fonts.gstatic.com/s/rosario/v31/xfuu0WDhWW_fOEoY8l_VPNZfB7jPM68YCWczd-YnOzUD.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rosario" - }, - { - "src": "http://fonts.gstatic.com/s/rosario/v31/xfuu0WDhWW_fOEoY8l_VPNZfB7jPM68qCWczd-YnOzUD.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Rosario" - }, - { - "src": "http://fonts.gstatic.com/s/rosario/v31/xfuu0WDhWW_fOEoY8l_VPNZfB7jPM6_GDmczd-YnOzUD.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Rosario" - }, - { - "src": "http://fonts.gstatic.com/s/rosario/v31/xfuu0WDhWW_fOEoY8l_VPNZfB7jPM6__Dmczd-YnOzUD.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Rosario" - }, - { - "src": "http://fonts.gstatic.com/s/rosario/v31/xfug0WDhWW_fOEoY2Fbnww42bCJhNLrQStFwfeIFPiUDn08.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Rosario" - }, - { - "src": "http://fonts.gstatic.com/s/rosario/v31/xfug0WDhWW_fOEoY2Fbnww42bCJhNLrQSo9wfeIFPiUDn08.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Rosario" - }, - { - "src": "http://fonts.gstatic.com/s/rosario/v31/xfug0WDhWW_fOEoY2Fbnww42bCJhNLrQSr1wfeIFPiUDn08.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Rosario" - }, - { - "src": "http://fonts.gstatic.com/s/rosario/v31/xfug0WDhWW_fOEoY2Fbnww42bCJhNLrQSlF3feIFPiUDn08.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Rosario" - }, - { - "src": "http://fonts.gstatic.com/s/rosario/v31/xfug0WDhWW_fOEoY2Fbnww42bCJhNLrQSmh3feIFPiUDn08.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Rosario" - } - ] - }, - { - "name": "Rosarivo", - "fontFamily": "Rosarivo, serif", - "slug": "rosarivo", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rosarivo/v20/PlI-Fl2lO6N9f8HaNAeC2nhMnNy5.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rosarivo" - }, - { - "src": "http://fonts.gstatic.com/s/rosarivo/v20/PlI4Fl2lO6N9f8HaNDeA0Hxumcy5ZX8.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Rosarivo" - } - ] - }, - { - "name": "Rouge Script", - "fontFamily": "Rouge Script, cursive", - "slug": "rouge-script", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rougescript/v14/LYjFdGbiklMoCIQOw1Ep3S4PVPXbUJWq9g.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rouge Script" - } - ] - }, - { - "name": "Rowdies", - "fontFamily": "Rowdies, system-ui", - "slug": "rowdies", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rowdies/v15/ptRMTieMYPNBAK219hth5O7yKQNute8.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Rowdies" - }, - { - "src": "http://fonts.gstatic.com/s/rowdies/v15/ptRJTieMYPNBAK21zrdJwObZNQo.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rowdies" - }, - { - "src": "http://fonts.gstatic.com/s/rowdies/v15/ptRMTieMYPNBAK219gtm5O7yKQNute8.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Rowdies" - } - ] - }, - { - "name": "Rozha One", - "fontFamily": "Rozha One, serif", - "slug": "rozha-one", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rozhaone/v13/AlZy_zVFtYP12Zncg2khdXf4XB0Tow.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rozha One" - } - ] - }, - { - "name": "Rubik", - "fontFamily": "Rubik, sans-serif", - "slug": "rubik", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rubik/v26/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-WYi1UE80V4bVkA.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Rubik" - }, - { - "src": "http://fonts.gstatic.com/s/rubik/v26/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-B4i1UE80V4bVkA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rubik" - }, - { - "src": "http://fonts.gstatic.com/s/rubik/v26/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-NYi1UE80V4bVkA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Rubik" - }, - { - "src": "http://fonts.gstatic.com/s/rubik/v26/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-2Y-1UE80V4bVkA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Rubik" - }, - { - "src": "http://fonts.gstatic.com/s/rubik/v26/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-4I-1UE80V4bVkA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Rubik" - }, - { - "src": "http://fonts.gstatic.com/s/rubik/v26/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-h4-1UE80V4bVkA.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Rubik" - }, - { - "src": "http://fonts.gstatic.com/s/rubik/v26/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-ro-1UE80V4bVkA.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Rubik" - }, - { - "src": "http://fonts.gstatic.com/s/rubik/v26/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8sDE0UwdYPFkJ1O.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Rubik" - }, - { - "src": "http://fonts.gstatic.com/s/rubik/v26/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8tdE0UwdYPFkJ1O.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Rubik" - }, - { - "src": "http://fonts.gstatic.com/s/rubik/v26/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8tvE0UwdYPFkJ1O.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Rubik" - }, - { - "src": "http://fonts.gstatic.com/s/rubik/v26/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8uDFEUwdYPFkJ1O.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Rubik" - }, - { - "src": "http://fonts.gstatic.com/s/rubik/v26/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8u6FEUwdYPFkJ1O.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Rubik" - }, - { - "src": "http://fonts.gstatic.com/s/rubik/v26/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8vdFEUwdYPFkJ1O.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Rubik" - }, - { - "src": "http://fonts.gstatic.com/s/rubik/v26/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8v0FEUwdYPFkJ1O.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Rubik" - } - ] - }, - { - "name": "Rubik 80s Fade", - "fontFamily": "Rubik 80s Fade, system-ui", - "slug": "rubik-80s-fade", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rubik80sfade/v2/U9MF6dW37nLSmnwZXyoV-uPXUhHwkbL8IHcK.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rubik 80s Fade" - } - ] - }, - { - "name": "Rubik Beastly", - "fontFamily": "Rubik Beastly, system-ui", - "slug": "rubik-beastly", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rubikbeastly/v10/0QImMXRd5oOmSC2ZQ7o9653X07z8_ApHqqk.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rubik Beastly" - } - ] - }, - { - "name": "Rubik Bubbles", - "fontFamily": "Rubik Bubbles, system-ui", - "slug": "rubik-bubbles", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rubikbubbles/v3/JIA1UVdwbHFJtwA7Us1BPFbRNTENfDxyRXI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rubik Bubbles" - } - ] - }, - { - "name": "Rubik Burned", - "fontFamily": "Rubik Burned, system-ui", - "slug": "rubik-burned", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rubikburned/v1/Jqzk5TmOVOqQHihKqPpscqniHQuaCY5ZSg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rubik Burned" - } - ] - }, - { - "name": "Rubik Dirt", - "fontFamily": "Rubik Dirt, system-ui", - "slug": "rubik-dirt", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rubikdirt/v2/DtVmJxC7WLEj1uIXEWAdulwm6gDXvwE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rubik Dirt" - } - ] - }, - { - "name": "Rubik Distressed", - "fontFamily": "Rubik Distressed, system-ui", - "slug": "rubik-distressed", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rubikdistressed/v1/GFDxWBdsmnqAVqjtUsZf2dcrQ2ldcWAhatVBaGM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rubik Distressed" - } - ] - }, - { - "name": "Rubik Gemstones", - "fontFamily": "Rubik Gemstones, system-ui", - "slug": "rubik-gemstones", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rubikgemstones/v1/zrf90HrL0-_8Xb4DFM2rUkWbOVrOiCnGqi1GMw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rubik Gemstones" - } - ] - }, - { - "name": "Rubik Glitch", - "fontFamily": "Rubik Glitch, system-ui", - "slug": "rubik-glitch", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rubikglitch/v2/qkBSXv8b_srFRYQVYrDKh9ZvmC7HONiSFQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rubik Glitch" - } - ] - }, - { - "name": "Rubik Iso", - "fontFamily": "Rubik Iso, system-ui", - "slug": "rubik-iso", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rubikiso/v2/x3dickHUfr-S4VAI4sABfPACvy_1BA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rubik Iso" - } - ] - }, - { - "name": "Rubik Marker Hatch", - "fontFamily": "Rubik Marker Hatch, system-ui", - "slug": "rubik-marker-hatch", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rubikmarkerhatch/v1/QldTNSFQsh0B_bFXXWv6LAt-jswapJHQDL4iw0H6zw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rubik Marker Hatch" - } - ] - }, - { - "name": "Rubik Maze", - "fontFamily": "Rubik Maze, system-ui", - "slug": "rubik-maze", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rubikmaze/v2/xMQRuF9ZVa2ftiJEavXSAX7inS-bxV4.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rubik Maze" - } - ] - }, - { - "name": "Rubik Microbe", - "fontFamily": "Rubik Microbe, system-ui", - "slug": "rubik-microbe", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rubikmicrobe/v2/UqyWK8oPP3hjw6ANS9rM3PsZcs8aaKgiauE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rubik Microbe" - } - ] - }, - { - "name": "Rubik Mono One", - "fontFamily": "Rubik Mono One, sans-serif", - "slug": "rubik-mono-one", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rubikmonoone/v15/UqyJK8kPP3hjw6ANTdfRk9YSN-8wRqQrc_j9.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rubik Mono One" - } - ] - }, - { - "name": "Rubik Moonrocks", - "fontFamily": "Rubik Moonrocks, system-ui", - "slug": "rubik-moonrocks", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rubikmoonrocks/v2/845ANMAmAI2VUZMLu_W0M7HqlDHnXcD7JGy1Sw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rubik Moonrocks" - } - ] - }, - { - "name": "Rubik Pixels", - "fontFamily": "Rubik Pixels, system-ui", - "slug": "rubik-pixels", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rubikpixels/v2/SlGXmQOaupkIeSx4CEpB7AdSaBYRagrQrA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rubik Pixels" - } - ] - }, - { - "name": "Rubik Puddles", - "fontFamily": "Rubik Puddles, system-ui", - "slug": "rubik-puddles", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rubikpuddles/v2/1Ptog8bYX_qGnkLkrU5MJsQcJfC0wVMT-aE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rubik Puddles" - } - ] - }, - { - "name": "Rubik Spray Paint", - "fontFamily": "Rubik Spray Paint, system-ui", - "slug": "rubik-spray-paint", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rubikspraypaint/v1/WnzhHBAoeBPUDTB4EWR82y6EXWPH-Ro-QoaBZQxP.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rubik Spray Paint" - } - ] - }, - { - "name": "Rubik Storm", - "fontFamily": "Rubik Storm, system-ui", - "slug": "rubik-storm", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rubikstorm/v1/eLGYP-_uPgO5Ag7ju9JaouL9T2Xh9NQk.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rubik Storm" - } - ] - }, - { - "name": "Rubik Vinyl", - "fontFamily": "Rubik Vinyl, system-ui", - "slug": "rubik-vinyl", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rubikvinyl/v1/iJWABXKIfDnIV4mQ5BfjvUXexox2ztOU.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rubik Vinyl" - } - ] - }, - { - "name": "Rubik Wet Paint", - "fontFamily": "Rubik Wet Paint, system-ui", - "slug": "rubik-wet-paint", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rubikwetpaint/v2/HTx0L20uMDGHgdULcpTF3Oe4d_-F-zz313DuvQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rubik Wet Paint" - } - ] - }, - { - "name": "Ruda", - "fontFamily": "Ruda, sans-serif", - "slug": "ruda", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ruda/v23/k3kKo8YQJOpFgHQ1mQ5VkEbUKaJFsi_-2KiSGg-H.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Ruda" - }, - { - "src": "http://fonts.gstatic.com/s/ruda/v23/k3kKo8YQJOpFgHQ1mQ5VkEbUKaJ3si_-2KiSGg-H.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Ruda" - }, - { - "src": "http://fonts.gstatic.com/s/ruda/v23/k3kKo8YQJOpFgHQ1mQ5VkEbUKaKbtS_-2KiSGg-H.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Ruda" - }, - { - "src": "http://fonts.gstatic.com/s/ruda/v23/k3kKo8YQJOpFgHQ1mQ5VkEbUKaKitS_-2KiSGg-H.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Ruda" - }, - { - "src": "http://fonts.gstatic.com/s/ruda/v23/k3kKo8YQJOpFgHQ1mQ5VkEbUKaLFtS_-2KiSGg-H.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Ruda" - }, - { - "src": "http://fonts.gstatic.com/s/ruda/v23/k3kKo8YQJOpFgHQ1mQ5VkEbUKaLstS_-2KiSGg-H.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Ruda" - } - ] - }, - { - "name": "Rufina", - "fontFamily": "Rufina, serif", - "slug": "rufina", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rufina/v13/Yq6V-LyURyLy-aKyoxRktOdClg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rufina" - }, - { - "src": "http://fonts.gstatic.com/s/rufina/v13/Yq6W-LyURyLy-aKKHztAvMxenxE0SA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Rufina" - } - ] - }, - { - "name": "Ruge Boogie", - "fontFamily": "Ruge Boogie, cursive", - "slug": "ruge-boogie", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rugeboogie/v25/JIA3UVFwbHRF_GIWSMhKNROiPzUveSxy.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Ruge Boogie" - } - ] - }, - { - "name": "Ruluko", - "fontFamily": "Ruluko, sans-serif", - "slug": "ruluko", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ruluko/v21/xMQVuFNZVaODtm0pC6WzKX_QmA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Ruluko" - } - ] - }, - { - "name": "Rum Raisin", - "fontFamily": "Rum Raisin, sans-serif", - "slug": "rum-raisin", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rumraisin/v20/nwpRtKu3Ih8D5avB4h2uJ3-IywA7eMM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rum Raisin" - } - ] - }, - { - "name": "Ruslan Display", - "fontFamily": "Ruslan Display, system-ui", - "slug": "ruslan-display", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ruslandisplay/v22/Gw6jwczl81XcIZuckK_e3UpfdzxrldyFvm1n.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Ruslan Display" - } - ] - }, - { - "name": "Russo One", - "fontFamily": "Russo One, sans-serif", - "slug": "russo-one", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/russoone/v14/Z9XUDmZRWg6M1LvRYsH-yMOInrib9Q.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Russo One" - } - ] - }, - { - "name": "Ruthie", - "fontFamily": "Ruthie, cursive", - "slug": "ruthie", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ruthie/v24/gokvH63sGkdqXuU9lD53Q2u_mQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Ruthie" - } - ] - }, - { - "name": "Rye", - "fontFamily": "Rye, system-ui", - "slug": "rye", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/rye/v13/r05XGLJT86YDFpTsXOqx4w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Rye" - } - ] - }, - { - "name": "STIX Two Text", - "fontFamily": "STIX Two Text, serif", - "slug": "stix-two-text", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/stixtwotext/v11/YA9Gr02F12Xkf5whdwKf11l0jbKkeidMTtZ5Yihg2SOYWxFMN1WD.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "STIX Two Text" - }, - { - "src": "http://fonts.gstatic.com/s/stixtwotext/v11/YA9Gr02F12Xkf5whdwKf11l0jbKkeidMTtZ5YihS2SOYWxFMN1WD.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "STIX Two Text" - }, - { - "src": "http://fonts.gstatic.com/s/stixtwotext/v11/YA9Gr02F12Xkf5whdwKf11l0jbKkeidMTtZ5Yii-3iOYWxFMN1WD.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "STIX Two Text" - }, - { - "src": "http://fonts.gstatic.com/s/stixtwotext/v11/YA9Gr02F12Xkf5whdwKf11l0jbKkeidMTtZ5YiiH3iOYWxFMN1WD.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "STIX Two Text" - }, - { - "src": "http://fonts.gstatic.com/s/stixtwotext/v11/YA9Er02F12Xkf5whdwKf11l0p7uWhf8lJUzXZT2omsvbURVuMkWDmSo.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "STIX Two Text" - }, - { - "src": "http://fonts.gstatic.com/s/stixtwotext/v11/YA9Er02F12Xkf5whdwKf11l0p7uWhf8lJUzXZT2omvnbURVuMkWDmSo.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "STIX Two Text" - }, - { - "src": "http://fonts.gstatic.com/s/stixtwotext/v11/YA9Er02F12Xkf5whdwKf11l0p7uWhf8lJUzXZT2omhXcURVuMkWDmSo.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "STIX Two Text" - }, - { - "src": "http://fonts.gstatic.com/s/stixtwotext/v11/YA9Er02F12Xkf5whdwKf11l0p7uWhf8lJUzXZT2omizcURVuMkWDmSo.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "STIX Two Text" - } - ] - }, - { - "name": "Sacramento", - "fontFamily": "Sacramento, cursive", - "slug": "sacramento", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sacramento/v13/buEzpo6gcdjy0EiZMBUG0CoV_NxLeiw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sacramento" - } - ] - }, - { - "name": "Sahitya", - "fontFamily": "Sahitya, serif", - "slug": "sahitya", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sahitya/v17/6qLAKZkOuhnuqlJAaScFPywEDnI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sahitya" - }, - { - "src": "http://fonts.gstatic.com/s/sahitya/v17/6qLFKZkOuhnuqlJAUZsqGyQvEnvSexI.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Sahitya" - } - ] - }, - { - "name": "Sail", - "fontFamily": "Sail, system-ui", - "slug": "sail", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sail/v16/DPEjYwiBxwYJFBTDADYAbvw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sail" - } - ] - }, - { - "name": "Saira", - "fontFamily": "Saira, sans-serif", - "slug": "saira", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/saira/v14/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA71rDosg7lwYmUVY.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Saira" - }, - { - "src": "http://fonts.gstatic.com/s/saira/v14/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA79rCosg7lwYmUVY.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Saira" - }, - { - "src": "http://fonts.gstatic.com/s/saira/v14/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA7wTCosg7lwYmUVY.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Saira" - }, - { - "src": "http://fonts.gstatic.com/s/saira/v14/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA71rCosg7lwYmUVY.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Saira" - }, - { - "src": "http://fonts.gstatic.com/s/saira/v14/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA72jCosg7lwYmUVY.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Saira" - }, - { - "src": "http://fonts.gstatic.com/s/saira/v14/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA74TFosg7lwYmUVY.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Saira" - }, - { - "src": "http://fonts.gstatic.com/s/saira/v14/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA773Fosg7lwYmUVY.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Saira" - }, - { - "src": "http://fonts.gstatic.com/s/saira/v14/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA79rFosg7lwYmUVY.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Saira" - }, - { - "src": "http://fonts.gstatic.com/s/saira/v14/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA7_PFosg7lwYmUVY.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Saira" - }, - { - "src": "http://fonts.gstatic.com/s/saira/v14/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKBSooxkyQjQVYmxA.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Saira" - }, - { - "src": "http://fonts.gstatic.com/s/saira/v14/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKByosxkyQjQVYmxA.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Saira" - }, - { - "src": "http://fonts.gstatic.com/s/saira/v14/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKBFIsxkyQjQVYmxA.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Saira" - }, - { - "src": "http://fonts.gstatic.com/s/saira/v14/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKBSosxkyQjQVYmxA.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Saira" - }, - { - "src": "http://fonts.gstatic.com/s/saira/v14/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKBeIsxkyQjQVYmxA.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Saira" - }, - { - "src": "http://fonts.gstatic.com/s/saira/v14/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKBlIwxkyQjQVYmxA.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Saira" - }, - { - "src": "http://fonts.gstatic.com/s/saira/v14/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKBrYwxkyQjQVYmxA.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Saira" - }, - { - "src": "http://fonts.gstatic.com/s/saira/v14/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKByowxkyQjQVYmxA.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Saira" - }, - { - "src": "http://fonts.gstatic.com/s/saira/v14/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKB44wxkyQjQVYmxA.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Saira" - } - ] - }, - { - "name": "Saira Condensed", - "fontFamily": "Saira Condensed, sans-serif", - "slug": "saira-condensed", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sairacondensed/v11/EJRMQgErUN8XuHNEtX81i9TmEkrnwetA2omSrzS8.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Saira Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sairacondensed/v11/EJRLQgErUN8XuHNEtX81i9TmEkrnbcpg8Keepi2lHw.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Saira Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sairacondensed/v11/EJRLQgErUN8XuHNEtX81i9TmEkrnCclg8Keepi2lHw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Saira Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sairacondensed/v11/EJROQgErUN8XuHNEtX81i9TmEkrfpeFE-IyCrw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Saira Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sairacondensed/v11/EJRLQgErUN8XuHNEtX81i9TmEkrnUchg8Keepi2lHw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Saira Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sairacondensed/v11/EJRLQgErUN8XuHNEtX81i9TmEkrnfc9g8Keepi2lHw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Saira Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sairacondensed/v11/EJRLQgErUN8XuHNEtX81i9TmEkrnGc5g8Keepi2lHw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Saira Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sairacondensed/v11/EJRLQgErUN8XuHNEtX81i9TmEkrnBc1g8Keepi2lHw.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Saira Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sairacondensed/v11/EJRLQgErUN8XuHNEtX81i9TmEkrnIcxg8Keepi2lHw.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Saira Condensed" - } - ] - }, - { - "name": "Saira Extra Condensed", - "fontFamily": "Saira Extra Condensed, sans-serif", - "slug": "saira-extra-condensed", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sairaextracondensed/v11/-nFsOHYr-vcC7h8MklGBkrvmUG9rbpkisrTri0jx9i5ss3a3.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Saira Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sairaextracondensed/v11/-nFvOHYr-vcC7h8MklGBkrvmUG9rbpkisrTrJ2nR3ABgum-uoQ.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Saira Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sairaextracondensed/v11/-nFvOHYr-vcC7h8MklGBkrvmUG9rbpkisrTrQ2rR3ABgum-uoQ.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Saira Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sairaextracondensed/v11/-nFiOHYr-vcC7h8MklGBkrvmUG9rbpkisrTT70L11Ct8sw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Saira Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sairaextracondensed/v11/-nFvOHYr-vcC7h8MklGBkrvmUG9rbpkisrTrG2vR3ABgum-uoQ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Saira Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sairaextracondensed/v11/-nFvOHYr-vcC7h8MklGBkrvmUG9rbpkisrTrN2zR3ABgum-uoQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Saira Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sairaextracondensed/v11/-nFvOHYr-vcC7h8MklGBkrvmUG9rbpkisrTrU23R3ABgum-uoQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Saira Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sairaextracondensed/v11/-nFvOHYr-vcC7h8MklGBkrvmUG9rbpkisrTrT27R3ABgum-uoQ.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Saira Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sairaextracondensed/v11/-nFvOHYr-vcC7h8MklGBkrvmUG9rbpkisrTra2_R3ABgum-uoQ.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Saira Extra Condensed" - } - ] - }, - { - "name": "Saira Semi Condensed", - "fontFamily": "Saira Semi Condensed, sans-serif", - "slug": "saira-semi-condensed", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sairasemicondensed/v11/U9MN6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXdvaOM8rXT-8V8.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Saira Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sairasemicondensed/v11/U9MM6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXfDScMWg3j36Ebz.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Saira Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sairasemicondensed/v11/U9MM6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXenSsMWg3j36Ebz.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Saira Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sairasemicondensed/v11/U9MD6c-2-nnJkHxyCjRcnMHcWVWV1cWRRU8LYuceqGT-.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Saira Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sairasemicondensed/v11/U9MM6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXf_S8MWg3j36Ebz.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Saira Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sairasemicondensed/v11/U9MM6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXfTTMMWg3j36Ebz.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Saira Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sairasemicondensed/v11/U9MM6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXe3TcMWg3j36Ebz.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Saira Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sairasemicondensed/v11/U9MM6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXerTsMWg3j36Ebz.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Saira Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sairasemicondensed/v11/U9MM6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXePT8MWg3j36Ebz.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Saira Semi Condensed" - } - ] - }, - { - "name": "Saira Stencil One", - "fontFamily": "Saira Stencil One, system-ui", - "slug": "saira-stencil-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sairastencilone/v14/SLXSc03I6HkvZGJ1GvvipLoYSTEL9AsMawif2YQ2.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Saira Stencil One" - } - ] - }, - { - "name": "Salsa", - "fontFamily": "Salsa, system-ui", - "slug": "salsa", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/salsa/v17/gNMKW3FiRpKj-imY8ncKEZez.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Salsa" - } - ] - }, - { - "name": "Sanchez", - "fontFamily": "Sanchez, serif", - "slug": "sanchez", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sanchez/v13/Ycm2sZJORluHnXbITm5b_BwE1l0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sanchez" - }, - { - "src": "http://fonts.gstatic.com/s/sanchez/v13/Ycm0sZJORluHnXbIfmxR-D4Bxl3gkw.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Sanchez" - } - ] - }, - { - "name": "Sancreek", - "fontFamily": "Sancreek, system-ui", - "slug": "sancreek", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sancreek/v23/pxiHypAnsdxUm159X7D-XV9NEe-K.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sancreek" - } - ] - }, - { - "name": "Sansita", - "fontFamily": "Sansita, sans-serif", - "slug": "sansita", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sansita/v11/QldONTRRphEb_-V7HBm7TXFf3qw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sansita" - }, - { - "src": "http://fonts.gstatic.com/s/sansita/v11/QldMNTRRphEb_-V7LBuxSVNazqx2xg.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Sansita" - }, - { - "src": "http://fonts.gstatic.com/s/sansita/v11/QldLNTRRphEb_-V7JKWUaXl0wqVv3_g.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Sansita" - }, - { - "src": "http://fonts.gstatic.com/s/sansita/v11/QldJNTRRphEb_-V7LBuJ9Xx-xodqz_joDQ.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Sansita" - }, - { - "src": "http://fonts.gstatic.com/s/sansita/v11/QldLNTRRphEb_-V7JLmXaXl0wqVv3_g.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Sansita" - }, - { - "src": "http://fonts.gstatic.com/s/sansita/v11/QldJNTRRphEb_-V7LBuJ6X9-xodqz_joDQ.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Sansita" - }, - { - "src": "http://fonts.gstatic.com/s/sansita/v11/QldLNTRRphEb_-V7JJ2WaXl0wqVv3_g.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Sansita" - }, - { - "src": "http://fonts.gstatic.com/s/sansita/v11/QldJNTRRphEb_-V7LBuJzX5-xodqz_joDQ.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Sansita" - } - ] - }, - { - "name": "Sansita Swashed", - "fontFamily": "Sansita Swashed, system-ui", - "slug": "sansita-swashed", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sansitaswashed/v17/BXR8vFfZifTZgFlDDLgNkBydPKTt3pVCeYWqJnZSW-ppbToVehmEa4Q.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Sansita Swashed" - }, - { - "src": "http://fonts.gstatic.com/s/sansitaswashed/v17/BXR8vFfZifTZgFlDDLgNkBydPKTt3pVCeYWqJnZSW7RpbToVehmEa4Q.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sansita Swashed" - }, - { - "src": "http://fonts.gstatic.com/s/sansitaswashed/v17/BXR8vFfZifTZgFlDDLgNkBydPKTt3pVCeYWqJnZSW4ZpbToVehmEa4Q.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Sansita Swashed" - }, - { - "src": "http://fonts.gstatic.com/s/sansitaswashed/v17/BXR8vFfZifTZgFlDDLgNkBydPKTt3pVCeYWqJnZSW2pubToVehmEa4Q.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Sansita Swashed" - }, - { - "src": "http://fonts.gstatic.com/s/sansitaswashed/v17/BXR8vFfZifTZgFlDDLgNkBydPKTt3pVCeYWqJnZSW1NubToVehmEa4Q.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Sansita Swashed" - }, - { - "src": "http://fonts.gstatic.com/s/sansitaswashed/v17/BXR8vFfZifTZgFlDDLgNkBydPKTt3pVCeYWqJnZSWzRubToVehmEa4Q.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Sansita Swashed" - }, - { - "src": "http://fonts.gstatic.com/s/sansitaswashed/v17/BXR8vFfZifTZgFlDDLgNkBydPKTt3pVCeYWqJnZSWx1ubToVehmEa4Q.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Sansita Swashed" - } - ] - }, - { - "name": "Sarabun", - "fontFamily": "Sarabun, sans-serif", - "slug": "sarabun", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sarabun/v13/DtVhJx26TKEr37c9YHZJmnYI5gnOpg.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Sarabun" - }, - { - "src": "http://fonts.gstatic.com/s/sarabun/v13/DtVnJx26TKEr37c9aBBx_nwMxAzephhN.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Sarabun" - }, - { - "src": "http://fonts.gstatic.com/s/sarabun/v13/DtVmJx26TKEr37c9YNpoulwm6gDXvwE.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Sarabun" - }, - { - "src": "http://fonts.gstatic.com/s/sarabun/v13/DtVkJx26TKEr37c9aBBxUl0s7iLSrwFUlw.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Sarabun" - }, - { - "src": "http://fonts.gstatic.com/s/sarabun/v13/DtVmJx26TKEr37c9YL5rulwm6gDXvwE.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Sarabun" - }, - { - "src": "http://fonts.gstatic.com/s/sarabun/v13/DtVkJx26TKEr37c9aBBxNl4s7iLSrwFUlw.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Sarabun" - }, - { - "src": "http://fonts.gstatic.com/s/sarabun/v13/DtVjJx26TKEr37c9WBJDnlQN9gk.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sarabun" - }, - { - "src": "http://fonts.gstatic.com/s/sarabun/v13/DtVhJx26TKEr37c9aBBJmnYI5gnOpg.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Sarabun" - }, - { - "src": "http://fonts.gstatic.com/s/sarabun/v13/DtVmJx26TKEr37c9YOZqulwm6gDXvwE.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Sarabun" - }, - { - "src": "http://fonts.gstatic.com/s/sarabun/v13/DtVkJx26TKEr37c9aBBxbl8s7iLSrwFUlw.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Sarabun" - }, - { - "src": "http://fonts.gstatic.com/s/sarabun/v13/DtVmJx26TKEr37c9YMptulwm6gDXvwE.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Sarabun" - }, - { - "src": "http://fonts.gstatic.com/s/sarabun/v13/DtVkJx26TKEr37c9aBBxQlgs7iLSrwFUlw.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Sarabun" - }, - { - "src": "http://fonts.gstatic.com/s/sarabun/v13/DtVmJx26TKEr37c9YK5sulwm6gDXvwE.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Sarabun" - }, - { - "src": "http://fonts.gstatic.com/s/sarabun/v13/DtVkJx26TKEr37c9aBBxJlks7iLSrwFUlw.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Sarabun" - }, - { - "src": "http://fonts.gstatic.com/s/sarabun/v13/DtVmJx26TKEr37c9YLJvulwm6gDXvwE.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Sarabun" - }, - { - "src": "http://fonts.gstatic.com/s/sarabun/v13/DtVkJx26TKEr37c9aBBxOlos7iLSrwFUlw.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Sarabun" - } - ] - }, - { - "name": "Sarala", - "fontFamily": "Sarala, sans-serif", - "slug": "sarala", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sarala/v10/uK_y4riEZv4o1w9RCh0TMv6EXw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sarala" - }, - { - "src": "http://fonts.gstatic.com/s/sarala/v10/uK_x4riEZv4o1w9ptjI3OtWYVkMpXA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Sarala" - } - ] - }, - { - "name": "Sarina", - "fontFamily": "Sarina, system-ui", - "slug": "sarina", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sarina/v21/-F6wfjF3ITQwasLhLkDUriBQxw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sarina" - } - ] - }, - { - "name": "Sarpanch", - "fontFamily": "Sarpanch, sans-serif", - "slug": "sarpanch", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sarpanch/v11/hESy6Xt4NCpRuk6Pzh2ARIrX_20n.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sarpanch" - }, - { - "src": "http://fonts.gstatic.com/s/sarpanch/v11/hES16Xt4NCpRuk6PziV0ba7f1HEuRHkM.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Sarpanch" - }, - { - "src": "http://fonts.gstatic.com/s/sarpanch/v11/hES16Xt4NCpRuk6PziVYaq7f1HEuRHkM.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Sarpanch" - }, - { - "src": "http://fonts.gstatic.com/s/sarpanch/v11/hES16Xt4NCpRuk6PziU8a67f1HEuRHkM.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Sarpanch" - }, - { - "src": "http://fonts.gstatic.com/s/sarpanch/v11/hES16Xt4NCpRuk6PziUgaK7f1HEuRHkM.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Sarpanch" - }, - { - "src": "http://fonts.gstatic.com/s/sarpanch/v11/hES16Xt4NCpRuk6PziUEaa7f1HEuRHkM.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Sarpanch" - } - ] - }, - { - "name": "Sassy Frass", - "fontFamily": "Sassy Frass, cursive", - "slug": "sassy-frass", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sassyfrass/v5/LhWhMVrGOe0FLb97BjhsE99dGNWQg_am.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sassy Frass" - } - ] - }, - { - "name": "Satisfy", - "fontFamily": "Satisfy, cursive", - "slug": "satisfy", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/satisfy/v17/rP2Hp2yn6lkG50LoOZSCHBeHFl0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Satisfy" - } - ] - }, - { - "name": "Sawarabi Gothic", - "fontFamily": "Sawarabi Gothic, sans-serif", - "slug": "sawarabi-gothic", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sawarabigothic/v12/x3d4ckfVaqqa-BEj-I9mE65u3k3NBSk3E2YljQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sawarabi Gothic" - } - ] - }, - { - "name": "Sawarabi Mincho", - "fontFamily": "Sawarabi Mincho, serif", - "slug": "sawarabi-mincho", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sawarabimincho/v17/8QIRdiDaitzr7brc8ahpxt6GcIJTLahP46UDUw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sawarabi Mincho" - } - ] - }, - { - "name": "Scada", - "fontFamily": "Scada, sans-serif", - "slug": "scada", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/scada/v15/RLpxK5Pv5qumeWJoxzUobkvv.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Scada" - }, - { - "src": "http://fonts.gstatic.com/s/scada/v15/RLp_K5Pv5qumeVJqzTEKa1vvffg.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Scada" - }, - { - "src": "http://fonts.gstatic.com/s/scada/v15/RLp8K5Pv5qumeVrU6BEgRVfmZOE5.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Scada" - }, - { - "src": "http://fonts.gstatic.com/s/scada/v15/RLp6K5Pv5qumeVJq9Y0lT1PEYfE5p6g.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Scada" - } - ] - }, - { - "name": "Scheherazade New", - "fontFamily": "Scheherazade New, serif", - "slug": "scheherazade-new", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/scheherazadenew/v15/4UaZrFhTvxVnHDvUkUiHg8jprP4DCwNsOl4p5Is.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Scheherazade New" - }, - { - "src": "http://fonts.gstatic.com/s/scheherazadenew/v15/4UaerFhTvxVnHDvUkUiHg8jprP4DM_dFHlYC-IKnoSE.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Scheherazade New" - }, - { - "src": "http://fonts.gstatic.com/s/scheherazadenew/v15/4UaerFhTvxVnHDvUkUiHg8jprP4DM9tCHlYC-IKnoSE.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Scheherazade New" - }, - { - "src": "http://fonts.gstatic.com/s/scheherazadenew/v15/4UaerFhTvxVnHDvUkUiHg8jprP4DM79DHlYC-IKnoSE.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Scheherazade New" - } - ] - }, - { - "name": "Schibsted Grotesk", - "fontFamily": "Schibsted Grotesk, sans-serif", - "slug": "schibsted-grotesk", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzK5SSPQuCQF3t8uOwiUL-taUTtarVKQ9vZ6pJJWlMNIsEAT8JuXFGVOQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Schibsted Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzK5SSPQuCQF3t8uOwiUL-taUTtarVKQ9vZ6pJJWlMNEMEAT8JuXFGVOQ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Schibsted Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzK5SSPQuCQF3t8uOwiUL-taUTtarVKQ9vZ6pJJWlMN_MYAT8JuXFGVOQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Schibsted Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzK5SSPQuCQF3t8uOwiUL-taUTtarVKQ9vZ6pJJWlMNxcYAT8JuXFGVOQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Schibsted Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzK5SSPQuCQF3t8uOwiUL-taUTtarVKQ9vZ6pJJWlMNosYAT8JuXFGVOQ.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Schibsted Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzK5SSPQuCQF3t8uOwiUL-taUTtarVKQ9vZ6pJJWlMNi8YAT8JuXFGVOQ.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Schibsted Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzI5SSPQuCQF3t8uOwiUL-taUTtap9DcSQBg_nT9FQY6oLoDMhqflSFOTXs.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Schibsted Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzI5SSPQuCQF3t8uOwiUL-taUTtap9DcSQBg_nT9FQY6oLaDMhqflSFOTXs.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Schibsted Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzI5SSPQuCQF3t8uOwiUL-taUTtap9DcSQBg_nT9FQY6oI2C8hqflSFOTXs.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Schibsted Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzI5SSPQuCQF3t8uOwiUL-taUTtap9DcSQBg_nT9FQY6oIPC8hqflSFOTXs.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Schibsted Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzI5SSPQuCQF3t8uOwiUL-taUTtap9DcSQBg_nT9FQY6oJoC8hqflSFOTXs.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Schibsted Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzI5SSPQuCQF3t8uOwiUL-taUTtap9DcSQBg_nT9FQY6oJBC8hqflSFOTXs.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Schibsted Grotesk" - } - ] - }, - { - "name": "Schoolbell", - "fontFamily": "Schoolbell, cursive", - "slug": "schoolbell", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/schoolbell/v18/92zQtBZWOrcgoe-fgnJIVxIQ6mRqfiQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Schoolbell" - } - ] - }, - { - "name": "Scope One", - "fontFamily": "Scope One, serif", - "slug": "scope-one", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/scopeone/v14/WBLnrEXKYFlGHrOKmGD1W0_MJMGxiQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Scope One" - } - ] - }, - { - "name": "Seaweed Script", - "fontFamily": "Seaweed Script, system-ui", - "slug": "seaweed-script", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/seaweedscript/v13/bx6cNx6Tne2pxOATYE8C_Rsoe0WJ-KcGVbLW.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Seaweed Script" - } - ] - }, - { - "name": "Secular One", - "fontFamily": "Secular One, sans-serif", - "slug": "secular-one", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/secularone/v11/8QINdiTajsj_87rMuMdKypDlMul7LJpK.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Secular One" - } - ] - }, - { - "name": "Sedgwick Ave", - "fontFamily": "Sedgwick Ave, cursive", - "slug": "sedgwick-ave", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sedgwickave/v12/uK_04rKEYuguzAcSYRdWTJq8Xmg1Vcf5JA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sedgwick Ave" - } - ] - }, - { - "name": "Sedgwick Ave Display", - "fontFamily": "Sedgwick Ave Display, cursive", - "slug": "sedgwick-ave-display", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sedgwickavedisplay/v19/xfuu0XPgU3jZPUoUo3ScvmPi-NapQ8OxM2czd-YnOzUD.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sedgwick Ave Display" - } - ] - }, - { - "name": "Sen", - "fontFamily": "Sen, sans-serif", - "slug": "sen", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sen/v7/6xKjdSxYI9_Hm_-MImrpLQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sen" - }, - { - "src": "http://fonts.gstatic.com/s/sen/v7/6xKudSxYI9__J9CoKkH1JHUQSQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Sen" - }, - { - "src": "http://fonts.gstatic.com/s/sen/v7/6xKudSxYI9__O9OoKkH1JHUQSQ.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Sen" - } - ] - }, - { - "name": "Send Flowers", - "fontFamily": "Send Flowers, cursive", - "slug": "send-flowers", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sendflowers/v2/If2PXTjtZS-0Xqy13uCQSULvxwjjouU1iw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Send Flowers" - } - ] - }, - { - "name": "Sevillana", - "fontFamily": "Sevillana, system-ui", - "slug": "sevillana", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sevillana/v21/KFOlCnWFscmDt1Bfiy1vAx05IsDqlA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sevillana" - } - ] - }, - { - "name": "Seymour One", - "fontFamily": "Seymour One, sans-serif", - "slug": "seymour-one", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/seymourone/v20/4iCp6Khla9xbjQpoWGGd0myIPYBvgpUI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Seymour One" - } - ] - }, - { - "name": "Shadows Into Light", - "fontFamily": "Shadows Into Light, cursive", - "slug": "shadows-into-light", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/shadowsintolight/v15/UqyNK9UOIntux_czAvDQx_ZcHqZXBNQDcsr4xzSMYA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Shadows Into Light" - } - ] - }, - { - "name": "Shadows Into Light Two", - "fontFamily": "Shadows Into Light Two, cursive", - "slug": "shadows-into-light-two", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/shadowsintolighttwo/v14/4iC86LVlZsRSjQhpWGedwyOoW-0A6_kpsyNmlAvNGLNnIF0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Shadows Into Light Two" - } - ] - }, - { - "name": "Shalimar", - "fontFamily": "Shalimar, cursive", - "slug": "shalimar", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/shalimar/v5/uU9MCBoE6I6iNWFUvTPx8PCOg0uX.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Shalimar" - } - ] - }, - { - "name": "Shantell Sans", - "fontFamily": "Shantell Sans, system-ui", - "slug": "shantell-sans", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/shantellsans/v7/FeUaS0pCoLIo-lcdY7kjvNoQqWVWB0qWpl29ajppTuUTu_kJKmHesPOL-maYi4xZeHCNQ09eBlmv2QcUzJ39-rAISYQiS2i2yPwxjyRN.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Shantell Sans" - }, - { - "src": "http://fonts.gstatic.com/s/shantellsans/v7/FeUaS0pCoLIo-lcdY7kjvNoQqWVWB0qWpl29ajppTuUTu_kJKmHesPOL-maYi4xZeHCNQ09eBlmv2QcUzJ39-rAISYR8S2i2yPwxjyRN.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Shantell Sans" - }, - { - "src": "http://fonts.gstatic.com/s/shantellsans/v7/FeUaS0pCoLIo-lcdY7kjvNoQqWVWB0qWpl29ajppTuUTu_kJKmHesPOL-maYi4xZeHCNQ09eBlmv2QcUzJ39-rAISYROS2i2yPwxjyRN.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Shantell Sans" - }, - { - "src": "http://fonts.gstatic.com/s/shantellsans/v7/FeUaS0pCoLIo-lcdY7kjvNoQqWVWB0qWpl29ajppTuUTu_kJKmHesPOL-maYi4xZeHCNQ09eBlmv2QcUzJ39-rAISYSiTGi2yPwxjyRN.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Shantell Sans" - }, - { - "src": "http://fonts.gstatic.com/s/shantellsans/v7/FeUaS0pCoLIo-lcdY7kjvNoQqWVWB0qWpl29ajppTuUTu_kJKmHesPOL-maYi4xZeHCNQ09eBlmv2QcUzJ39-rAISYSbTGi2yPwxjyRN.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Shantell Sans" - }, - { - "src": "http://fonts.gstatic.com/s/shantellsans/v7/FeUaS0pCoLIo-lcdY7kjvNoQqWVWB0qWpl29ajppTuUTu_kJKmHesPOL-maYi4xZeHCNQ09eBlmv2QcUzJ39-rAISYT8TGi2yPwxjyRN.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Shantell Sans" - }, - { - "src": "http://fonts.gstatic.com/s/shantellsans/v7/FeUcS0pCoLIo-lcdY7kjvNoQg2xkycTqsuA6bi9pTt8YiT-NXidjb_ee-maigL6R8nKVh8BbE1mv4wwmM0WUkSqmTpG0CN71wvgTijRNYgQ.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Shantell Sans" - }, - { - "src": "http://fonts.gstatic.com/s/shantellsans/v7/FeUcS0pCoLIo-lcdY7kjvNoQg2xkycTqsuA6bi9pTt8YiT-NXidjb_ee-maigL6R8nKVh8BbE1mv4wwmM0WUkSqmTpG0CID1wvgTijRNYgQ.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Shantell Sans" - }, - { - "src": "http://fonts.gstatic.com/s/shantellsans/v7/FeUcS0pCoLIo-lcdY7kjvNoQg2xkycTqsuA6bi9pTt8YiT-NXidjb_ee-maigL6R8nKVh8BbE1mv4wwmM0WUkSqmTpG0CLL1wvgTijRNYgQ.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Shantell Sans" - }, - { - "src": "http://fonts.gstatic.com/s/shantellsans/v7/FeUcS0pCoLIo-lcdY7kjvNoQg2xkycTqsuA6bi9pTt8YiT-NXidjb_ee-maigL6R8nKVh8BbE1mv4wwmM0WUkSqmTpG0CF7ywvgTijRNYgQ.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Shantell Sans" - }, - { - "src": "http://fonts.gstatic.com/s/shantellsans/v7/FeUcS0pCoLIo-lcdY7kjvNoQg2xkycTqsuA6bi9pTt8YiT-NXidjb_ee-maigL6R8nKVh8BbE1mv4wwmM0WUkSqmTpG0CGfywvgTijRNYgQ.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Shantell Sans" - }, - { - "src": "http://fonts.gstatic.com/s/shantellsans/v7/FeUcS0pCoLIo-lcdY7kjvNoQg2xkycTqsuA6bi9pTt8YiT-NXidjb_ee-maigL6R8nKVh8BbE1mv4wwmM0WUkSqmTpG0CADywvgTijRNYgQ.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Shantell Sans" - } - ] - }, - { - "name": "Shanti", - "fontFamily": "Shanti, sans-serif", - "slug": "shanti", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/shanti/v23/t5thIREMM4uSDgzgU0ezpKfwzA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Shanti" - } - ] - }, - { - "name": "Share", - "fontFamily": "Share, system-ui", - "slug": "share", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/share/v16/i7dEIFliZjKNF5VNHLq2cV5d.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Share" - }, - { - "src": "http://fonts.gstatic.com/s/share/v16/i7dKIFliZjKNF6VPFr6UdE5dWFM.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Share" - }, - { - "src": "http://fonts.gstatic.com/s/share/v16/i7dJIFliZjKNF63xM56-WkJUQUq7.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Share" - }, - { - "src": "http://fonts.gstatic.com/s/share/v16/i7dPIFliZjKNF6VPLgK7UEZ2RFq7AwU.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Share" - } - ] - }, - { - "name": "Share Tech", - "fontFamily": "Share Tech, sans-serif", - "slug": "share-tech", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sharetech/v17/7cHtv4Uyi5K0OeZ7bohUwHoDmTcibrA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Share Tech" - } - ] - }, - { - "name": "Share Tech Mono", - "fontFamily": "Share Tech Mono, monospace", - "slug": "share-tech-mono", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sharetechmono/v15/J7aHnp1uDWRBEqV98dVQztYldFc7pAsEIc3Xew.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Share Tech Mono" - } - ] - }, - { - "name": "Shippori Antique", - "fontFamily": "Shippori Antique, sans-serif", - "slug": "shippori-antique", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/shipporiantique/v8/-F6qfid3KC8pdMyzR0qRyFUht11v8ldPg-IUDNg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Shippori Antique" - } - ] - }, - { - "name": "Shippori Antique B1", - "fontFamily": "Shippori Antique B1, sans-serif", - "slug": "shippori-antique-b1", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/shipporiantiqueb1/v8/2Eb7L_JwClR7Zl_UAKZ0mUHw3oMKd40grRFCj9-5Y8Y.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Shippori Antique B1" - } - ] - }, - { - "name": "Shippori Mincho", - "fontFamily": "Shippori Mincho, serif", - "slug": "shippori-mincho", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/shipporimincho/v14/VdGGAZweH5EbgHY6YExcZfDoj0BA2_-C7LoS7g.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Shippori Mincho" - }, - { - "src": "http://fonts.gstatic.com/s/shipporimincho/v14/VdGDAZweH5EbgHY6YExcZfDoj0B4L9am5JEO5--2zg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Shippori Mincho" - }, - { - "src": "http://fonts.gstatic.com/s/shipporimincho/v14/VdGDAZweH5EbgHY6YExcZfDoj0B4A9Gm5JEO5--2zg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Shippori Mincho" - }, - { - "src": "http://fonts.gstatic.com/s/shipporimincho/v14/VdGDAZweH5EbgHY6YExcZfDoj0B4Z9Cm5JEO5--2zg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Shippori Mincho" - }, - { - "src": "http://fonts.gstatic.com/s/shipporimincho/v14/VdGDAZweH5EbgHY6YExcZfDoj0B4e9Om5JEO5--2zg.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Shippori Mincho" - } - ] - }, - { - "name": "Shippori Mincho B1", - "fontFamily": "Shippori Mincho B1, serif", - "slug": "shippori-mincho-b1", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/shipporiminchob1/v19/~ChQKElNoaXBwb3JpIE1pbmNobyBCMSAAKgQIARgB.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Shippori Mincho B1" - }, - { - "src": "http://fonts.gstatic.com/s/shipporiminchob1/v19/~ChcKElNoaXBwb3JpIE1pbmNobyBCMRj0AyAAKgQIARgB.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Shippori Mincho B1" - }, - { - "src": "http://fonts.gstatic.com/s/shipporiminchob1/v19/~ChcKElNoaXBwb3JpIE1pbmNobyBCMRjYBCAAKgQIARgB.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Shippori Mincho B1" - }, - { - "src": "http://fonts.gstatic.com/s/shipporiminchob1/v19/~ChcKElNoaXBwb3JpIE1pbmNobyBCMRi8BSAAKgQIARgB.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Shippori Mincho B1" - }, - { - "src": "http://fonts.gstatic.com/s/shipporiminchob1/v19/~ChcKElNoaXBwb3JpIE1pbmNobyBCMRigBiAAKgQIARgB.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Shippori Mincho B1" - } - ] - }, - { - "name": "Shizuru", - "fontFamily": "Shizuru, system-ui", - "slug": "shizuru", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/shizuru/v10/O4ZSFGfvnxFiCA3i30IJlgUTj2A.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Shizuru" - } - ] - }, - { - "name": "Shojumaru", - "fontFamily": "Shojumaru, system-ui", - "slug": "shojumaru", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/shojumaru/v15/rax_HiWfutkLLnaKCtlMBBJek0vA8A.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Shojumaru" - } - ] - }, - { - "name": "Short Stack", - "fontFamily": "Short Stack, cursive", - "slug": "short-stack", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/shortstack/v15/bMrzmS2X6p0jZC6EcmPFX-SScX8D0nq6.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Short Stack" - } - ] - }, - { - "name": "Shrikhand", - "fontFamily": "Shrikhand, system-ui", - "slug": "shrikhand", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/shrikhand/v12/a8IbNovtLWfR7T7bMJwbBIiQ0zhMtA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Shrikhand" - } - ] - }, - { - "name": "Siemreap", - "fontFamily": "Siemreap, system-ui", - "slug": "siemreap", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/siemreap/v24/Gg82N5oFbgLvHAfNl2YbnA8DLXpe.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Siemreap" - } - ] - }, - { - "name": "Sigmar", - "fontFamily": "Sigmar, system-ui", - "slug": "sigmar", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sigmar/v3/hv-XlzJgIE8a85pUbWY3MTFgVg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sigmar" - } - ] - }, - { - "name": "Sigmar One", - "fontFamily": "Sigmar One, system-ui", - "slug": "sigmar-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sigmarone/v16/co3DmWZ8kjZuErj9Ta3dk6Pjp3Di8U0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sigmar One" - } - ] - }, - { - "name": "Signika", - "fontFamily": "Signika, sans-serif", - "slug": "signika", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/signika/v20/vEFO2_JTCgwQ5ejvMV0O96D01E8J0tIJHJbGhs_cfKe1.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Signika" - }, - { - "src": "http://fonts.gstatic.com/s/signika/v20/vEFO2_JTCgwQ5ejvMV0O96D01E8J0tJXHJbGhs_cfKe1.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Signika" - }, - { - "src": "http://fonts.gstatic.com/s/signika/v20/vEFO2_JTCgwQ5ejvMV0O96D01E8J0tJlHJbGhs_cfKe1.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Signika" - }, - { - "src": "http://fonts.gstatic.com/s/signika/v20/vEFO2_JTCgwQ5ejvMV0O96D01E8J0tKJG5bGhs_cfKe1.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Signika" - }, - { - "src": "http://fonts.gstatic.com/s/signika/v20/vEFO2_JTCgwQ5ejvMV0O96D01E8J0tKwG5bGhs_cfKe1.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Signika" - } - ] - }, - { - "name": "Signika Negative", - "fontFamily": "Signika Negative, sans-serif", - "slug": "signika-negative", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/signikanegative/v20/E21x_cfngu7HiRpPX3ZpNE4kY5zKSPmJXkF0VDD2RAr5S73st9hiuEq8.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Signika Negative" - }, - { - "src": "http://fonts.gstatic.com/s/signikanegative/v20/E21x_cfngu7HiRpPX3ZpNE4kY5zKSPmJXkF0VDD2RAqnS73st9hiuEq8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Signika Negative" - }, - { - "src": "http://fonts.gstatic.com/s/signikanegative/v20/E21x_cfngu7HiRpPX3ZpNE4kY5zKSPmJXkF0VDD2RAqVS73st9hiuEq8.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Signika Negative" - }, - { - "src": "http://fonts.gstatic.com/s/signikanegative/v20/E21x_cfngu7HiRpPX3ZpNE4kY5zKSPmJXkF0VDD2RAp5TL3st9hiuEq8.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Signika Negative" - }, - { - "src": "http://fonts.gstatic.com/s/signikanegative/v20/E21x_cfngu7HiRpPX3ZpNE4kY5zKSPmJXkF0VDD2RApATL3st9hiuEq8.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Signika Negative" - } - ] - }, - { - "name": "Silkscreen", - "fontFamily": "Silkscreen, system-ui", - "slug": "silkscreen", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/silkscreen/v1/m8JXjfVPf62XiF7kO-i9ULRvamODxdI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Silkscreen" - }, - { - "src": "http://fonts.gstatic.com/s/silkscreen/v1/m8JUjfVPf62XiF7kO-i9aAhATmuo2dudFvc.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Silkscreen" - } - ] - }, - { - "name": "Simonetta", - "fontFamily": "Simonetta, system-ui", - "slug": "simonetta", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/simonetta/v24/x3dickHVYrCU5BU15c4BfPACvy_1BA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Simonetta" - }, - { - "src": "http://fonts.gstatic.com/s/simonetta/v24/x3dkckHVYrCU5BU15c4xfvoGnSrlBBsy.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Simonetta" - }, - { - "src": "http://fonts.gstatic.com/s/simonetta/v24/x3dnckHVYrCU5BU15c45-N0mtwTpDQIrGg.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Simonetta" - }, - { - "src": "http://fonts.gstatic.com/s/simonetta/v24/x3d5ckHVYrCU5BU15c4xfsKCsA7tLwc7Gn88.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Simonetta" - } - ] - }, - { - "name": "Single Day", - "fontFamily": "Single Day, system-ui", - "slug": "single-day", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/singleday/v15/LYjHdGDjlEgoAcF95EI5jVoFUNfeQJU.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Single Day" - } - ] - }, - { - "name": "Sintony", - "fontFamily": "Sintony, sans-serif", - "slug": "sintony", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sintony/v13/XoHm2YDqR7-98cVUITQnu98ojjs.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sintony" - }, - { - "src": "http://fonts.gstatic.com/s/sintony/v13/XoHj2YDqR7-98cVUGYgIn9cDkjLp6C8.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Sintony" - } - ] - }, - { - "name": "Sirin Stencil", - "fontFamily": "Sirin Stencil, system-ui", - "slug": "sirin-stencil", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sirinstencil/v21/mem4YaWwznmLx-lzGfN7MdRydchGBq6al6o.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sirin Stencil" - } - ] - }, - { - "name": "Six Caps", - "fontFamily": "Six Caps, sans-serif", - "slug": "six-caps", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sixcaps/v16/6ae_4KGrU7VR7bNmabcS9XXaPCop.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Six Caps" - } - ] - }, - { - "name": "Skranji", - "fontFamily": "Skranji, system-ui", - "slug": "skranji", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/skranji/v13/OZpDg_dtriVFNerMYzuuklTm3Ek.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Skranji" - }, - { - "src": "http://fonts.gstatic.com/s/skranji/v13/OZpGg_dtriVFNerMW4eBtlzNwED-b4g.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Skranji" - } - ] - }, - { - "name": "Slabo 13px", - "fontFamily": "Slabo 13px, serif", - "slug": "slabo-13px", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/slabo13px/v13/11hEGp_azEvXZUdSBzzRcKer2wkYnvI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Slabo 13px" - } - ] - }, - { - "name": "Slabo 27px", - "fontFamily": "Slabo 27px, serif", - "slug": "slabo-27px", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/slabo27px/v12/mFT0WbgBwKPR_Z4hGN2qsxgJ1EJ7i90.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Slabo 27px" - } - ] - }, - { - "name": "Slackey", - "fontFamily": "Slackey, system-ui", - "slug": "slackey", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/slackey/v24/N0bV2SdQO-5yM0-dKlRaJdbWgdY.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Slackey" - } - ] - }, - { - "name": "Slackside One", - "fontFamily": "Slackside One, cursive", - "slug": "slackside-one", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/slacksideone/v8/EJRQQgMrXdcGsiBuvnRxodTwVy7VocNB6Iw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Slackside One" - } - ] - }, - { - "name": "Smokum", - "fontFamily": "Smokum, system-ui", - "slug": "smokum", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/smokum/v24/TK3iWkUbAhopmrdGHjUHte5fKg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Smokum" - } - ] - }, - { - "name": "Smooch", - "fontFamily": "Smooch, cursive", - "slug": "smooch", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/smooch/v5/o-0LIps4xW8U1xUBjqp_6hVdYg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Smooch" - } - ] - }, - { - "name": "Smooch Sans", - "fontFamily": "Smooch Sans, sans-serif", - "slug": "smooch-sans", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/smoochsans/v10/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oiwUFodqIeNlzayg.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Smooch Sans" - }, - { - "src": "http://fonts.gstatic.com/s/smoochsans/v10/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oiQUBodqIeNlzayg.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Smooch Sans" - }, - { - "src": "http://fonts.gstatic.com/s/smoochsans/v10/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oin0BodqIeNlzayg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Smooch Sans" - }, - { - "src": "http://fonts.gstatic.com/s/smoochsans/v10/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oiwUBodqIeNlzayg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Smooch Sans" - }, - { - "src": "http://fonts.gstatic.com/s/smoochsans/v10/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oi80BodqIeNlzayg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Smooch Sans" - }, - { - "src": "http://fonts.gstatic.com/s/smoochsans/v10/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oiH0dodqIeNlzayg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Smooch Sans" - }, - { - "src": "http://fonts.gstatic.com/s/smoochsans/v10/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oiJkdodqIeNlzayg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Smooch Sans" - }, - { - "src": "http://fonts.gstatic.com/s/smoochsans/v10/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oiQUdodqIeNlzayg.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Smooch Sans" - }, - { - "src": "http://fonts.gstatic.com/s/smoochsans/v10/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oiaEdodqIeNlzayg.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Smooch Sans" - } - ] - }, - { - "name": "Smythe", - "fontFamily": "Smythe, system-ui", - "slug": "smythe", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/smythe/v23/MwQ3bhT01--coT1BOLh_uGInjA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Smythe" - } - ] - }, - { - "name": "Sniglet", - "fontFamily": "Sniglet, system-ui", - "slug": "sniglet", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sniglet/v17/cIf9MaFLtkE3UjaJxCmrYGkHgIs.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sniglet" - }, - { - "src": "http://fonts.gstatic.com/s/sniglet/v17/cIf4MaFLtkE3UjaJ_ImHRGEsnIJkWL4.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Sniglet" - } - ] - }, - { - "name": "Snippet", - "fontFamily": "Snippet, sans-serif", - "slug": "snippet", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/snippet/v21/bWt47f7XfQH9Gupu2v_Afcp9QWc.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Snippet" - } - ] - }, - { - "name": "Snowburst One", - "fontFamily": "Snowburst One, system-ui", - "slug": "snowburst-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/snowburstone/v20/MQpS-WezKdujBsXY3B7I-UT7eZ-UPyacPbo.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Snowburst One" - } - ] - }, - { - "name": "Sofadi One", - "fontFamily": "Sofadi One, system-ui", - "slug": "sofadi-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sofadione/v21/JIA2UVBxdnVBuElZaMFGcDOIETkmYDU.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sofadi One" - } - ] - }, - { - "name": "Sofia", - "fontFamily": "Sofia, cursive", - "slug": "sofia", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sofia/v14/8QIHdirahM3j_vu-sowsrqjk.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sofia" - } - ] - }, - { - "name": "Sofia Sans", - "fontFamily": "Sofia Sans, sans-serif", - "slug": "sofia-sans", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69B6sa3trvKCXl8k.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Sofia Sans" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69D6sK3trvKCXl8k.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Sofia Sans" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69AksK3trvKCXl8k.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Sofia Sans" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69B6sK3trvKCXl8k.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sofia Sans" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69BIsK3trvKCXl8k.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Sofia Sans" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69Ckt63trvKCXl8k.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Sofia Sans" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69Cdt63trvKCXl8k.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Sofia Sans" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69D6t63trvKCXl8k.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Sofia Sans" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69DTt63trvKCXl8k.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Sofia Sans" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy80WvpPagW08kdLY.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Sofia Sans" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy88WupPagW08kdLY.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Sofia Sans" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy8xuupPagW08kdLY.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Sofia Sans" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy80WupPagW08kdLY.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Sofia Sans" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy83eupPagW08kdLY.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Sofia Sans" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy85uppPagW08kdLY.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Sofia Sans" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy86KppPagW08kdLY.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Sofia Sans" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy88WppPagW08kdLY.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Sofia Sans" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasans/v16/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy8-yppPagW08kdLY.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Sofia Sans" - } - ] - }, - { - "name": "Sofia Sans Condensed", - "fontFamily": "Sofia Sans Condensed, sans-serif", - "slug": "sofia-sans-condensed", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqh-Csl8QO3OfwQQ.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Sofia Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqB-Gsl8QO3OfwQQ.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Sofia Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUq2eGsl8QO3OfwQQ.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Sofia Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqh-Gsl8QO3OfwQQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sofia Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqteGsl8QO3OfwQQ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Sofia Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqWeasl8QO3OfwQQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Sofia Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqYOasl8QO3OfwQQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Sofia Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqB-asl8QO3OfwQQ.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Sofia Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqLuasl8QO3OfwQQ.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Sofia Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6JE1c4K_uLgQZ_3.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Sofia Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6LE1M4K_uLgQZ_3.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Sofia Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6Ia1M4K_uLgQZ_3.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Sofia Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6JE1M4K_uLgQZ_3.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Sofia Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6J21M4K_uLgQZ_3.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Sofia Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6Ka084K_uLgQZ_3.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Sofia Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6Kj084K_uLgQZ_3.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Sofia Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6LE084K_uLgQZ_3.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Sofia Sans Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanscondensed/v2/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6Lt084K_uLgQZ_3.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Sofia Sans Condensed" - } - ] - }, - { - "name": "Sofia Sans Extra Condensed", - "fontFamily": "Sofia Sans Extra Condensed, sans-serif", - "slug": "sofia-sans-extra-condensed", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLmmmEfzmM356GxA.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Sofia Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLGmiEfzmM356GxA.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Sofia Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLxGiEfzmM356GxA.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Sofia Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLmmiEfzmM356GxA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sofia Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLqGiEfzmM356GxA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Sofia Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLRG-EfzmM356GxA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Sofia Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLfW-EfzmM356GxA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Sofia Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLGm-EfzmM356GxA.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Sofia Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLM2-EfzmM356GxA.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Sofia Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUitsPTOI_ZuWxFXe.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Sofia Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUivsPDOI_ZuWxFXe.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Sofia Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUisyPDOI_ZuWxFXe.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Sofia Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUitsPDOI_ZuWxFXe.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Sofia Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUitePDOI_ZuWxFXe.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Sofia Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUiuyOzOI_ZuWxFXe.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Sofia Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUiuLOzOI_ZuWxFXe.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Sofia Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUivsOzOI_ZuWxFXe.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Sofia Sans Extra Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUivFOzOI_ZuWxFXe.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Sofia Sans Extra Condensed" - } - ] - }, - { - "name": "Sofia Sans Semi Condensed", - "fontFamily": "Sofia Sans Semi Condensed, sans-serif", - "slug": "sofia-sans-semi-condensed", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvoobEO9TGahllIhN.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Sofia Sans Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvoqbEe9TGahllIhN.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Sofia Sans Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvopFEe9TGahllIhN.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Sofia Sans Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvoobEe9TGahllIhN.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sofia Sans Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvoopEe9TGahllIhN.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Sofia Sans Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvorFFu9TGahllIhN.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Sofia Sans Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvor8Fu9TGahllIhN.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Sofia Sans Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvoqbFu9TGahllIhN.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Sofia Sans Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvoqyFu9TGahllIhN.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Sofia Sans Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUgcRE6xHkZhNeas.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Sofia Sans Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUocQE6xHkZhNeas.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Sofia Sans Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUlkQE6xHkZhNeas.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Sofia Sans Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUgcQE6xHkZhNeas.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Sofia Sans Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUjUQE6xHkZhNeas.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Sofia Sans Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUtkXE6xHkZhNeas.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Sofia Sans Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUuAXE6xHkZhNeas.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Sofia Sans Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUocXE6xHkZhNeas.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Sofia Sans Semi Condensed" - }, - { - "src": "http://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUq4XE6xHkZhNeas.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Sofia Sans Semi Condensed" - } - ] - }, - { - "name": "Solitreo", - "fontFamily": "Solitreo, cursive", - "slug": "solitreo", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/solitreo/v2/r05YGLlS5a9KYsyNO8upyDYtStiJ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Solitreo" - } - ] - }, - { - "name": "Solway", - "fontFamily": "Solway, serif", - "slug": "solway", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/solway/v18/AMOTz46Cs2uTAOCuLlgZms0QW3mqyg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Solway" - }, - { - "src": "http://fonts.gstatic.com/s/solway/v18/AMOQz46Cs2uTAOCWgnA9kuYMUg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Solway" - }, - { - "src": "http://fonts.gstatic.com/s/solway/v18/AMOTz46Cs2uTAOCudlkZms0QW3mqyg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Solway" - }, - { - "src": "http://fonts.gstatic.com/s/solway/v18/AMOTz46Cs2uTAOCuPl8Zms0QW3mqyg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Solway" - }, - { - "src": "http://fonts.gstatic.com/s/solway/v18/AMOTz46Cs2uTAOCuIlwZms0QW3mqyg.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Solway" - } - ] - }, - { - "name": "Song Myung", - "fontFamily": "Song Myung, serif", - "slug": "song-myung", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/songmyung/v20/1cX2aUDWAJH5-EIC7DIhr1GqhcitzeM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Song Myung" - } - ] - }, - { - "name": "Sono", - "fontFamily": "Sono, sans-serif", - "slug": "sono", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sono/v4/aFT97PNiY3U2Cqf_aYEN64CYaK18YWJEsV6u-QLiOsxVNkWdEnR4qYeB4Q.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Sono" - }, - { - "src": "http://fonts.gstatic.com/s/sono/v4/aFT97PNiY3U2Cqf_aYEN64CYaK18YWJEsV6u-QLiOsxV6EWdEnR4qYeB4Q.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Sono" - }, - { - "src": "http://fonts.gstatic.com/s/sono/v4/aFT97PNiY3U2Cqf_aYEN64CYaK18YWJEsV6u-QLiOsxVtkWdEnR4qYeB4Q.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sono" - }, - { - "src": "http://fonts.gstatic.com/s/sono/v4/aFT97PNiY3U2Cqf_aYEN64CYaK18YWJEsV6u-QLiOsxVhEWdEnR4qYeB4Q.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Sono" - }, - { - "src": "http://fonts.gstatic.com/s/sono/v4/aFT97PNiY3U2Cqf_aYEN64CYaK18YWJEsV6u-QLiOsxVaEKdEnR4qYeB4Q.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Sono" - }, - { - "src": "http://fonts.gstatic.com/s/sono/v4/aFT97PNiY3U2Cqf_aYEN64CYaK18YWJEsV6u-QLiOsxVUUKdEnR4qYeB4Q.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Sono" - }, - { - "src": "http://fonts.gstatic.com/s/sono/v4/aFT97PNiY3U2Cqf_aYEN64CYaK18YWJEsV6u-QLiOsxVNkKdEnR4qYeB4Q.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Sono" - } - ] - }, - { - "name": "Sonsie One", - "fontFamily": "Sonsie One, system-ui", - "slug": "sonsie-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sonsieone/v21/PbymFmP_EAnPqbKaoc18YVu80lbp8JM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sonsie One" - } - ] - }, - { - "name": "Sora", - "fontFamily": "Sora, sans-serif", - "slug": "sora", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sora/v11/xMQOuFFYT72X5wkB_18qmnndmSdSn3-KIwNhBti0.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Sora" - }, - { - "src": "http://fonts.gstatic.com/s/sora/v11/xMQOuFFYT72X5wkB_18qmnndmSfSnn-KIwNhBti0.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Sora" - }, - { - "src": "http://fonts.gstatic.com/s/sora/v11/xMQOuFFYT72X5wkB_18qmnndmScMnn-KIwNhBti0.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Sora" - }, - { - "src": "http://fonts.gstatic.com/s/sora/v11/xMQOuFFYT72X5wkB_18qmnndmSdSnn-KIwNhBti0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sora" - }, - { - "src": "http://fonts.gstatic.com/s/sora/v11/xMQOuFFYT72X5wkB_18qmnndmSdgnn-KIwNhBti0.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Sora" - }, - { - "src": "http://fonts.gstatic.com/s/sora/v11/xMQOuFFYT72X5wkB_18qmnndmSeMmX-KIwNhBti0.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Sora" - }, - { - "src": "http://fonts.gstatic.com/s/sora/v11/xMQOuFFYT72X5wkB_18qmnndmSe1mX-KIwNhBti0.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Sora" - }, - { - "src": "http://fonts.gstatic.com/s/sora/v11/xMQOuFFYT72X5wkB_18qmnndmSfSmX-KIwNhBti0.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Sora" - } - ] - }, - { - "name": "Sorts Mill Goudy", - "fontFamily": "Sorts Mill Goudy, serif", - "slug": "sorts-mill-goudy", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sortsmillgoudy/v15/Qw3GZR9MED_6PSuS_50nEaVrfzgEXH0OjpM75PE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sorts Mill Goudy" - }, - { - "src": "http://fonts.gstatic.com/s/sortsmillgoudy/v15/Qw3AZR9MED_6PSuS_50nEaVrfzgEbH8EirE-9PGLfQ.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Sorts Mill Goudy" - } - ] - }, - { - "name": "Source Code Pro", - "fontFamily": "Source Code Pro, monospace", - "slug": "source-code-pro", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sourcecodepro/v22/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DEyQhM5hTXUcdJg.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Source Code Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourcecodepro/v22/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DJKQhM5hTXUcdJg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Source Code Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourcecodepro/v22/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DMyQhM5hTXUcdJg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Source Code Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourcecodepro/v22/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DP6QhM5hTXUcdJg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Source Code Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourcecodepro/v22/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DBKXhM5hTXUcdJg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Source Code Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourcecodepro/v22/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DCuXhM5hTXUcdJg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Source Code Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourcecodepro/v22/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DEyXhM5hTXUcdJg.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Source Code Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourcecodepro/v22/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DGWXhM5hTXUcdJg.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Source Code Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourcecodepro/v22/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTT7I1rSVcZZJiGpw.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Source Code Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourcecodepro/v22/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTTMo1rSVcZZJiGpw.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Source Code Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourcecodepro/v22/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTTbI1rSVcZZJiGpw.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Source Code Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourcecodepro/v22/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTTXo1rSVcZZJiGpw.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Source Code Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourcecodepro/v22/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTTsoprSVcZZJiGpw.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Source Code Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourcecodepro/v22/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTTi4prSVcZZJiGpw.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Source Code Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourcecodepro/v22/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTT7IprSVcZZJiGpw.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Source Code Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourcecodepro/v22/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTTxYprSVcZZJiGpw.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Source Code Pro" - } - ] - }, - { - "name": "Source Sans 3", - "fontFamily": "Source Sans 3, sans-serif", - "slug": "source-sans-3", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sourcesans3/v9/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8Kw461EN_io6npfB.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Source Sans 3" - }, - { - "src": "http://fonts.gstatic.com/s/sourcesans3/v9/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8Kzm61EN_io6npfB.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Source Sans 3" - }, - { - "src": "http://fonts.gstatic.com/s/sourcesans3/v9/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8Ky461EN_io6npfB.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Source Sans 3" - }, - { - "src": "http://fonts.gstatic.com/s/sourcesans3/v9/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8KyK61EN_io6npfB.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Source Sans 3" - }, - { - "src": "http://fonts.gstatic.com/s/sourcesans3/v9/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8Kxm7FEN_io6npfB.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Source Sans 3" - }, - { - "src": "http://fonts.gstatic.com/s/sourcesans3/v9/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8Kxf7FEN_io6npfB.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Source Sans 3" - }, - { - "src": "http://fonts.gstatic.com/s/sourcesans3/v9/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8Kw47FEN_io6npfB.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Source Sans 3" - }, - { - "src": "http://fonts.gstatic.com/s/sourcesans3/v9/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8KwR7FEN_io6npfB.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Source Sans 3" - }, - { - "src": "http://fonts.gstatic.com/s/sourcesans3/v9/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqDlO9C4Ym4fB3Ts.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Source Sans 3" - }, - { - "src": "http://fonts.gstatic.com/s/sourcesans3/v9/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqOdO9C4Ym4fB3Ts.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Source Sans 3" - }, - { - "src": "http://fonts.gstatic.com/s/sourcesans3/v9/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqLlO9C4Ym4fB3Ts.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Source Sans 3" - }, - { - "src": "http://fonts.gstatic.com/s/sourcesans3/v9/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqItO9C4Ym4fB3Ts.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Source Sans 3" - }, - { - "src": "http://fonts.gstatic.com/s/sourcesans3/v9/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqGdJ9C4Ym4fB3Ts.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Source Sans 3" - }, - { - "src": "http://fonts.gstatic.com/s/sourcesans3/v9/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqF5J9C4Ym4fB3Ts.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Source Sans 3" - }, - { - "src": "http://fonts.gstatic.com/s/sourcesans3/v9/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqDlJ9C4Ym4fB3Ts.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Source Sans 3" - }, - { - "src": "http://fonts.gstatic.com/s/sourcesans3/v9/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqBBJ9C4Ym4fB3Ts.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Source Sans 3" - } - ] - }, - { - "name": "Source Sans Pro", - "fontFamily": "Source Sans Pro, sans-serif", - "slug": "source-sans-pro", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sourcesanspro/v21/6xKydSBYKcSV-LCoeQqfX1RYOo3i94_AkB1v_8CGxg.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Source Sans Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourcesanspro/v21/6xKwdSBYKcSV-LCoeQqfX1RYOo3qPZYokRdr3cWWxg40.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Source Sans Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourcesanspro/v21/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zAkB1v_8CGxg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Source Sans Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourcesanspro/v21/6xKwdSBYKcSV-LCoeQqfX1RYOo3qPZZMkhdr3cWWxg40.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Source Sans Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourcesanspro/v21/6xK3dSBYKcSV-LCoeQqfX1RYOo3aP6TkmDZz9g.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Source Sans Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourcesanspro/v21/6xK1dSBYKcSV-LCoeQqfX1RYOo3qPa7gujNj9tmf.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Source Sans Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourcesanspro/v21/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rAkB1v_8CGxg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Source Sans Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourcesanspro/v21/6xKwdSBYKcSV-LCoeQqfX1RYOo3qPZY4lBdr3cWWxg40.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Source Sans Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourcesanspro/v21/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vAkB1v_8CGxg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Source Sans Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourcesanspro/v21/6xKwdSBYKcSV-LCoeQqfX1RYOo3qPZZclRdr3cWWxg40.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Source Sans Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourcesanspro/v21/6xKydSBYKcSV-LCoeQqfX1RYOo3iu4nAkB1v_8CGxg.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Source Sans Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourcesanspro/v21/6xKwdSBYKcSV-LCoeQqfX1RYOo3qPZZklxdr3cWWxg40.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Source Sans Pro" - } - ] - }, - { - "name": "Source Serif 4", - "fontFamily": "Source Serif 4, serif", - "slug": "source-serif-4", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sourceserif4/v7/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjipdqrhxXD-wGvjU.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Source Serif 4" - }, - { - "src": "http://fonts.gstatic.com/s/sourceserif4/v7/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjiklqrhxXD-wGvjU.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Source Serif 4" - }, - { - "src": "http://fonts.gstatic.com/s/sourceserif4/v7/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjihdqrhxXD-wGvjU.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Source Serif 4" - }, - { - "src": "http://fonts.gstatic.com/s/sourceserif4/v7/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjiiVqrhxXD-wGvjU.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Source Serif 4" - }, - { - "src": "http://fonts.gstatic.com/s/sourceserif4/v7/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjisltrhxXD-wGvjU.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Source Serif 4" - }, - { - "src": "http://fonts.gstatic.com/s/sourceserif4/v7/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjivBtrhxXD-wGvjU.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Source Serif 4" - }, - { - "src": "http://fonts.gstatic.com/s/sourceserif4/v7/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjipdtrhxXD-wGvjU.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Source Serif 4" - }, - { - "src": "http://fonts.gstatic.com/s/sourceserif4/v7/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjir5trhxXD-wGvjU.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Source Serif 4" - }, - { - "src": "http://fonts.gstatic.com/s/sourceserif4/v7/vEF02_tTDB4M7-auWDN0ahZJW1ge6NmXpVAHV83Bfb_US2D2QYxoUKIkn98pxl9dC84DrjXEXw.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Source Serif 4" - }, - { - "src": "http://fonts.gstatic.com/s/sourceserif4/v7/vEF02_tTDB4M7-auWDN0ahZJW1ge6NmXpVAHV83Bfb_US2D2QYxoUKIkn98pGF9dC84DrjXEXw.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Source Serif 4" - }, - { - "src": "http://fonts.gstatic.com/s/sourceserif4/v7/vEF02_tTDB4M7-auWDN0ahZJW1ge6NmXpVAHV83Bfb_US2D2QYxoUKIkn98pRl9dC84DrjXEXw.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Source Serif 4" - }, - { - "src": "http://fonts.gstatic.com/s/sourceserif4/v7/vEF02_tTDB4M7-auWDN0ahZJW1ge6NmXpVAHV83Bfb_US2D2QYxoUKIkn98pdF9dC84DrjXEXw.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Source Serif 4" - }, - { - "src": "http://fonts.gstatic.com/s/sourceserif4/v7/vEF02_tTDB4M7-auWDN0ahZJW1ge6NmXpVAHV83Bfb_US2D2QYxoUKIkn98pmFhdC84DrjXEXw.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Source Serif 4" - }, - { - "src": "http://fonts.gstatic.com/s/sourceserif4/v7/vEF02_tTDB4M7-auWDN0ahZJW1ge6NmXpVAHV83Bfb_US2D2QYxoUKIkn98poVhdC84DrjXEXw.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Source Serif 4" - }, - { - "src": "http://fonts.gstatic.com/s/sourceserif4/v7/vEF02_tTDB4M7-auWDN0ahZJW1ge6NmXpVAHV83Bfb_US2D2QYxoUKIkn98pxlhdC84DrjXEXw.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Source Serif 4" - }, - { - "src": "http://fonts.gstatic.com/s/sourceserif4/v7/vEF02_tTDB4M7-auWDN0ahZJW1ge6NmXpVAHV83Bfb_US2D2QYxoUKIkn98p71hdC84DrjXEXw.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Source Serif 4" - } - ] - }, - { - "name": "Source Serif Pro", - "fontFamily": "Source Serif Pro, serif", - "slug": "source-serif-pro", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sourceserifpro/v15/neIXzD-0qpwxpaWvjeD0X88SAOeasbsfhSugxYUvZrI.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Source Serif Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourceserifpro/v15/neIVzD-0qpwxpaWvjeD0X88SAOeauXEGbSqqwacqdrKvbQ.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Source Serif Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourceserifpro/v15/neIXzD-0qpwxpaWvjeD0X88SAOeasd8chSugxYUvZrI.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Source Serif Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourceserifpro/v15/neIVzD-0qpwxpaWvjeD0X88SAOeauXEGCSmqwacqdrKvbQ.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Source Serif Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourceserifpro/v15/neIQzD-0qpwxpaWvjeD0X88SAOeaiXM0oSOL2Yw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Source Serif Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourceserifpro/v15/neIWzD-0qpwxpaWvjeD0X88SAOeauXE-pQGOyYw2fw.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Source Serif Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourceserifpro/v15/neIXzD-0qpwxpaWvjeD0X88SAOeasasahSugxYUvZrI.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Source Serif Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourceserifpro/v15/neIVzD-0qpwxpaWvjeD0X88SAOeauXEGfS-qwacqdrKvbQ.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Source Serif Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourceserifpro/v15/neIXzD-0qpwxpaWvjeD0X88SAOeasc8bhSugxYUvZrI.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Source Serif Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourceserifpro/v15/neIVzD-0qpwxpaWvjeD0X88SAOeauXEGGS6qwacqdrKvbQ.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Source Serif Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourceserifpro/v15/neIXzD-0qpwxpaWvjeD0X88SAOeasfcZhSugxYUvZrI.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Source Serif Pro" - }, - { - "src": "http://fonts.gstatic.com/s/sourceserifpro/v15/neIVzD-0qpwxpaWvjeD0X88SAOeauXEGISyqwacqdrKvbQ.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Source Serif Pro" - } - ] - }, - { - "name": "Space Grotesk", - "fontFamily": "Space Grotesk, sans-serif", - "slug": "space-grotesk", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/spacegrotesk/v15/V8mQoQDjQSkFtoMM3T6r8E7mF71Q-gOoraIAEj62UUsjNsFjTDJK.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Space Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/spacegrotesk/v15/V8mQoQDjQSkFtoMM3T6r8E7mF71Q-gOoraIAEj7oUUsjNsFjTDJK.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Space Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/spacegrotesk/v15/V8mQoQDjQSkFtoMM3T6r8E7mF71Q-gOoraIAEj7aUUsjNsFjTDJK.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Space Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/spacegrotesk/v15/V8mQoQDjQSkFtoMM3T6r8E7mF71Q-gOoraIAEj42VksjNsFjTDJK.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Space Grotesk" - }, - { - "src": "http://fonts.gstatic.com/s/spacegrotesk/v15/V8mQoQDjQSkFtoMM3T6r8E7mF71Q-gOoraIAEj4PVksjNsFjTDJK.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Space Grotesk" - } - ] - }, - { - "name": "Space Mono", - "fontFamily": "Space Mono, monospace", - "slug": "space-mono", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/spacemono/v12/i7dPIFZifjKcF5UAWdDRUEZ2RFq7AwU.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Space Mono" - }, - { - "src": "http://fonts.gstatic.com/s/spacemono/v12/i7dNIFZifjKcF5UAWdDRYER8QHi-EwWMbg.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Space Mono" - }, - { - "src": "http://fonts.gstatic.com/s/spacemono/v12/i7dMIFZifjKcF5UAWdDRaPpZYFKQHwyVd3U.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Space Mono" - }, - { - "src": "http://fonts.gstatic.com/s/spacemono/v12/i7dSIFZifjKcF5UAWdDRYERE_FeaGy6QZ3WfYg.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Space Mono" - } - ] - }, - { - "name": "Special Elite", - "fontFamily": "Special Elite, system-ui", - "slug": "special-elite", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/specialelite/v18/XLYgIZbkc4JPUL5CVArUVL0nhncESXFtUsM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Special Elite" - } - ] - }, - { - "name": "Spectral", - "fontFamily": "Spectral, serif", - "slug": "spectral", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/spectral/v13/rnCs-xNNww_2s0amA9v2s13GY_etWWIJ.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Spectral" - }, - { - "src": "http://fonts.gstatic.com/s/spectral/v13/rnCu-xNNww_2s0amA9M8qrXHafOPXHIJErY.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Spectral" - }, - { - "src": "http://fonts.gstatic.com/s/spectral/v13/rnCs-xNNww_2s0amA9uSsF3GY_etWWIJ.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Spectral" - }, - { - "src": "http://fonts.gstatic.com/s/spectral/v13/rnCu-xNNww_2s0amA9M8qtHEafOPXHIJErY.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Spectral" - }, - { - "src": "http://fonts.gstatic.com/s/spectral/v13/rnCr-xNNww_2s0amA-M-mHnOSOuk.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Spectral" - }, - { - "src": "http://fonts.gstatic.com/s/spectral/v13/rnCt-xNNww_2s0amA9M8kn3sTfukQHs.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Spectral" - }, - { - "src": "http://fonts.gstatic.com/s/spectral/v13/rnCs-xNNww_2s0amA9vKsV3GY_etWWIJ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Spectral" - }, - { - "src": "http://fonts.gstatic.com/s/spectral/v13/rnCu-xNNww_2s0amA9M8qonFafOPXHIJErY.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Spectral" - }, - { - "src": "http://fonts.gstatic.com/s/spectral/v13/rnCs-xNNww_2s0amA9vmtl3GY_etWWIJ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Spectral" - }, - { - "src": "http://fonts.gstatic.com/s/spectral/v13/rnCu-xNNww_2s0amA9M8qqXCafOPXHIJErY.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Spectral" - }, - { - "src": "http://fonts.gstatic.com/s/spectral/v13/rnCs-xNNww_2s0amA9uCt13GY_etWWIJ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Spectral" - }, - { - "src": "http://fonts.gstatic.com/s/spectral/v13/rnCu-xNNww_2s0amA9M8qsHDafOPXHIJErY.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Spectral" - }, - { - "src": "http://fonts.gstatic.com/s/spectral/v13/rnCs-xNNww_2s0amA9uetF3GY_etWWIJ.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Spectral" - }, - { - "src": "http://fonts.gstatic.com/s/spectral/v13/rnCu-xNNww_2s0amA9M8qt3AafOPXHIJErY.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Spectral" - } - ] - }, - { - "name": "Spectral SC", - "fontFamily": "Spectral SC, serif", - "slug": "spectral-sc", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/spectralsc/v12/Ktk0ALCRZonmalTgyPmRfs1qwkTXPYeVXJZB.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Spectral SC" - }, - { - "src": "http://fonts.gstatic.com/s/spectralsc/v12/Ktk2ALCRZonmalTgyPmRfsWg26zWN4O3WYZB_sU.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Spectral SC" - }, - { - "src": "http://fonts.gstatic.com/s/spectralsc/v12/Ktk0ALCRZonmalTgyPmRfs0OwUTXPYeVXJZB.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Spectral SC" - }, - { - "src": "http://fonts.gstatic.com/s/spectralsc/v12/Ktk2ALCRZonmalTgyPmRfsWg28jVN4O3WYZB_sU.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Spectral SC" - }, - { - "src": "http://fonts.gstatic.com/s/spectralsc/v12/KtkpALCRZonmalTgyPmRfvWi6WDfFpuc.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Spectral SC" - }, - { - "src": "http://fonts.gstatic.com/s/spectralsc/v12/KtkrALCRZonmalTgyPmRfsWg42T9E4ucRY8.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Spectral SC" - }, - { - "src": "http://fonts.gstatic.com/s/spectralsc/v12/Ktk0ALCRZonmalTgyPmRfs1WwETXPYeVXJZB.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Spectral SC" - }, - { - "src": "http://fonts.gstatic.com/s/spectralsc/v12/Ktk2ALCRZonmalTgyPmRfsWg25DUN4O3WYZB_sU.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Spectral SC" - }, - { - "src": "http://fonts.gstatic.com/s/spectralsc/v12/Ktk0ALCRZonmalTgyPmRfs16x0TXPYeVXJZB.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Spectral SC" - }, - { - "src": "http://fonts.gstatic.com/s/spectralsc/v12/Ktk2ALCRZonmalTgyPmRfsWg27zTN4O3WYZB_sU.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Spectral SC" - }, - { - "src": "http://fonts.gstatic.com/s/spectralsc/v12/Ktk0ALCRZonmalTgyPmRfs0exkTXPYeVXJZB.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Spectral SC" - }, - { - "src": "http://fonts.gstatic.com/s/spectralsc/v12/Ktk2ALCRZonmalTgyPmRfsWg29jSN4O3WYZB_sU.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Spectral SC" - }, - { - "src": "http://fonts.gstatic.com/s/spectralsc/v12/Ktk0ALCRZonmalTgyPmRfs0CxUTXPYeVXJZB.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Spectral SC" - }, - { - "src": "http://fonts.gstatic.com/s/spectralsc/v12/Ktk2ALCRZonmalTgyPmRfsWg28TRN4O3WYZB_sU.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Spectral SC" - } - ] - }, - { - "name": "Spicy Rice", - "fontFamily": "Spicy Rice, system-ui", - "slug": "spicy-rice", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/spicyrice/v21/uK_24rSEd-Uqwk4jY1RyGv-2WkowRcc.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Spicy Rice" - } - ] - }, - { - "name": "Spinnaker", - "fontFamily": "Spinnaker, sans-serif", - "slug": "spinnaker", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/spinnaker/v17/w8gYH2oyX-I0_rvR6Hmn3HwLqOqSBg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Spinnaker" - } - ] - }, - { - "name": "Spirax", - "fontFamily": "Spirax, system-ui", - "slug": "spirax", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/spirax/v21/buE3poKgYNLy0F3cXktt-Csn-Q.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Spirax" - } - ] - }, - { - "name": "Splash", - "fontFamily": "Splash, cursive", - "slug": "splash", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/splash/v2/KtksAL2RZoDkbU6hpPPGNdS6wg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Splash" - } - ] - }, - { - "name": "Spline Sans", - "fontFamily": "Spline Sans, sans-serif", - "slug": "spline-sans", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/splinesans/v9/_6_sED73Uf-2WfU2LzycEZousNzn1a1lKWRpZlnYEtvlUfE2kw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Spline Sans" - }, - { - "src": "http://fonts.gstatic.com/s/splinesans/v9/_6_sED73Uf-2WfU2LzycEZousNzn1a1lKWRpOFnYEtvlUfE2kw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Spline Sans" - }, - { - "src": "http://fonts.gstatic.com/s/splinesans/v9/_6_sED73Uf-2WfU2LzycEZousNzn1a1lKWRpClnYEtvlUfE2kw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Spline Sans" - }, - { - "src": "http://fonts.gstatic.com/s/splinesans/v9/_6_sED73Uf-2WfU2LzycEZousNzn1a1lKWRp5l7YEtvlUfE2kw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Spline Sans" - }, - { - "src": "http://fonts.gstatic.com/s/splinesans/v9/_6_sED73Uf-2WfU2LzycEZousNzn1a1lKWRp317YEtvlUfE2kw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Spline Sans" - } - ] - }, - { - "name": "Spline Sans Mono", - "fontFamily": "Spline Sans Mono, monospace", - "slug": "spline-sans-mono", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/splinesansmono/v8/R70MjzAei_CDNLfgZxrW6wrZOF2WdZ6xabUGSVtNuGA8MrtVy4d4dGb1.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Spline Sans Mono" - }, - { - "src": "http://fonts.gstatic.com/s/splinesansmono/v8/R70MjzAei_CDNLfgZxrW6wrZOF2WdZ6xabUGSVtNuGBiMrtVy4d4dGb1.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Spline Sans Mono" - }, - { - "src": "http://fonts.gstatic.com/s/splinesansmono/v8/R70MjzAei_CDNLfgZxrW6wrZOF2WdZ6xabUGSVtNuGBQMrtVy4d4dGb1.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Spline Sans Mono" - }, - { - "src": "http://fonts.gstatic.com/s/splinesansmono/v8/R70MjzAei_CDNLfgZxrW6wrZOF2WdZ6xabUGSVtNuGC8NbtVy4d4dGb1.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Spline Sans Mono" - }, - { - "src": "http://fonts.gstatic.com/s/splinesansmono/v8/R70MjzAei_CDNLfgZxrW6wrZOF2WdZ6xabUGSVtNuGCFNbtVy4d4dGb1.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Spline Sans Mono" - }, - { - "src": "http://fonts.gstatic.com/s/splinesansmono/v8/R70yjzAei_CDNLfgZxrW6wrZOF2WX5eDlm1vIsHjv3WqcQ0WwYNacXb12MM.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Spline Sans Mono" - }, - { - "src": "http://fonts.gstatic.com/s/splinesansmono/v8/R70yjzAei_CDNLfgZxrW6wrZOF2WX5eDlm1vIsHjv3WqcVMWwYNacXb12MM.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Spline Sans Mono" - }, - { - "src": "http://fonts.gstatic.com/s/splinesansmono/v8/R70yjzAei_CDNLfgZxrW6wrZOF2WX5eDlm1vIsHjv3WqcWEWwYNacXb12MM.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Spline Sans Mono" - }, - { - "src": "http://fonts.gstatic.com/s/splinesansmono/v8/R70yjzAei_CDNLfgZxrW6wrZOF2WX5eDlm1vIsHjv3WqcY0RwYNacXb12MM.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Spline Sans Mono" - }, - { - "src": "http://fonts.gstatic.com/s/splinesansmono/v8/R70yjzAei_CDNLfgZxrW6wrZOF2WX5eDlm1vIsHjv3WqcbQRwYNacXb12MM.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Spline Sans Mono" - } - ] - }, - { - "name": "Squada One", - "fontFamily": "Squada One, system-ui", - "slug": "squada-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/squadaone/v14/BCasqZ8XsOrx4mcOk6MtWaA8WDBkHgs.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Squada One" - } - ] - }, - { - "name": "Square Peg", - "fontFamily": "Square Peg, cursive", - "slug": "square-peg", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/squarepeg/v2/y83eW48Nzw6ZlUHc-phrBDHrHHfrFPE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Square Peg" - } - ] - }, - { - "name": "Sree Krushnadevaraya", - "fontFamily": "Sree Krushnadevaraya, serif", - "slug": "sree-krushnadevaraya", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sreekrushnadevaraya/v21/R70FjzQeifmPepmyQQjQ9kvwMkWYPfTA_EWb2FhQuXir.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sree Krushnadevaraya" - } - ] - }, - { - "name": "Sriracha", - "fontFamily": "Sriracha, cursive", - "slug": "sriracha", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sriracha/v11/0nkrC9D4IuYBgWcI9ObYRQDioeb0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sriracha" - } - ] - }, - { - "name": "Srisakdi", - "fontFamily": "Srisakdi, system-ui", - "slug": "srisakdi", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/srisakdi/v16/yMJRMIlvdpDbkB0A-jq8fSx5i814.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Srisakdi" - }, - { - "src": "http://fonts.gstatic.com/s/srisakdi/v16/yMJWMIlvdpDbkB0A-gIAUghxoNFxW0Hz.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Srisakdi" - } - ] - }, - { - "name": "Staatliches", - "fontFamily": "Staatliches, system-ui", - "slug": "staatliches", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/staatliches/v11/HI_OiY8KO6hCsQSoAPmtMbectJG9O9PS.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Staatliches" - } - ] - }, - { - "name": "Stalemate", - "fontFamily": "Stalemate, cursive", - "slug": "stalemate", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/stalemate/v20/taiIGmZ_EJq97-UfkZRpuqSs8ZQpaQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Stalemate" - } - ] - }, - { - "name": "Stalinist One", - "fontFamily": "Stalinist One, system-ui", - "slug": "stalinist-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/stalinistone/v54/MQpS-WezM9W4Dd7D3B7I-UT7eZ-UPyacPbo.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Stalinist One" - } - ] - }, - { - "name": "Stardos Stencil", - "fontFamily": "Stardos Stencil, system-ui", - "slug": "stardos-stencil", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/stardosstencil/v15/X7n94bcuGPC8hrvEOHXOgaKCc2TR71R3tiSx0g.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Stardos Stencil" - }, - { - "src": "http://fonts.gstatic.com/s/stardosstencil/v15/X7n44bcuGPC8hrvEOHXOgaKCc2TpU3tTvg-t29HSHw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Stardos Stencil" - } - ] - }, - { - "name": "Stick", - "fontFamily": "Stick, sans-serif", - "slug": "stick", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/stick/v15/Qw3TZQpMCyTtJSvfvPVDMPoF.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Stick" - } - ] - }, - { - "name": "Stick No Bills", - "fontFamily": "Stick No Bills, sans-serif", - "slug": "stick-no-bills", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sticknobills/v9/bWts7ffXZwHuAa9Uld-oEK4QKlxj9f9t_7uEmjcVP8Q7KriwKhcTKA.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Stick No Bills" - }, - { - "src": "http://fonts.gstatic.com/s/sticknobills/v9/bWts7ffXZwHuAa9Uld-oEK4QKlxj9f9t_7uEmjcV4cQ7KriwKhcTKA.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Stick No Bills" - }, - { - "src": "http://fonts.gstatic.com/s/sticknobills/v9/bWts7ffXZwHuAa9Uld-oEK4QKlxj9f9t_7uEmjcVv8Q7KriwKhcTKA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Stick No Bills" - }, - { - "src": "http://fonts.gstatic.com/s/sticknobills/v9/bWts7ffXZwHuAa9Uld-oEK4QKlxj9f9t_7uEmjcVjcQ7KriwKhcTKA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Stick No Bills" - }, - { - "src": "http://fonts.gstatic.com/s/sticknobills/v9/bWts7ffXZwHuAa9Uld-oEK4QKlxj9f9t_7uEmjcVYcM7KriwKhcTKA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Stick No Bills" - }, - { - "src": "http://fonts.gstatic.com/s/sticknobills/v9/bWts7ffXZwHuAa9Uld-oEK4QKlxj9f9t_7uEmjcVWMM7KriwKhcTKA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Stick No Bills" - }, - { - "src": "http://fonts.gstatic.com/s/sticknobills/v9/bWts7ffXZwHuAa9Uld-oEK4QKlxj9f9t_7uEmjcVP8M7KriwKhcTKA.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Stick No Bills" - } - ] - }, - { - "name": "Stint Ultra Condensed", - "fontFamily": "Stint Ultra Condensed, system-ui", - "slug": "stint-ultra-condensed", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/stintultracondensed/v21/-W_gXIrsVjjeyEnPC45qD2NoFPtBE0xCh2A-qhUO2cNvdg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Stint Ultra Condensed" - } - ] - }, - { - "name": "Stint Ultra Expanded", - "fontFamily": "Stint Ultra Expanded, system-ui", - "slug": "stint-ultra-expanded", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/stintultraexpanded/v20/CSRg4yNNh-GbW3o3JkwoDcdvMKMf0oBAd0qoATQkWwam.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Stint Ultra Expanded" - } - ] - }, - { - "name": "Stoke", - "fontFamily": "Stoke, serif", - "slug": "stoke", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/stoke/v22/z7NXdRb7aTMfKNvFVgxC_pjcTeWU.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Stoke" - }, - { - "src": "http://fonts.gstatic.com/s/stoke/v22/z7NadRb7aTMfKONpfihK1YTV.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Stoke" - } - ] - }, - { - "name": "Strait", - "fontFamily": "Strait, sans-serif", - "slug": "strait", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/strait/v15/DtViJxy6WaEr1LZzeDhtkl0U7w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Strait" - } - ] - }, - { - "name": "Style Script", - "fontFamily": "Style Script, cursive", - "slug": "style-script", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/stylescript/v8/vm8xdRX3SV7Z0aPa88xzW5npeFT76NZnMw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Style Script" - } - ] - }, - { - "name": "Stylish", - "fontFamily": "Stylish, sans-serif", - "slug": "stylish", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/stylish/v20/m8JSjfhPYriQkk7-fo35dLxEdmo.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Stylish" - } - ] - }, - { - "name": "Sue Ellen Francisco", - "fontFamily": "Sue Ellen Francisco, cursive", - "slug": "sue-ellen-francisco", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sueellenfrancisco/v16/wXK3E20CsoJ9j1DDkjHcQ5ZL8xRaxru9ropF2lqk9H4.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sue Ellen Francisco" - } - ] - }, - { - "name": "Suez One", - "fontFamily": "Suez One, serif", - "slug": "suez-one", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/suezone/v11/taiJGmd_EZ6rqscQgNFJkIqg-I0w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Suez One" - } - ] - }, - { - "name": "Sulphur Point", - "fontFamily": "Sulphur Point, sans-serif", - "slug": "sulphur-point", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sulphurpoint/v15/RLpkK5vv8KaycDcazWFPBj2afVU6n6kFUHPIFaU.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Sulphur Point" - }, - { - "src": "http://fonts.gstatic.com/s/sulphurpoint/v15/RLp5K5vv8KaycDcazWFPBj2aRfkSu6EuTHo.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sulphur Point" - }, - { - "src": "http://fonts.gstatic.com/s/sulphurpoint/v15/RLpkK5vv8KaycDcazWFPBj2afUU9n6kFUHPIFaU.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Sulphur Point" - } - ] - }, - { - "name": "Sumana", - "fontFamily": "Sumana, serif", - "slug": "sumana", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sumana/v10/4UaDrE5TqRBjGj-G8Bji76zR4w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sumana" - }, - { - "src": "http://fonts.gstatic.com/s/sumana/v10/4UaArE5TqRBjGj--TDfG54fN6ppsKg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Sumana" - } - ] - }, - { - "name": "Sunflower", - "fontFamily": "Sunflower, sans-serif", - "slug": "sunflower", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sunflower/v14/RWmPoKeF8fUjqIj7Vc-06MfiqYsGBGBzCw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Sunflower" - }, - { - "src": "http://fonts.gstatic.com/s/sunflower/v14/RWmPoKeF8fUjqIj7Vc-0sMbiqYsGBGBzCw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Sunflower" - }, - { - "src": "http://fonts.gstatic.com/s/sunflower/v14/RWmPoKeF8fUjqIj7Vc-0-MDiqYsGBGBzCw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Sunflower" - } - ] - }, - { - "name": "Sunshiney", - "fontFamily": "Sunshiney, cursive", - "slug": "sunshiney", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sunshiney/v24/LDIwapGTLBwsS-wT4vcgE8moUePWkg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sunshiney" - } - ] - }, - { - "name": "Supermercado One", - "fontFamily": "Supermercado One, system-ui", - "slug": "supermercado-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/supermercadoone/v22/OpNXnpQWg8jc_xps_Gi14kVVEXOn60b3MClBRTs.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Supermercado One" - } - ] - }, - { - "name": "Sura", - "fontFamily": "Sura, serif", - "slug": "sura", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/sura/v16/SZc23FL5PbyzFf5UWzXtjUM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Sura" - }, - { - "src": "http://fonts.gstatic.com/s/sura/v16/SZc53FL5PbyzLUJ7fz3GkUrS8DI.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Sura" - } - ] - }, - { - "name": "Suranna", - "fontFamily": "Suranna, serif", - "slug": "suranna", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/suranna/v13/gokuH6ztGkFjWe58tBRZT2KmgP0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Suranna" - } - ] - }, - { - "name": "Suravaram", - "fontFamily": "Suravaram, serif", - "slug": "suravaram", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/suravaram/v21/_gP61R_usiY7SCym4xIAi261Qv9roQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Suravaram" - } - ] - }, - { - "name": "Suwannaphum", - "fontFamily": "Suwannaphum, serif", - "slug": "suwannaphum", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/suwannaphum/v29/jAnAgHV7GtDvc8jbe8hXXL3B9cSWXx2VZmk.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Suwannaphum" - }, - { - "src": "http://fonts.gstatic.com/s/suwannaphum/v29/jAnfgHV7GtDvc8jbe8hXXL0J1-S8cRGcf3Ai.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Suwannaphum" - }, - { - "src": "http://fonts.gstatic.com/s/suwannaphum/v29/jAnCgHV7GtDvc8jbe8hXXIWl_8C0Wg2V.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Suwannaphum" - }, - { - "src": "http://fonts.gstatic.com/s/suwannaphum/v29/jAnfgHV7GtDvc8jbe8hXXL0Z0OS8cRGcf3Ai.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Suwannaphum" - }, - { - "src": "http://fonts.gstatic.com/s/suwannaphum/v29/jAnfgHV7GtDvc8jbe8hXXL0h0uS8cRGcf3Ai.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Suwannaphum" - } - ] - }, - { - "name": "Swanky and Moo Moo", - "fontFamily": "Swanky and Moo Moo, cursive", - "slug": "swanky-and-moo-moo", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/swankyandmoomoo/v22/flUlRrKz24IuWVI_WJYTYcqbEsMUZ3kUtbPkR64SYQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Swanky and Moo Moo" - } - ] - }, - { - "name": "Syncopate", - "fontFamily": "Syncopate, sans-serif", - "slug": "syncopate", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/syncopate/v19/pe0sMIuPIYBCpEV5eFdyAv2-C99ycg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Syncopate" - }, - { - "src": "http://fonts.gstatic.com/s/syncopate/v19/pe0pMIuPIYBCpEV5eFdKvtKaA_Rue1UwVg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Syncopate" - } - ] - }, - { - "name": "Syne", - "fontFamily": "Syne, sans-serif", - "slug": "syne", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/syne/v16/8vIS7w4qzmVxsWxjBZRjr0FKM_04uT6kR47NCV5Z.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Syne" - }, - { - "src": "http://fonts.gstatic.com/s/syne/v16/8vIS7w4qzmVxsWxjBZRjr0FKM_0KuT6kR47NCV5Z.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Syne" - }, - { - "src": "http://fonts.gstatic.com/s/syne/v16/8vIS7w4qzmVxsWxjBZRjr0FKM_3mvj6kR47NCV5Z.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Syne" - }, - { - "src": "http://fonts.gstatic.com/s/syne/v16/8vIS7w4qzmVxsWxjBZRjr0FKM_3fvj6kR47NCV5Z.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Syne" - }, - { - "src": "http://fonts.gstatic.com/s/syne/v16/8vIS7w4qzmVxsWxjBZRjr0FKM_24vj6kR47NCV5Z.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Syne" - } - ] - }, - { - "name": "Syne Mono", - "fontFamily": "Syne Mono, monospace", - "slug": "syne-mono", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/synemono/v15/K2FzfZNHj_FHBmRbFvHzIqCkDyvqZA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Syne Mono" - } - ] - }, - { - "name": "Syne Tactile", - "fontFamily": "Syne Tactile, system-ui", - "slug": "syne-tactile", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/synetactile/v15/11hGGpna2UTQKjMCVzjAPMKh3ysdjvKU8Q.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Syne Tactile" - } - ] - }, - { - "name": "Tai Heritage Pro", - "fontFamily": "Tai Heritage Pro, serif", - "slug": "tai-heritage-pro", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/taiheritagepro/v6/sZlfdQid-zgaNiNIYcUzJMU3IYyNoHxSENxuLuE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Tai Heritage Pro" - }, - { - "src": "http://fonts.gstatic.com/s/taiheritagepro/v6/sZlYdQid-zgaNiNIYcUzJMU3IYyNmMB9NNRFMuhjCXY.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Tai Heritage Pro" - } - ] - }, - { - "name": "Tajawal", - "fontFamily": "Tajawal, sans-serif", - "slug": "tajawal", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/tajawal/v9/Iurf6YBj_oCad4k1l_6gLrZjiLlJ-G0.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Tajawal" - }, - { - "src": "http://fonts.gstatic.com/s/tajawal/v9/Iurf6YBj_oCad4k1l5qjLrZjiLlJ-G0.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Tajawal" - }, - { - "src": "http://fonts.gstatic.com/s/tajawal/v9/Iura6YBj_oCad4k1rzaLCr5IlLA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Tajawal" - }, - { - "src": "http://fonts.gstatic.com/s/tajawal/v9/Iurf6YBj_oCad4k1l8KiLrZjiLlJ-G0.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Tajawal" - }, - { - "src": "http://fonts.gstatic.com/s/tajawal/v9/Iurf6YBj_oCad4k1l4qkLrZjiLlJ-G0.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Tajawal" - }, - { - "src": "http://fonts.gstatic.com/s/tajawal/v9/Iurf6YBj_oCad4k1l5anLrZjiLlJ-G0.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Tajawal" - }, - { - "src": "http://fonts.gstatic.com/s/tajawal/v9/Iurf6YBj_oCad4k1l7KmLrZjiLlJ-G0.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Tajawal" - } - ] - }, - { - "name": "Tangerine", - "fontFamily": "Tangerine, cursive", - "slug": "tangerine", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/tangerine/v17/IurY6Y5j_oScZZow4VOBDpxNhLBQ4Q.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Tangerine" - }, - { - "src": "http://fonts.gstatic.com/s/tangerine/v17/Iurd6Y5j_oScZZow4VO5srNpjJtM6G0t9w.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Tangerine" - } - ] - }, - { - "name": "Tapestry", - "fontFamily": "Tapestry, cursive", - "slug": "tapestry", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/tapestry/v2/SlGTmQecrosEYXhaGBIkqnB6aSQU.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Tapestry" - } - ] - }, - { - "name": "Taprom", - "fontFamily": "Taprom, system-ui", - "slug": "taprom", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/taprom/v27/UcCn3F82JHycULbFQyk3-0kvHg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Taprom" - } - ] - }, - { - "name": "Tauri", - "fontFamily": "Tauri, sans-serif", - "slug": "tauri", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/tauri/v16/TwMA-IISS0AM3IpVWHU_TBqO.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Tauri" - } - ] - }, - { - "name": "Taviraj", - "fontFamily": "Taviraj, serif", - "slug": "taviraj", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/taviraj/v11/ahcbv8Cj3ylylTXzRIorV8N1jU2gog.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Taviraj" - }, - { - "src": "http://fonts.gstatic.com/s/taviraj/v11/ahcdv8Cj3ylylTXzTOwTM8lxr0iwolLl.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Taviraj" - }, - { - "src": "http://fonts.gstatic.com/s/taviraj/v11/ahccv8Cj3ylylTXzRCYKd-lbgUS5u0s.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Taviraj" - }, - { - "src": "http://fonts.gstatic.com/s/taviraj/v11/ahcev8Cj3ylylTXzTOwTn-hRhWa8q0v8ag.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Taviraj" - }, - { - "src": "http://fonts.gstatic.com/s/taviraj/v11/ahccv8Cj3ylylTXzREIJd-lbgUS5u0s.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Taviraj" - }, - { - "src": "http://fonts.gstatic.com/s/taviraj/v11/ahcev8Cj3ylylTXzTOwT--tRhWa8q0v8ag.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Taviraj" - }, - { - "src": "http://fonts.gstatic.com/s/taviraj/v11/ahcZv8Cj3ylylTXzfO4hU-FwnU0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Taviraj" - }, - { - "src": "http://fonts.gstatic.com/s/taviraj/v11/ahcbv8Cj3ylylTXzTOwrV8N1jU2gog.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Taviraj" - }, - { - "src": "http://fonts.gstatic.com/s/taviraj/v11/ahccv8Cj3ylylTXzRBoId-lbgUS5u0s.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Taviraj" - }, - { - "src": "http://fonts.gstatic.com/s/taviraj/v11/ahcev8Cj3ylylTXzTOwTo-pRhWa8q0v8ag.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Taviraj" - }, - { - "src": "http://fonts.gstatic.com/s/taviraj/v11/ahccv8Cj3ylylTXzRDYPd-lbgUS5u0s.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Taviraj" - }, - { - "src": "http://fonts.gstatic.com/s/taviraj/v11/ahcev8Cj3ylylTXzTOwTj-1RhWa8q0v8ag.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Taviraj" - }, - { - "src": "http://fonts.gstatic.com/s/taviraj/v11/ahccv8Cj3ylylTXzRFIOd-lbgUS5u0s.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Taviraj" - }, - { - "src": "http://fonts.gstatic.com/s/taviraj/v11/ahcev8Cj3ylylTXzTOwT6-xRhWa8q0v8ag.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Taviraj" - }, - { - "src": "http://fonts.gstatic.com/s/taviraj/v11/ahccv8Cj3ylylTXzRE4Nd-lbgUS5u0s.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Taviraj" - }, - { - "src": "http://fonts.gstatic.com/s/taviraj/v11/ahcev8Cj3ylylTXzTOwT9-9RhWa8q0v8ag.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Taviraj" - }, - { - "src": "http://fonts.gstatic.com/s/taviraj/v11/ahccv8Cj3ylylTXzRGoMd-lbgUS5u0s.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Taviraj" - }, - { - "src": "http://fonts.gstatic.com/s/taviraj/v11/ahcev8Cj3ylylTXzTOwT0-5RhWa8q0v8ag.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Taviraj" - } - ] - }, - { - "name": "Teko", - "fontFamily": "Teko, sans-serif", - "slug": "teko", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/teko/v16/LYjCdG7kmE0gdQhfgCNqqVIuTN4.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Teko" - }, - { - "src": "http://fonts.gstatic.com/s/teko/v16/LYjNdG7kmE0gTaR3pCtBtVs.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Teko" - }, - { - "src": "http://fonts.gstatic.com/s/teko/v16/LYjCdG7kmE0gdVBegCNqqVIuTN4.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Teko" - }, - { - "src": "http://fonts.gstatic.com/s/teko/v16/LYjCdG7kmE0gdXxZgCNqqVIuTN4.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Teko" - }, - { - "src": "http://fonts.gstatic.com/s/teko/v16/LYjCdG7kmE0gdRhYgCNqqVIuTN4.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Teko" - } - ] - }, - { - "name": "Telex", - "fontFamily": "Telex, sans-serif", - "slug": "telex", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/telex/v17/ieVw2Y1fKWmIO9fTB1piKFIf.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Telex" - } - ] - }, - { - "name": "Tenali Ramakrishna", - "fontFamily": "Tenali Ramakrishna, sans-serif", - "slug": "tenali-ramakrishna", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/tenaliramakrishna/v12/raxgHj6Yt9gAN3LLKs0BZVMo8jmwn1-8KJXqUFFvtA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Tenali Ramakrishna" - } - ] - }, - { - "name": "Tenor Sans", - "fontFamily": "Tenor Sans, sans-serif", - "slug": "tenor-sans", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/tenorsans/v17/bx6ANxqUneKx06UkIXISr3JyC22IyqI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Tenor Sans" - } - ] - }, - { - "name": "Text Me One", - "fontFamily": "Text Me One, sans-serif", - "slug": "text-me-one", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/textmeone/v21/i7dOIFdlayuLUvgoFvHQFWZcalayGhyV.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Text Me One" - } - ] - }, - { - "name": "Texturina", - "fontFamily": "Texturina, serif", - "slug": "texturina", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/texturina/v22/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2eYG_Ug25riW1OD.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Texturina" - }, - { - "src": "http://fonts.gstatic.com/s/texturina/v22/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2cYGvUg25riW1OD.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Texturina" - }, - { - "src": "http://fonts.gstatic.com/s/texturina/v22/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2fGGvUg25riW1OD.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Texturina" - }, - { - "src": "http://fonts.gstatic.com/s/texturina/v22/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2eYGvUg25riW1OD.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Texturina" - }, - { - "src": "http://fonts.gstatic.com/s/texturina/v22/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2eqGvUg25riW1OD.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Texturina" - }, - { - "src": "http://fonts.gstatic.com/s/texturina/v22/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2dGHfUg25riW1OD.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Texturina" - }, - { - "src": "http://fonts.gstatic.com/s/texturina/v22/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2d_HfUg25riW1OD.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Texturina" - }, - { - "src": "http://fonts.gstatic.com/s/texturina/v22/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2cYHfUg25riW1OD.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Texturina" - }, - { - "src": "http://fonts.gstatic.com/s/texturina/v22/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2cxHfUg25riW1OD.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Texturina" - }, - { - "src": "http://fonts.gstatic.com/s/texturina/v22/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWR1i0Z7AXkODN94.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Texturina" - }, - { - "src": "http://fonts.gstatic.com/s/texturina/v22/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWZ1j0Z7AXkODN94.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Texturina" - }, - { - "src": "http://fonts.gstatic.com/s/texturina/v22/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWUNj0Z7AXkODN94.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Texturina" - }, - { - "src": "http://fonts.gstatic.com/s/texturina/v22/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWR1j0Z7AXkODN94.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Texturina" - }, - { - "src": "http://fonts.gstatic.com/s/texturina/v22/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWS9j0Z7AXkODN94.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Texturina" - }, - { - "src": "http://fonts.gstatic.com/s/texturina/v22/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWcNk0Z7AXkODN94.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Texturina" - }, - { - "src": "http://fonts.gstatic.com/s/texturina/v22/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWfpk0Z7AXkODN94.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Texturina" - }, - { - "src": "http://fonts.gstatic.com/s/texturina/v22/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWZ1k0Z7AXkODN94.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Texturina" - }, - { - "src": "http://fonts.gstatic.com/s/texturina/v22/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWbRk0Z7AXkODN94.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Texturina" - } - ] - }, - { - "name": "Thasadith", - "fontFamily": "Thasadith, sans-serif", - "slug": "thasadith", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/thasadith/v9/mtG44_1TIqPYrd_f5R1YsEkU0CWuFw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Thasadith" - }, - { - "src": "http://fonts.gstatic.com/s/thasadith/v9/mtG-4_1TIqPYrd_f5R1oskMQ8iC-F1ZE.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Thasadith" - }, - { - "src": "http://fonts.gstatic.com/s/thasadith/v9/mtG94_1TIqPYrd_f5R1gDGYw2A6yHk9d8w.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Thasadith" - }, - { - "src": "http://fonts.gstatic.com/s/thasadith/v9/mtGj4_1TIqPYrd_f5R1osnus3QS2PEpN8zxA.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Thasadith" - } - ] - }, - { - "name": "The Girl Next Door", - "fontFamily": "The Girl Next Door, cursive", - "slug": "the-girl-next-door", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/thegirlnextdoor/v18/pe0zMJCIMIsBjFxqYBIcZ6_OI5oFHCYIV7t7w6bE2A.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "The Girl Next Door" - } - ] - }, - { - "name": "The Nautigal", - "fontFamily": "The Nautigal, cursive", - "slug": "the-nautigal", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/thenautigal/v3/VdGZAZ8ZH51Lvng9fQV2bfKr5wVk09Se5Q.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "The Nautigal" - }, - { - "src": "http://fonts.gstatic.com/s/thenautigal/v3/VdGGAZ8ZH51Lvng9fQV2bfKTWypA2_-C7LoS7g.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "The Nautigal" - } - ] - }, - { - "name": "Tienne", - "fontFamily": "Tienne, serif", - "slug": "tienne", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/tienne/v20/AYCKpX7pe9YCRP0LkEPHSFNyxw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Tienne" - }, - { - "src": "http://fonts.gstatic.com/s/tienne/v20/AYCJpX7pe9YCRP0zLGzjQHhuzvef5Q.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Tienne" - }, - { - "src": "http://fonts.gstatic.com/s/tienne/v20/AYCJpX7pe9YCRP0zFG7jQHhuzvef5Q.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Tienne" - } - ] - }, - { - "name": "Tillana", - "fontFamily": "Tillana, cursive", - "slug": "tillana", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/tillana/v11/VuJxdNvf35P4qJ1OeKbXOIFneRo.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Tillana" - }, - { - "src": "http://fonts.gstatic.com/s/tillana/v11/VuJ0dNvf35P4qJ1OQFL-HIlMZRNcp0o.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Tillana" - }, - { - "src": "http://fonts.gstatic.com/s/tillana/v11/VuJ0dNvf35P4qJ1OQH75HIlMZRNcp0o.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Tillana" - }, - { - "src": "http://fonts.gstatic.com/s/tillana/v11/VuJ0dNvf35P4qJ1OQBr4HIlMZRNcp0o.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Tillana" - }, - { - "src": "http://fonts.gstatic.com/s/tillana/v11/VuJ0dNvf35P4qJ1OQAb7HIlMZRNcp0o.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Tillana" - } - ] - }, - { - "name": "Tilt Neon", - "fontFamily": "Tilt Neon, system-ui", - "slug": "tilt-neon", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/tiltneon/v8/E21L_d7gguXdwD9LEFY2WCeElCNtd-eBqpHp1TzrkJSmwpj5ndxquXK9WualJ9DS.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Tilt Neon" - } - ] - }, - { - "name": "Tilt Prism", - "fontFamily": "Tilt Prism, system-ui", - "slug": "tilt-prism", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/tiltprism/v9/5h11iZgyPHoZ3YikNzWGfWey2dCAZXT-bH9V4VGn-FJ7tLI25oc_rIbwoTSrn86NKw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Tilt Prism" - } - ] - }, - { - "name": "Tilt Warp", - "fontFamily": "Tilt Warp, system-ui", - "slug": "tilt-warp", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/tiltwarp/v10/AlZc_zVDs5XpmO7yn3w7flUoytXJp3z29uEwmEMLEJljLXvT8UJSZTBxAVfMGOPb.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Tilt Warp" - } - ] - }, - { - "name": "Timmana", - "fontFamily": "Timmana, sans-serif", - "slug": "timmana", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/timmana/v12/6xKvdShfL9yK-rvpCmvbKHwJUOM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Timmana" - } - ] - }, - { - "name": "Tinos", - "fontFamily": "Tinos, serif", - "slug": "tinos", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/tinos/v24/buE4poGnedXvwgX8dGVh8TI-.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Tinos" - }, - { - "src": "http://fonts.gstatic.com/s/tinos/v24/buE2poGnedXvwjX-fmFD9CI-4NU.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Tinos" - }, - { - "src": "http://fonts.gstatic.com/s/tinos/v24/buE1poGnedXvwj1AW0Fp2i43-cxL.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Tinos" - }, - { - "src": "http://fonts.gstatic.com/s/tinos/v24/buEzpoGnedXvwjX-Rt1s0CoV_NxLeiw.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Tinos" - } - ] - }, - { - "name": "Tiro Bangla", - "fontFamily": "Tiro Bangla, serif", - "slug": "tiro-bangla", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/tirobangla/v6/IFSgHe1Tm95E3O8b5i2V8MG9-UPeuz4i.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Tiro Bangla" - }, - { - "src": "http://fonts.gstatic.com/s/tirobangla/v6/IFSiHe1Tm95E3O8b5i2V8PG_80f8vi4imBM.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Tiro Bangla" - } - ] - }, - { - "name": "Tiro Devanagari Hindi", - "fontFamily": "Tiro Devanagari Hindi, serif", - "slug": "tiro-devanagari-hindi", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/tirodevanagarihindi/v5/55xyezN7P8T4e0_CfIJrwdodg9HoYw0i-M9fSOkOfG0Y3A.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Tiro Devanagari Hindi" - }, - { - "src": "http://fonts.gstatic.com/s/tirodevanagarihindi/v5/55x8ezN7P8T4e0_CfIJrwdodg9HoYw0i-M9vSuMKXmgI3F_o.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Tiro Devanagari Hindi" - } - ] - }, - { - "name": "Tiro Devanagari Marathi", - "fontFamily": "Tiro Devanagari Marathi, serif", - "slug": "tiro-devanagari-marathi", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/tirodevanagarimarathi/v5/fC1xPZBSZHrRhS3rd4M0MAPNJUHl4znXCxAkotDrDJYM2lAZ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Tiro Devanagari Marathi" - }, - { - "src": "http://fonts.gstatic.com/s/tirodevanagarimarathi/v5/fC1zPZBSZHrRhS3rd4M0MAPNJUHl4znXCxAkouDpBpIu30AZbUY.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Tiro Devanagari Marathi" - } - ] - }, - { - "name": "Tiro Devanagari Sanskrit", - "fontFamily": "Tiro Devanagari Sanskrit, serif", - "slug": "tiro-devanagari-sanskrit", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/tirodevanagarisanskrit/v5/MCoAzBbr09vVUgVBM8FWu_yZdZkhkg-I0nUlb59pEoEqgtOh0w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Tiro Devanagari Sanskrit" - }, - { - "src": "http://fonts.gstatic.com/s/tirodevanagarisanskrit/v5/MCoGzBbr09vVUgVBM8FWu_yZdZkhkg-I0nUlb59ZEIsuoNax06MM.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Tiro Devanagari Sanskrit" - } - ] - }, - { - "name": "Tiro Gurmukhi", - "fontFamily": "Tiro Gurmukhi, serif", - "slug": "tiro-gurmukhi", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/tirogurmukhi/v6/x3dmckXSYq-Uqjc048JUF7Jvly7HAQsyA2Y.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Tiro Gurmukhi" - }, - { - "src": "http://fonts.gstatic.com/s/tirogurmukhi/v6/x3d4ckXSYq-Uqjc048JUF7JvpyzNBSk3E2YljQ.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Tiro Gurmukhi" - } - ] - }, - { - "name": "Tiro Kannada", - "fontFamily": "Tiro Kannada, serif", - "slug": "tiro-kannada", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/tirokannada/v6/CSR44ztKmvqaDxEDJFY7CIYKSPl6tOU9Eg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Tiro Kannada" - }, - { - "src": "http://fonts.gstatic.com/s/tirokannada/v6/CSRm4ztKmvqaDxEDJFY7CIY6SvN-luAtEnKp.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Tiro Kannada" - } - ] - }, - { - "name": "Tiro Tamil", - "fontFamily": "Tiro Tamil, serif", - "slug": "tiro-tamil", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/tirotamil/v10/m8JXjfVIf7OT22n3M-S_ULRvamODxdI.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Tiro Tamil" - }, - { - "src": "http://fonts.gstatic.com/s/tirotamil/v10/m8JVjfVIf7OT22n3M-S_YLZlbkGG1dKEDw.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Tiro Tamil" - } - ] - }, - { - "name": "Tiro Telugu", - "fontFamily": "Tiro Telugu, serif", - "slug": "tiro-telugu", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/tirotelugu/v7/aFTQ7PxlZWk2EPiSymjXdKSNQqn0X0BO.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Tiro Telugu" - }, - { - "src": "http://fonts.gstatic.com/s/tirotelugu/v7/aFTS7PxlZWk2EPiSymjXdJSPSK3WWlBOoas.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Tiro Telugu" - } - ] - }, - { - "name": "Titan One", - "fontFamily": "Titan One, system-ui", - "slug": "titan-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/titanone/v13/mFTzWbsGxbbS_J5cQcjykzIn2Etikg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Titan One" - } - ] - }, - { - "name": "Titillium Web", - "fontFamily": "Titillium Web, sans-serif", - "slug": "titillium-web", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/titilliumweb/v15/NaPDcZTIAOhVxoMyOr9n_E7ffAzHKIx5YrSYqWM.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Titillium Web" - }, - { - "src": "http://fonts.gstatic.com/s/titilliumweb/v15/NaPFcZTIAOhVxoMyOr9n_E7fdMbewI1zZpaduWMmxA.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Titillium Web" - }, - { - "src": "http://fonts.gstatic.com/s/titilliumweb/v15/NaPDcZTIAOhVxoMyOr9n_E7ffGjEKIx5YrSYqWM.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Titillium Web" - }, - { - "src": "http://fonts.gstatic.com/s/titilliumweb/v15/NaPFcZTIAOhVxoMyOr9n_E7fdMbepI5zZpaduWMmxA.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Titillium Web" - }, - { - "src": "http://fonts.gstatic.com/s/titilliumweb/v15/NaPecZTIAOhVxoMyOr9n_E7fRMTsDIRSfr0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Titillium Web" - }, - { - "src": "http://fonts.gstatic.com/s/titilliumweb/v15/NaPAcZTIAOhVxoMyOr9n_E7fdMbmCKZXbr2BsA.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Titillium Web" - }, - { - "src": "http://fonts.gstatic.com/s/titilliumweb/v15/NaPDcZTIAOhVxoMyOr9n_E7ffBzCKIx5YrSYqWM.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Titillium Web" - }, - { - "src": "http://fonts.gstatic.com/s/titilliumweb/v15/NaPFcZTIAOhVxoMyOr9n_E7fdMbe0IhzZpaduWMmxA.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Titillium Web" - }, - { - "src": "http://fonts.gstatic.com/s/titilliumweb/v15/NaPDcZTIAOhVxoMyOr9n_E7ffHjDKIx5YrSYqWM.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Titillium Web" - }, - { - "src": "http://fonts.gstatic.com/s/titilliumweb/v15/NaPFcZTIAOhVxoMyOr9n_E7fdMbetIlzZpaduWMmxA.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Titillium Web" - }, - { - "src": "http://fonts.gstatic.com/s/titilliumweb/v15/NaPDcZTIAOhVxoMyOr9n_E7ffEDBKIx5YrSYqWM.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Titillium Web" - } - ] - }, - { - "name": "Tomorrow", - "fontFamily": "Tomorrow, sans-serif", - "slug": "tomorrow", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLgrETNbFtZCeGqgR2xe2XiKMiokE4.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Tomorrow" - }, - { - "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLirETNbFtZCeGqgRXXQwHoLOqtgE5h0A.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Tomorrow" - }, - { - "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLhrETNbFtZCeGqgR0dWkXIBsShiVd4.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Tomorrow" - }, - { - "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLjrETNbFtZCeGqgRXXQ63JDMCDjEd4yVY.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Tomorrow" - }, - { - "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLhrETNbFtZCeGqgR15WUXIBsShiVd4.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Tomorrow" - }, - { - "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLjrETNbFtZCeGqgRXXQ8nKDMCDjEd4yVY.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Tomorrow" - }, - { - "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLmrETNbFtZCeGqgSXVcWHALdio.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Tomorrow" - }, - { - "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLgrETNbFtZCeGqgRXXe2XiKMiokE4.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Tomorrow" - }, - { - "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLhrETNbFtZCeGqgR0hWEXIBsShiVd4.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Tomorrow" - }, - { - "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLjrETNbFtZCeGqgRXXQ5HLDMCDjEd4yVY.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Tomorrow" - }, - { - "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLhrETNbFtZCeGqgR0NX0XIBsShiVd4.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Tomorrow" - }, - { - "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLjrETNbFtZCeGqgRXXQ73MDMCDjEd4yVY.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Tomorrow" - }, - { - "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLhrETNbFtZCeGqgR1pXkXIBsShiVd4.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Tomorrow" - }, - { - "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLjrETNbFtZCeGqgRXXQ9nNDMCDjEd4yVY.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Tomorrow" - }, - { - "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLhrETNbFtZCeGqgR11XUXIBsShiVd4.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Tomorrow" - }, - { - "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLjrETNbFtZCeGqgRXXQ8XODMCDjEd4yVY.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Tomorrow" - }, - { - "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLhrETNbFtZCeGqgR1RXEXIBsShiVd4.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Tomorrow" - }, - { - "src": "http://fonts.gstatic.com/s/tomorrow/v15/WBLjrETNbFtZCeGqgRXXQ-HPDMCDjEd4yVY.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Tomorrow" - } - ] - }, - { - "name": "Tourney", - "fontFamily": "Tourney, system-ui", - "slug": "tourney", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/tourney/v11/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7GOQByZTp1I1LcGA.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Tourney" - }, - { - "src": "http://fonts.gstatic.com/s/tourney/v11/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7GuQFyZTp1I1LcGA.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Tourney" - }, - { - "src": "http://fonts.gstatic.com/s/tourney/v11/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7GZwFyZTp1I1LcGA.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Tourney" - }, - { - "src": "http://fonts.gstatic.com/s/tourney/v11/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7GOQFyZTp1I1LcGA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Tourney" - }, - { - "src": "http://fonts.gstatic.com/s/tourney/v11/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7GCwFyZTp1I1LcGA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Tourney" - }, - { - "src": "http://fonts.gstatic.com/s/tourney/v11/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7G5wZyZTp1I1LcGA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Tourney" - }, - { - "src": "http://fonts.gstatic.com/s/tourney/v11/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7G3gZyZTp1I1LcGA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Tourney" - }, - { - "src": "http://fonts.gstatic.com/s/tourney/v11/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7GuQZyZTp1I1LcGA.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Tourney" - }, - { - "src": "http://fonts.gstatic.com/s/tourney/v11/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7GkAZyZTp1I1LcGA.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Tourney" - }, - { - "src": "http://fonts.gstatic.com/s/tourney/v11/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8UKaJzBxAVfMGOPb.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Tourney" - }, - { - "src": "http://fonts.gstatic.com/s/tourney/v11/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8UIaJjBxAVfMGOPb.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Tourney" - }, - { - "src": "http://fonts.gstatic.com/s/tourney/v11/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8ULEJjBxAVfMGOPb.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Tourney" - }, - { - "src": "http://fonts.gstatic.com/s/tourney/v11/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8UKaJjBxAVfMGOPb.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Tourney" - }, - { - "src": "http://fonts.gstatic.com/s/tourney/v11/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8UKoJjBxAVfMGOPb.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Tourney" - }, - { - "src": "http://fonts.gstatic.com/s/tourney/v11/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8UJEITBxAVfMGOPb.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Tourney" - }, - { - "src": "http://fonts.gstatic.com/s/tourney/v11/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8UJ9ITBxAVfMGOPb.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Tourney" - }, - { - "src": "http://fonts.gstatic.com/s/tourney/v11/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8UIaITBxAVfMGOPb.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Tourney" - }, - { - "src": "http://fonts.gstatic.com/s/tourney/v11/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8UIzITBxAVfMGOPb.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Tourney" - } - ] - }, - { - "name": "Trade Winds", - "fontFamily": "Trade Winds, system-ui", - "slug": "trade-winds", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/tradewinds/v17/AYCPpXPpYNIIT7h8-QenM3Jq7PKP5Z_G.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Trade Winds" - } - ] - }, - { - "name": "Train One", - "fontFamily": "Train One, system-ui", - "slug": "train-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/trainone/v13/gyB-hwkiNtc6KnxUVjWHOqbZRY7JVQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Train One" - } - ] - }, - { - "name": "Trirong", - "fontFamily": "Trirong, serif", - "slug": "trirong", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/trirong/v12/7r3EqXNgp8wxdOdOl-go3YRl6ujngw.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Trirong" - }, - { - "src": "http://fonts.gstatic.com/s/trirong/v12/7r3CqXNgp8wxdOdOn44QuY5hyO33g8IY.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Trirong" - }, - { - "src": "http://fonts.gstatic.com/s/trirong/v12/7r3DqXNgp8wxdOdOl0QJ_a5L5uH-mts.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Trirong" - }, - { - "src": "http://fonts.gstatic.com/s/trirong/v12/7r3BqXNgp8wxdOdOn44QFa9B4sP7itsB5g.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Trirong" - }, - { - "src": "http://fonts.gstatic.com/s/trirong/v12/7r3DqXNgp8wxdOdOlyAK_a5L5uH-mts.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Trirong" - }, - { - "src": "http://fonts.gstatic.com/s/trirong/v12/7r3BqXNgp8wxdOdOn44QcaxB4sP7itsB5g.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Trirong" - }, - { - "src": "http://fonts.gstatic.com/s/trirong/v12/7r3GqXNgp8wxdOdOr4wi2aZg-ug.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Trirong" - }, - { - "src": "http://fonts.gstatic.com/s/trirong/v12/7r3EqXNgp8wxdOdOn44o3YRl6ujngw.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Trirong" - }, - { - "src": "http://fonts.gstatic.com/s/trirong/v12/7r3DqXNgp8wxdOdOl3gL_a5L5uH-mts.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Trirong" - }, - { - "src": "http://fonts.gstatic.com/s/trirong/v12/7r3BqXNgp8wxdOdOn44QKa1B4sP7itsB5g.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Trirong" - }, - { - "src": "http://fonts.gstatic.com/s/trirong/v12/7r3DqXNgp8wxdOdOl1QM_a5L5uH-mts.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Trirong" - }, - { - "src": "http://fonts.gstatic.com/s/trirong/v12/7r3BqXNgp8wxdOdOn44QBapB4sP7itsB5g.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Trirong" - }, - { - "src": "http://fonts.gstatic.com/s/trirong/v12/7r3DqXNgp8wxdOdOlzAN_a5L5uH-mts.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Trirong" - }, - { - "src": "http://fonts.gstatic.com/s/trirong/v12/7r3BqXNgp8wxdOdOn44QYatB4sP7itsB5g.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Trirong" - }, - { - "src": "http://fonts.gstatic.com/s/trirong/v12/7r3DqXNgp8wxdOdOlywO_a5L5uH-mts.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Trirong" - }, - { - "src": "http://fonts.gstatic.com/s/trirong/v12/7r3BqXNgp8wxdOdOn44QfahB4sP7itsB5g.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Trirong" - }, - { - "src": "http://fonts.gstatic.com/s/trirong/v12/7r3DqXNgp8wxdOdOlwgP_a5L5uH-mts.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Trirong" - }, - { - "src": "http://fonts.gstatic.com/s/trirong/v12/7r3BqXNgp8wxdOdOn44QWalB4sP7itsB5g.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Trirong" - } - ] - }, - { - "name": "Trispace", - "fontFamily": "Trispace, sans-serif", - "slug": "trispace", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/trispace/v22/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbH9qoQl0zHugpt0.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Trispace" - }, - { - "src": "http://fonts.gstatic.com/s/trispace/v22/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbP9roQl0zHugpt0.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Trispace" - }, - { - "src": "http://fonts.gstatic.com/s/trispace/v22/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbCFroQl0zHugpt0.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Trispace" - }, - { - "src": "http://fonts.gstatic.com/s/trispace/v22/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbH9roQl0zHugpt0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Trispace" - }, - { - "src": "http://fonts.gstatic.com/s/trispace/v22/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbE1roQl0zHugpt0.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Trispace" - }, - { - "src": "http://fonts.gstatic.com/s/trispace/v22/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbKFsoQl0zHugpt0.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Trispace" - }, - { - "src": "http://fonts.gstatic.com/s/trispace/v22/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbJhsoQl0zHugpt0.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Trispace" - }, - { - "src": "http://fonts.gstatic.com/s/trispace/v22/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbP9soQl0zHugpt0.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Trispace" - } - ] - }, - { - "name": "Trocchi", - "fontFamily": "Trocchi, serif", - "slug": "trocchi", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/trocchi/v15/qWcqB6WkuIDxDZLcDrtUvMeTYD0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Trocchi" - } - ] - }, - { - "name": "Trochut", - "fontFamily": "Trochut, system-ui", - "slug": "trochut", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/trochut/v20/CHyjV-fDDlP9bDIw5nSIfVIPLns.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Trochut" - }, - { - "src": "http://fonts.gstatic.com/s/trochut/v20/CHyhV-fDDlP9bDIw1naCeXAKPns8jw.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Trochut" - }, - { - "src": "http://fonts.gstatic.com/s/trochut/v20/CHymV-fDDlP9bDIw3sinWVokMnIllmA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Trochut" - } - ] - }, - { - "name": "Truculenta", - "fontFamily": "Truculenta, sans-serif", - "slug": "truculenta", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/truculenta/v22/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMlAjswcFHnJMMhg.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Truculenta" - }, - { - "src": "http://fonts.gstatic.com/s/truculenta/v22/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMtAiswcFHnJMMhg.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Truculenta" - }, - { - "src": "http://fonts.gstatic.com/s/truculenta/v22/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMg4iswcFHnJMMhg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Truculenta" - }, - { - "src": "http://fonts.gstatic.com/s/truculenta/v22/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMlAiswcFHnJMMhg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Truculenta" - }, - { - "src": "http://fonts.gstatic.com/s/truculenta/v22/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMmIiswcFHnJMMhg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Truculenta" - }, - { - "src": "http://fonts.gstatic.com/s/truculenta/v22/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMo4lswcFHnJMMhg.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Truculenta" - }, - { - "src": "http://fonts.gstatic.com/s/truculenta/v22/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMrclswcFHnJMMhg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Truculenta" - }, - { - "src": "http://fonts.gstatic.com/s/truculenta/v22/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMtAlswcFHnJMMhg.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Truculenta" - }, - { - "src": "http://fonts.gstatic.com/s/truculenta/v22/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMvklswcFHnJMMhg.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Truculenta" - } - ] - }, - { - "name": "Trykker", - "fontFamily": "Trykker, serif", - "slug": "trykker", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/trykker/v21/KtktALyWZJXudUPzhNnoOd2j22U.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Trykker" - } - ] - }, - { - "name": "Tsukimi Rounded", - "fontFamily": "Tsukimi Rounded, sans-serif", - "slug": "tsukimi-rounded", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/tsukimirounded/v8/sJoZ3LJNksWZO0LvnZwkF3HtoB7VkVsqN7MT3T9X8g.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Tsukimi Rounded" - }, - { - "src": "http://fonts.gstatic.com/s/tsukimirounded/v8/sJoc3LJNksWZO0LvnZwkF3HtoB7tPXMOP5gP1A.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Tsukimi Rounded" - }, - { - "src": "http://fonts.gstatic.com/s/tsukimirounded/v8/sJoZ3LJNksWZO0LvnZwkF3HtoB7VyVoqN7MT3T9X8g.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Tsukimi Rounded" - }, - { - "src": "http://fonts.gstatic.com/s/tsukimirounded/v8/sJoZ3LJNksWZO0LvnZwkF3HtoB7V5V0qN7MT3T9X8g.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Tsukimi Rounded" - }, - { - "src": "http://fonts.gstatic.com/s/tsukimirounded/v8/sJoZ3LJNksWZO0LvnZwkF3HtoB7VgVwqN7MT3T9X8g.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Tsukimi Rounded" - } - ] - }, - { - "name": "Tulpen One", - "fontFamily": "Tulpen One, system-ui", - "slug": "tulpen-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/tulpenone/v21/dFa6ZfeC474skLgesc0CWj0w_HyIRlE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Tulpen One" - } - ] - }, - { - "name": "Turret Road", - "fontFamily": "Turret Road, system-ui", - "slug": "turret-road", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/turretroad/v7/pxidypMgpcBFjE84Zv-fE0ONEdeLYk1Mq3ap.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Turret Road" - }, - { - "src": "http://fonts.gstatic.com/s/turretroad/v7/pxidypMgpcBFjE84Zv-fE0PpEteLYk1Mq3ap.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Turret Road" - }, - { - "src": "http://fonts.gstatic.com/s/turretroad/v7/pxiAypMgpcBFjE84Zv-fE3tFOvODSVFF.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Turret Road" - }, - { - "src": "http://fonts.gstatic.com/s/turretroad/v7/pxidypMgpcBFjE84Zv-fE0OxE9eLYk1Mq3ap.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Turret Road" - }, - { - "src": "http://fonts.gstatic.com/s/turretroad/v7/pxidypMgpcBFjE84Zv-fE0P5FdeLYk1Mq3ap.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Turret Road" - }, - { - "src": "http://fonts.gstatic.com/s/turretroad/v7/pxidypMgpcBFjE84Zv-fE0PlFteLYk1Mq3ap.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Turret Road" - } - ] - }, - { - "name": "Twinkle Star", - "fontFamily": "Twinkle Star, cursive", - "slug": "twinkle-star", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/twinklestar/v3/pe0pMI6IL4dPoFl9LGEmY6WaA_Rue1UwVg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Twinkle Star" - } - ] - }, - { - "name": "Ubuntu", - "fontFamily": "Ubuntu, sans-serif", - "slug": "ubuntu", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ubuntu/v20/4iCv6KVjbNBYlgoC1CzTt2aMH4V_gg.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Ubuntu" - }, - { - "src": "http://fonts.gstatic.com/s/ubuntu/v20/4iCp6KVjbNBYlgoKejZftWyIPYBvgpUI.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Ubuntu" - }, - { - "src": "http://fonts.gstatic.com/s/ubuntu/v20/4iCs6KVjbNBYlgo6eAT3v02QFg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Ubuntu" - }, - { - "src": "http://fonts.gstatic.com/s/ubuntu/v20/4iCu6KVjbNBYlgoKeg7znUiAFpxm.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Ubuntu" - }, - { - "src": "http://fonts.gstatic.com/s/ubuntu/v20/4iCv6KVjbNBYlgoCjC3Tt2aMH4V_gg.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Ubuntu" - }, - { - "src": "http://fonts.gstatic.com/s/ubuntu/v20/4iCp6KVjbNBYlgoKejYHtGyIPYBvgpUI.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Ubuntu" - }, - { - "src": "http://fonts.gstatic.com/s/ubuntu/v20/4iCv6KVjbNBYlgoCxCvTt2aMH4V_gg.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Ubuntu" - }, - { - "src": "http://fonts.gstatic.com/s/ubuntu/v20/4iCp6KVjbNBYlgoKejZPsmyIPYBvgpUI.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Ubuntu" - } - ] - }, - { - "name": "Ubuntu Condensed", - "fontFamily": "Ubuntu Condensed, sans-serif", - "slug": "ubuntu-condensed", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ubuntucondensed/v16/u-4k0rCzjgs5J7oXnJcM_0kACGMtf-fVqvHoJXw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Ubuntu Condensed" - } - ] - }, - { - "name": "Ubuntu Mono", - "fontFamily": "Ubuntu Mono, monospace", - "slug": "ubuntu-mono", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ubuntumono/v15/KFOjCneDtsqEr0keqCMhbBc9AMX6lJBP.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Ubuntu Mono" - }, - { - "src": "http://fonts.gstatic.com/s/ubuntumono/v15/KFOhCneDtsqEr0keqCMhbCc_CsHYkYBPY3o.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Ubuntu Mono" - }, - { - "src": "http://fonts.gstatic.com/s/ubuntumono/v15/KFO-CneDtsqEr0keqCMhbC-BL-Hyv4xGemO1.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Ubuntu Mono" - }, - { - "src": "http://fonts.gstatic.com/s/ubuntumono/v15/KFO8CneDtsqEr0keqCMhbCc_Mn33tYhkf3O1GVg.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Ubuntu Mono" - } - ] - }, - { - "name": "Uchen", - "fontFamily": "Uchen, serif", - "slug": "uchen", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/uchen/v7/nKKZ-GokGZ1baIaSEQGodLxA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Uchen" - } - ] - }, - { - "name": "Ultra", - "fontFamily": "Ultra, serif", - "slug": "ultra", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ultra/v19/zOLy4prXmrtY-tT6yLOD6NxF.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Ultra" - } - ] - }, - { - "name": "Unbounded", - "fontFamily": "Unbounded, system-ui", - "slug": "unbounded", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/unbounded/v6/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG65jx043HgP6LR0Y.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Unbounded" - }, - { - "src": "http://fonts.gstatic.com/s/unbounded/v6/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG60bx043HgP6LR0Y.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Unbounded" - }, - { - "src": "http://fonts.gstatic.com/s/unbounded/v6/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG6xjx043HgP6LR0Y.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Unbounded" - }, - { - "src": "http://fonts.gstatic.com/s/unbounded/v6/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG6yrx043HgP6LR0Y.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Unbounded" - }, - { - "src": "http://fonts.gstatic.com/s/unbounded/v6/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG68b2043HgP6LR0Y.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Unbounded" - }, - { - "src": "http://fonts.gstatic.com/s/unbounded/v6/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG6__2043HgP6LR0Y.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Unbounded" - }, - { - "src": "http://fonts.gstatic.com/s/unbounded/v6/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG65j2043HgP6LR0Y.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Unbounded" - }, - { - "src": "http://fonts.gstatic.com/s/unbounded/v6/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG67H2043HgP6LR0Y.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Unbounded" - } - ] - }, - { - "name": "Uncial Antiqua", - "fontFamily": "Uncial Antiqua, system-ui", - "slug": "uncial-antiqua", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/uncialantiqua/v20/N0bM2S5WOex4OUbESzoESK-i-PfRS5VBBSSF.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Uncial Antiqua" - } - ] - }, - { - "name": "Underdog", - "fontFamily": "Underdog, system-ui", - "slug": "underdog", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/underdog/v23/CHygV-jCElj7diMroVSiU14GN2Il.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Underdog" - } - ] - }, - { - "name": "Unica One", - "fontFamily": "Unica One, system-ui", - "slug": "unica-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/unicaone/v15/DPEuYwWHyAYGVTSmalshdtffuEY7FA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Unica One" - } - ] - }, - { - "name": "UnifrakturCook", - "fontFamily": "UnifrakturCook, system-ui", - "slug": "unifrakturcook", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/unifrakturcook/v19/IurA6Yli8YOdcoky-0PTTdkm56n05Uw13ILXs-h6.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "UnifrakturCook" - } - ] - }, - { - "name": "UnifrakturMaguntia", - "fontFamily": "UnifrakturMaguntia, system-ui", - "slug": "unifrakturmaguntia", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/unifrakturmaguntia/v16/WWXPlieVYwiGNomYU-ciRLRvEmK7oaVun2xNNgNa1A.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "UnifrakturMaguntia" - } - ] - }, - { - "name": "Unkempt", - "fontFamily": "Unkempt, system-ui", - "slug": "unkempt", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/unkempt/v19/2EbnL-Z2DFZue0DSSYYf8z2Yt_c.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Unkempt" - }, - { - "src": "http://fonts.gstatic.com/s/unkempt/v19/2EbiL-Z2DFZue0DScTow1zWzq_5uT84.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Unkempt" - } - ] - }, - { - "name": "Unlock", - "fontFamily": "Unlock, system-ui", - "slug": "unlock", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/unlock/v24/7Au-p_8ykD-cDl7GKAjSwkUVOQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Unlock" - } - ] - }, - { - "name": "Unna", - "fontFamily": "Unna, serif", - "slug": "unna", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/unna/v21/AYCEpXzofN0NCpgBlGHCWFM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Unna" - }, - { - "src": "http://fonts.gstatic.com/s/unna/v21/AYCKpXzofN0NOpoLkEPHSFNyxw.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Unna" - }, - { - "src": "http://fonts.gstatic.com/s/unna/v21/AYCLpXzofN0NMiQusGnpRFpr3vc.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Unna" - }, - { - "src": "http://fonts.gstatic.com/s/unna/v21/AYCJpXzofN0NOpozLGzjQHhuzvef5Q.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Unna" - } - ] - }, - { - "name": "Updock", - "fontFamily": "Updock, cursive", - "slug": "updock", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/updock/v2/nuF4D_3dVZ70UI9SjLK3602XBw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Updock" - } - ] - }, - { - "name": "Urbanist", - "fontFamily": "Urbanist, sans-serif", - "slug": "urbanist", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDyx8fFpOrS8SlKw.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Urbanist" - }, - { - "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDSx4fFpOrS8SlKw.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Urbanist" - }, - { - "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDlR4fFpOrS8SlKw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Urbanist" - }, - { - "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDyx4fFpOrS8SlKw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Urbanist" - }, - { - "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xjDF02iFML4hGCyOCpRdycFsGxSrqD-R4fFpOrS8SlKw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Urbanist" - }, - { - "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDFRkfFpOrS8SlKw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Urbanist" - }, - { - "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDLBkfFpOrS8SlKw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Urbanist" - }, - { - "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDSxkfFpOrS8SlKw.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Urbanist" - }, - { - "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDYhkfFpOrS8SlKw.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Urbanist" - }, - { - "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA133VJmvacG1K4S1.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Urbanist" - }, - { - "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA113VZmvacG1K4S1.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Urbanist" - }, - { - "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA12pVZmvacG1K4S1.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Urbanist" - }, - { - "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA133VZmvacG1K4S1.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Urbanist" - }, - { - "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA13FVZmvacG1K4S1.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Urbanist" - }, - { - "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA10pUpmvacG1K4S1.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Urbanist" - }, - { - "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA10QUpmvacG1K4S1.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Urbanist" - }, - { - "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA113UpmvacG1K4S1.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Urbanist" - }, - { - "src": "http://fonts.gstatic.com/s/urbanist/v10/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA11eUpmvacG1K4S1.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Urbanist" - } - ] - }, - { - "name": "VT323", - "fontFamily": "VT323, monospace", - "slug": "vt323", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/vt323/v17/pxiKyp0ihIEF2hsYHpT2dkNE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "VT323" - } - ] - }, - { - "name": "Vampiro One", - "fontFamily": "Vampiro One, system-ui", - "slug": "vampiro-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/vampiroone/v18/gokqH6DoDl5yXvJytFsdLkqnsvhIor3K.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Vampiro One" - } - ] - }, - { - "name": "Varela", - "fontFamily": "Varela, sans-serif", - "slug": "varela", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/varela/v16/DPEtYwqExx0AWHXJBBQFfvzDsQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Varela" - } - ] - }, - { - "name": "Varela Round", - "fontFamily": "Varela Round, sans-serif", - "slug": "varela-round", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/varelaround/v20/w8gdH283Tvk__Lua32TysjIvoMGOD9gxZw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Varela Round" - } - ] - }, - { - "name": "Varta", - "fontFamily": "Varta, sans-serif", - "slug": "varta", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/varta/v21/Qw3AZQpJHj_6LzHUngWbrFkDH1x96j4EirE-9PGLfQ.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Varta" - }, - { - "src": "http://fonts.gstatic.com/s/varta/v21/Qw3AZQpJHj_6LzHUngWbrFkDH1x9tD4EirE-9PGLfQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Varta" - }, - { - "src": "http://fonts.gstatic.com/s/varta/v21/Qw3AZQpJHj_6LzHUngWbrFkDH1x9hj4EirE-9PGLfQ.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Varta" - }, - { - "src": "http://fonts.gstatic.com/s/varta/v21/Qw3AZQpJHj_6LzHUngWbrFkDH1x9ajkEirE-9PGLfQ.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Varta" - }, - { - "src": "http://fonts.gstatic.com/s/varta/v21/Qw3AZQpJHj_6LzHUngWbrFkDH1x9UzkEirE-9PGLfQ.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Varta" - } - ] - }, - { - "name": "Vast Shadow", - "fontFamily": "Vast Shadow, system-ui", - "slug": "vast-shadow", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/vastshadow/v15/pe0qMImKOZ1V62ZwbVY9dfe6Kdpickwp.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Vast Shadow" - } - ] - }, - { - "name": "Vazirmatn", - "fontFamily": "Vazirmatn, sans-serif", - "slug": "vazirmatn", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/vazirmatn/v13/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklWgyOReZ72DF_QY.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Vazirmatn" - }, - { - "src": "http://fonts.gstatic.com/s/vazirmatn/v13/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklegzOReZ72DF_QY.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Vazirmatn" - }, - { - "src": "http://fonts.gstatic.com/s/vazirmatn/v13/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklTYzOReZ72DF_QY.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Vazirmatn" - }, - { - "src": "http://fonts.gstatic.com/s/vazirmatn/v13/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklWgzOReZ72DF_QY.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Vazirmatn" - }, - { - "src": "http://fonts.gstatic.com/s/vazirmatn/v13/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklVozOReZ72DF_QY.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Vazirmatn" - }, - { - "src": "http://fonts.gstatic.com/s/vazirmatn/v13/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklbY0OReZ72DF_QY.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Vazirmatn" - }, - { - "src": "http://fonts.gstatic.com/s/vazirmatn/v13/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklY80OReZ72DF_QY.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Vazirmatn" - }, - { - "src": "http://fonts.gstatic.com/s/vazirmatn/v13/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRkleg0OReZ72DF_QY.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Vazirmatn" - }, - { - "src": "http://fonts.gstatic.com/s/vazirmatn/v13/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklcE0OReZ72DF_QY.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Vazirmatn" - } - ] - }, - { - "name": "Vesper Libre", - "fontFamily": "Vesper Libre, serif", - "slug": "vesper-libre", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/vesperlibre/v19/bx6CNxyWnf-uxPdXDHUD_Rd4D0-N2qIWVQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Vesper Libre" - }, - { - "src": "http://fonts.gstatic.com/s/vesperlibre/v19/bx6dNxyWnf-uxPdXDHUD_RdA-2ap0okKXKvPlw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Vesper Libre" - }, - { - "src": "http://fonts.gstatic.com/s/vesperlibre/v19/bx6dNxyWnf-uxPdXDHUD_RdAs2Cp0okKXKvPlw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Vesper Libre" - }, - { - "src": "http://fonts.gstatic.com/s/vesperlibre/v19/bx6dNxyWnf-uxPdXDHUD_RdAi2Kp0okKXKvPlw.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Vesper Libre" - } - ] - }, - { - "name": "Viaoda Libre", - "fontFamily": "Viaoda Libre, system-ui", - "slug": "viaoda-libre", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/viaodalibre/v15/vEFW2_lWCgoR6OKuRz9kcRVJb2IY2tOHXg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Viaoda Libre" - } - ] - }, - { - "name": "Vibes", - "fontFamily": "Vibes, system-ui", - "slug": "vibes", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/vibes/v14/QdVYSTsmIB6tmbd3HpbsuBlh.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Vibes" - } - ] - }, - { - "name": "Vibur", - "fontFamily": "Vibur, cursive", - "slug": "vibur", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/vibur/v23/DPEiYwmEzw0QRjTpLjoJd-Xa.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Vibur" - } - ] - }, - { - "name": "Vidaloka", - "fontFamily": "Vidaloka, serif", - "slug": "vidaloka", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/vidaloka/v18/7cHrv4c3ipenMKlEass8yn4hnCci.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Vidaloka" - } - ] - }, - { - "name": "Viga", - "fontFamily": "Viga, sans-serif", - "slug": "viga", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/viga/v14/xMQbuFFdSaiX_QIjD4e2OX8.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Viga" - } - ] - }, - { - "name": "Vina Sans", - "fontFamily": "Vina Sans, system-ui", - "slug": "vina-sans", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/vinasans/v2/m8JQjfZKf6-d2273MP7zcJ5BZmqa3A.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Vina Sans" - } - ] - }, - { - "name": "Voces", - "fontFamily": "Voces, system-ui", - "slug": "voces", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/voces/v20/-F6_fjJyLyU8d4PBBG7YpzlJ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Voces" - } - ] - }, - { - "name": "Volkhov", - "fontFamily": "Volkhov, serif", - "slug": "volkhov", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/volkhov/v17/SlGQmQieoJcKemNeQTIOhHxzcD0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Volkhov" - }, - { - "src": "http://fonts.gstatic.com/s/volkhov/v17/SlGSmQieoJcKemNecTAEgF52YD0NYw.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Volkhov" - }, - { - "src": "http://fonts.gstatic.com/s/volkhov/v17/SlGVmQieoJcKemNeeY4hoHRYbDQUego.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Volkhov" - }, - { - "src": "http://fonts.gstatic.com/s/volkhov/v17/SlGXmQieoJcKemNecTA8PHFSaBYRagrQrA.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Volkhov" - } - ] - }, - { - "name": "Vollkorn", - "fontFamily": "Vollkorn, serif", - "slug": "vollkorn", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/vollkorn/v22/0ybgGDoxxrvAnPhYGzMlQLzuMasz6Df2MHGuGWOdEbD63w.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Vollkorn" - }, - { - "src": "http://fonts.gstatic.com/s/vollkorn/v22/0ybgGDoxxrvAnPhYGzMlQLzuMasz6Df2AnGuGWOdEbD63w.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Vollkorn" - }, - { - "src": "http://fonts.gstatic.com/s/vollkorn/v22/0ybgGDoxxrvAnPhYGzMlQLzuMasz6Df27nauGWOdEbD63w.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Vollkorn" - }, - { - "src": "http://fonts.gstatic.com/s/vollkorn/v22/0ybgGDoxxrvAnPhYGzMlQLzuMasz6Df213auGWOdEbD63w.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Vollkorn" - }, - { - "src": "http://fonts.gstatic.com/s/vollkorn/v22/0ybgGDoxxrvAnPhYGzMlQLzuMasz6Df2sHauGWOdEbD63w.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Vollkorn" - }, - { - "src": "http://fonts.gstatic.com/s/vollkorn/v22/0ybgGDoxxrvAnPhYGzMlQLzuMasz6Df2mXauGWOdEbD63w.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Vollkorn" - }, - { - "src": "http://fonts.gstatic.com/s/vollkorn/v22/0ybuGDoxxrvAnPhYGxksckM2WMCpRjDj-DJGWmmZM7Xq34g9.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Vollkorn" - }, - { - "src": "http://fonts.gstatic.com/s/vollkorn/v22/0ybuGDoxxrvAnPhYGxksckM2WMCpRjDj-DJ0WmmZM7Xq34g9.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Vollkorn" - }, - { - "src": "http://fonts.gstatic.com/s/vollkorn/v22/0ybuGDoxxrvAnPhYGxksckM2WMCpRjDj-DKYXWmZM7Xq34g9.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Vollkorn" - }, - { - "src": "http://fonts.gstatic.com/s/vollkorn/v22/0ybuGDoxxrvAnPhYGxksckM2WMCpRjDj-DKhXWmZM7Xq34g9.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Vollkorn" - }, - { - "src": "http://fonts.gstatic.com/s/vollkorn/v22/0ybuGDoxxrvAnPhYGxksckM2WMCpRjDj-DLGXWmZM7Xq34g9.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Vollkorn" - }, - { - "src": "http://fonts.gstatic.com/s/vollkorn/v22/0ybuGDoxxrvAnPhYGxksckM2WMCpRjDj-DLvXWmZM7Xq34g9.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Vollkorn" - } - ] - }, - { - "name": "Vollkorn SC", - "fontFamily": "Vollkorn SC, serif", - "slug": "vollkorn-sc", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/vollkornsc/v11/j8_v6-zQ3rXpceZj9cqnVhF5NH-iSq_E.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Vollkorn SC" - }, - { - "src": "http://fonts.gstatic.com/s/vollkornsc/v11/j8_y6-zQ3rXpceZj9cqnVimhGluqYbPN5Yjn.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Vollkorn SC" - }, - { - "src": "http://fonts.gstatic.com/s/vollkornsc/v11/j8_y6-zQ3rXpceZj9cqnVinFG1uqYbPN5Yjn.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Vollkorn SC" - }, - { - "src": "http://fonts.gstatic.com/s/vollkornsc/v11/j8_y6-zQ3rXpceZj9cqnVin9GVuqYbPN5Yjn.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Vollkorn SC" - } - ] - }, - { - "name": "Voltaire", - "fontFamily": "Voltaire, sans-serif", - "slug": "voltaire", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/voltaire/v18/1Pttg8PcRfSblAvGvQooYKVnBOif.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Voltaire" - } - ] - }, - { - "name": "Vujahday Script", - "fontFamily": "Vujahday Script, cursive", - "slug": "vujahday-script", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/vujahdayscript/v4/RWmQoKGA8fEkrIPtSZ3_J7er2dUiDEtvAlaMKw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Vujahday Script" - } - ] - }, - { - "name": "Waiting for the Sunrise", - "fontFamily": "Waiting for the Sunrise, cursive", - "slug": "waiting-for-the-sunrise", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/waitingforthesunrise/v16/WBL1rFvOYl9CEv2i1mO6KUW8RKWJ2zoXoz5JsYZQ9h_ZYk5J.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Waiting for the Sunrise" - } - ] - }, - { - "name": "Wallpoet", - "fontFamily": "Wallpoet, system-ui", - "slug": "wallpoet", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/wallpoet/v16/f0X10em2_8RnXVVdUNbu7cXP8L8G.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Wallpoet" - } - ] - }, - { - "name": "Walter Turncoat", - "fontFamily": "Walter Turncoat, cursive", - "slug": "walter-turncoat", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/walterturncoat/v19/snfys0Gs98ln43n0d-14ULoToe67YB2dQ5ZPqQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Walter Turncoat" - } - ] - }, - { - "name": "Warnes", - "fontFamily": "Warnes, system-ui", - "slug": "warnes", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/warnes/v25/pONn1hc0GsW6sW5OpiC2o6Lkqg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Warnes" - } - ] - }, - { - "name": "Water Brush", - "fontFamily": "Water Brush, cursive", - "slug": "water-brush", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/waterbrush/v2/AYCPpXPqc8cJWLhp4hywKHJq7PKP5Z_G.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Water Brush" - } - ] - }, - { - "name": "Waterfall", - "fontFamily": "Waterfall, cursive", - "slug": "waterfall", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/waterfall/v3/MCoRzAfo293fACdFKcwY2rH8D_EZwA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Waterfall" - } - ] - }, - { - "name": "Wellfleet", - "fontFamily": "Wellfleet, system-ui", - "slug": "wellfleet", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/wellfleet/v20/nuF7D_LfQJb3VYgX6eyT42aLDhO2HA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Wellfleet" - } - ] - }, - { - "name": "Wendy One", - "fontFamily": "Wendy One, sans-serif", - "slug": "wendy-one", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/wendyone/v15/2sDcZGJOipXfgfXV5wgDb2-4C7wFZQ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Wendy One" - } - ] - }, - { - "name": "Whisper", - "fontFamily": "Whisper, cursive", - "slug": "whisper", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/whisper/v2/q5uHsoqtKftx74K9milCBxxdmYU.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Whisper" - } - ] - }, - { - "name": "WindSong", - "fontFamily": "WindSong, cursive", - "slug": "windsong", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/windsong/v8/KR1WBsyu-P-GFEW57r95HdG6vjH3.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "WindSong" - }, - { - "src": "http://fonts.gstatic.com/s/windsong/v8/KR1RBsyu-P-GFEW57oeNNPWylS3-jVXm.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "WindSong" - } - ] - }, - { - "name": "Wire One", - "fontFamily": "Wire One, sans-serif", - "slug": "wire-one", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/wireone/v24/qFdH35Wah5htUhV75WGiWdrCwwcJ.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Wire One" - } - ] - }, - { - "name": "Wix Madefor Display", - "fontFamily": "Wix Madefor Display, sans-serif", - "slug": "wix-madefor-display", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/wixmadefordisplay/v9/SZcS3EX9IbbyeJ8aOluD52KXgUA_7Ed1I13G853Cp9duUYFhYltkv_3HQKgh.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Wix Madefor Display" - }, - { - "src": "http://fonts.gstatic.com/s/wixmadefordisplay/v9/SZcS3EX9IbbyeJ8aOluD52KXgUA_7Ed1I13G853Cp9duUYFTYltkv_3HQKgh.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Wix Madefor Display" - }, - { - "src": "http://fonts.gstatic.com/s/wixmadefordisplay/v9/SZcS3EX9IbbyeJ8aOluD52KXgUA_7Ed1I13G853Cp9duUYG_ZVtkv_3HQKgh.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Wix Madefor Display" - }, - { - "src": "http://fonts.gstatic.com/s/wixmadefordisplay/v9/SZcS3EX9IbbyeJ8aOluD52KXgUA_7Ed1I13G853Cp9duUYGGZVtkv_3HQKgh.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Wix Madefor Display" - }, - { - "src": "http://fonts.gstatic.com/s/wixmadefordisplay/v9/SZcS3EX9IbbyeJ8aOluD52KXgUA_7Ed1I13G853Cp9duUYHhZVtkv_3HQKgh.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Wix Madefor Display" - } - ] - }, - { - "name": "Wix Madefor Text", - "fontFamily": "Wix Madefor Text, sans-serif", - "slug": "wix-madefor-text", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/wixmadefortext/v12/-W_oXI_oSymQ8Qj-Apx3HGN_Hu1RTCk5FtSDETgf0cK_NOeFgpRt9rN5.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Wix Madefor Text" - }, - { - "src": "http://fonts.gstatic.com/s/wixmadefortext/v12/-W_WXI_oSymQ8Qj-Apx3HGN_Hu1RZiAL6QzqeqKx1td3dw_GiJBP86N53IY.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Wix Madefor Text" - }, - { - "src": "http://fonts.gstatic.com/s/wixmadefortext/v12/-W_oXI_oSymQ8Qj-Apx3HGN_Hu1RTCk5FtSDETgf0cKNNOeFgpRt9rN5.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Wix Madefor Text" - }, - { - "src": "http://fonts.gstatic.com/s/wixmadefortext/v12/-W_WXI_oSymQ8Qj-Apx3HGN_Hu1RZiAL6QzqeqKx1td3dz3GiJBP86N53IY.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Wix Madefor Text" - }, - { - "src": "http://fonts.gstatic.com/s/wixmadefortext/v12/-W_oXI_oSymQ8Qj-Apx3HGN_Hu1RTCk5FtSDETgf0cJhM-eFgpRt9rN5.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Wix Madefor Text" - }, - { - "src": "http://fonts.gstatic.com/s/wixmadefortext/v12/-W_WXI_oSymQ8Qj-Apx3HGN_Hu1RZiAL6QzqeqKx1td3d9HBiJBP86N53IY.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Wix Madefor Text" - }, - { - "src": "http://fonts.gstatic.com/s/wixmadefortext/v12/-W_oXI_oSymQ8Qj-Apx3HGN_Hu1RTCk5FtSDETgf0cJYM-eFgpRt9rN5.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Wix Madefor Text" - }, - { - "src": "http://fonts.gstatic.com/s/wixmadefortext/v12/-W_WXI_oSymQ8Qj-Apx3HGN_Hu1RZiAL6QzqeqKx1td3d-jBiJBP86N53IY.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Wix Madefor Text" - }, - { - "src": "http://fonts.gstatic.com/s/wixmadefortext/v12/-W_oXI_oSymQ8Qj-Apx3HGN_Hu1RTCk5FtSDETgf0cI_M-eFgpRt9rN5.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Wix Madefor Text" - }, - { - "src": "http://fonts.gstatic.com/s/wixmadefortext/v12/-W_WXI_oSymQ8Qj-Apx3HGN_Hu1RZiAL6QzqeqKx1td3d4_BiJBP86N53IY.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Wix Madefor Text" - } - ] - }, - { - "name": "Work Sans", - "fontFamily": "Work Sans, sans-serif", - "slug": "work-sans", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/worksans/v18/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K0nWNigDp6_cOyA.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Work Sans" - }, - { - "src": "http://fonts.gstatic.com/s/worksans/v18/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K8nXNigDp6_cOyA.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Work Sans" - }, - { - "src": "http://fonts.gstatic.com/s/worksans/v18/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32KxfXNigDp6_cOyA.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Work Sans" - }, - { - "src": "http://fonts.gstatic.com/s/worksans/v18/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K0nXNigDp6_cOyA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Work Sans" - }, - { - "src": "http://fonts.gstatic.com/s/worksans/v18/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K3vXNigDp6_cOyA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Work Sans" - }, - { - "src": "http://fonts.gstatic.com/s/worksans/v18/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K5fQNigDp6_cOyA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Work Sans" - }, - { - "src": "http://fonts.gstatic.com/s/worksans/v18/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K67QNigDp6_cOyA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Work Sans" - }, - { - "src": "http://fonts.gstatic.com/s/worksans/v18/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K8nQNigDp6_cOyA.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Work Sans" - }, - { - "src": "http://fonts.gstatic.com/s/worksans/v18/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K-DQNigDp6_cOyA.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Work Sans" - }, - { - "src": "http://fonts.gstatic.com/s/worksans/v18/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGU3moJo43ZKyDSQQ.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Work Sans" - }, - { - "src": "http://fonts.gstatic.com/s/worksans/v18/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGUXmsJo43ZKyDSQQ.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Work Sans" - }, - { - "src": "http://fonts.gstatic.com/s/worksans/v18/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGUgGsJo43ZKyDSQQ.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Work Sans" - }, - { - "src": "http://fonts.gstatic.com/s/worksans/v18/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGU3msJo43ZKyDSQQ.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Work Sans" - }, - { - "src": "http://fonts.gstatic.com/s/worksans/v18/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGU7GsJo43ZKyDSQQ.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Work Sans" - }, - { - "src": "http://fonts.gstatic.com/s/worksans/v18/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGUAGwJo43ZKyDSQQ.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Work Sans" - }, - { - "src": "http://fonts.gstatic.com/s/worksans/v18/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGUOWwJo43ZKyDSQQ.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Work Sans" - }, - { - "src": "http://fonts.gstatic.com/s/worksans/v18/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGUXmwJo43ZKyDSQQ.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Work Sans" - }, - { - "src": "http://fonts.gstatic.com/s/worksans/v18/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGUd2wJo43ZKyDSQQ.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Work Sans" - } - ] - }, - { - "name": "Xanh Mono", - "fontFamily": "Xanh Mono, monospace", - "slug": "xanh-mono", - "category": "monospace", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/xanhmono/v17/R70YjykVmvKCep-vWhSYmACQXzLhTg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Xanh Mono" - }, - { - "src": "http://fonts.gstatic.com/s/xanhmono/v17/R70ejykVmvKCep-vWhSomgqUfTfxTo24.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Xanh Mono" - } - ] - }, - { - "name": "Yaldevi", - "fontFamily": "Yaldevi, sans-serif", - "slug": "yaldevi", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/yaldevi/v12/cY9afj6VW0NMrDWtDNzCOwlPMq9SLpfxJzvobxLCBJkS.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Yaldevi" - }, - { - "src": "http://fonts.gstatic.com/s/yaldevi/v12/cY9afj6VW0NMrDWtDNzCOwlPMq9SLpcvJzvobxLCBJkS.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Yaldevi" - }, - { - "src": "http://fonts.gstatic.com/s/yaldevi/v12/cY9afj6VW0NMrDWtDNzCOwlPMq9SLpdxJzvobxLCBJkS.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Yaldevi" - }, - { - "src": "http://fonts.gstatic.com/s/yaldevi/v12/cY9afj6VW0NMrDWtDNzCOwlPMq9SLpdDJzvobxLCBJkS.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Yaldevi" - }, - { - "src": "http://fonts.gstatic.com/s/yaldevi/v12/cY9afj6VW0NMrDWtDNzCOwlPMq9SLpevIDvobxLCBJkS.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Yaldevi" - }, - { - "src": "http://fonts.gstatic.com/s/yaldevi/v12/cY9afj6VW0NMrDWtDNzCOwlPMq9SLpeWIDvobxLCBJkS.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Yaldevi" - } - ] - }, - { - "name": "Yanone Kaffeesatz", - "fontFamily": "Yanone Kaffeesatz, sans-serif", - "slug": "yanone-kaffeesatz", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/yanonekaffeesatz/v24/3y9I6aknfjLm_3lMKjiMgmUUYBs04aUXNxt9gW2LIftodtWpcGuLCnXkVA.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Yanone Kaffeesatz" - }, - { - "src": "http://fonts.gstatic.com/s/yanonekaffeesatz/v24/3y9I6aknfjLm_3lMKjiMgmUUYBs04aUXNxt9gW2LIftoqNWpcGuLCnXkVA.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Yanone Kaffeesatz" - }, - { - "src": "http://fonts.gstatic.com/s/yanonekaffeesatz/v24/3y9I6aknfjLm_3lMKjiMgmUUYBs04aUXNxt9gW2LIfto9tWpcGuLCnXkVA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Yanone Kaffeesatz" - }, - { - "src": "http://fonts.gstatic.com/s/yanonekaffeesatz/v24/3y9I6aknfjLm_3lMKjiMgmUUYBs04aUXNxt9gW2LIftoxNWpcGuLCnXkVA.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Yanone Kaffeesatz" - }, - { - "src": "http://fonts.gstatic.com/s/yanonekaffeesatz/v24/3y9I6aknfjLm_3lMKjiMgmUUYBs04aUXNxt9gW2LIftoKNKpcGuLCnXkVA.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Yanone Kaffeesatz" - }, - { - "src": "http://fonts.gstatic.com/s/yanonekaffeesatz/v24/3y9I6aknfjLm_3lMKjiMgmUUYBs04aUXNxt9gW2LIftoEdKpcGuLCnXkVA.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Yanone Kaffeesatz" - } - ] - }, - { - "name": "Yantramanav", - "fontFamily": "Yantramanav, sans-serif", - "slug": "yantramanav", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/yantramanav/v11/flU-Rqu5zY00QEpyWJYWN5-QXeNzDB41rZg.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Yantramanav" - }, - { - "src": "http://fonts.gstatic.com/s/yantramanav/v11/flUhRqu5zY00QEpyWJYWN59Yf8NZIhI8tIHh.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Yantramanav" - }, - { - "src": "http://fonts.gstatic.com/s/yantramanav/v11/flU8Rqu5zY00QEpyWJYWN6f0V-dRCQ41.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Yantramanav" - }, - { - "src": "http://fonts.gstatic.com/s/yantramanav/v11/flUhRqu5zY00QEpyWJYWN58AfsNZIhI8tIHh.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Yantramanav" - }, - { - "src": "http://fonts.gstatic.com/s/yantramanav/v11/flUhRqu5zY00QEpyWJYWN59IeMNZIhI8tIHh.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Yantramanav" - }, - { - "src": "http://fonts.gstatic.com/s/yantramanav/v11/flUhRqu5zY00QEpyWJYWN59wesNZIhI8tIHh.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Yantramanav" - } - ] - }, - { - "name": "Yatra One", - "fontFamily": "Yatra One, system-ui", - "slug": "yatra-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/yatraone/v14/C8ch4copsHzj8p7NaF0xw1OBbRDvXw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Yatra One" - } - ] - }, - { - "name": "Yellowtail", - "fontFamily": "Yellowtail, cursive", - "slug": "yellowtail", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/yellowtail/v18/OZpGg_pnoDtINPfRIlLotlzNwED-b4g.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Yellowtail" - } - ] - }, - { - "name": "Yeon Sung", - "fontFamily": "Yeon Sung, system-ui", - "slug": "yeon-sung", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/yeonsung/v20/QldMNTpbohAGtsJvUn6xSVNazqx2xg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Yeon Sung" - } - ] - }, - { - "name": "Yeseva One", - "fontFamily": "Yeseva One, system-ui", - "slug": "yeseva-one", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/yesevaone/v20/OpNJno4ck8vc-xYpwWWxpipfWhXD00c.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Yeseva One" - } - ] - }, - { - "name": "Yesteryear", - "fontFamily": "Yesteryear, cursive", - "slug": "yesteryear", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/yesteryear/v14/dg4g_p78rroaKl8kRKo1r7wHTwonmyw.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Yesteryear" - } - ] - }, - { - "name": "Yomogi", - "fontFamily": "Yomogi, cursive", - "slug": "yomogi", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/yomogi/v8/VuJwdNrS2ZL7rpoPWIz5NIh-YA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Yomogi" - } - ] - }, - { - "name": "Yrsa", - "fontFamily": "Yrsa, serif", - "slug": "yrsa", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/yrsa/v20/wlprgwnQFlxs_wD3CFSMYmFaaCjASNNV9rRPfrKu.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Yrsa" - }, - { - "src": "http://fonts.gstatic.com/s/yrsa/v20/wlprgwnQFlxs_wD3CFSMYmFaaCieSNNV9rRPfrKu.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Yrsa" - }, - { - "src": "http://fonts.gstatic.com/s/yrsa/v20/wlprgwnQFlxs_wD3CFSMYmFaaCisSNNV9rRPfrKu.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Yrsa" - }, - { - "src": "http://fonts.gstatic.com/s/yrsa/v20/wlprgwnQFlxs_wD3CFSMYmFaaChAT9NV9rRPfrKu.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Yrsa" - }, - { - "src": "http://fonts.gstatic.com/s/yrsa/v20/wlprgwnQFlxs_wD3CFSMYmFaaCh5T9NV9rRPfrKu.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Yrsa" - }, - { - "src": "http://fonts.gstatic.com/s/yrsa/v20/wlptgwnQFlxs1QnF94zlCfv0bz1WC2UW_LBte6KuGEo.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Yrsa" - }, - { - "src": "http://fonts.gstatic.com/s/yrsa/v20/wlptgwnQFlxs1QnF94zlCfv0bz1WCzsW_LBte6KuGEo.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Yrsa" - }, - { - "src": "http://fonts.gstatic.com/s/yrsa/v20/wlptgwnQFlxs1QnF94zlCfv0bz1WCwkW_LBte6KuGEo.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Yrsa" - }, - { - "src": "http://fonts.gstatic.com/s/yrsa/v20/wlptgwnQFlxs1QnF94zlCfv0bz1WC-UR_LBte6KuGEo.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Yrsa" - }, - { - "src": "http://fonts.gstatic.com/s/yrsa/v20/wlptgwnQFlxs1QnF94zlCfv0bz1WC9wR_LBte6KuGEo.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Yrsa" - } - ] - }, - { - "name": "Ysabeau", - "fontFamily": "Ysabeau, sans-serif", - "slug": "ysabeau", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7OWCTYwI8Gcw6Oi.ttf", - "fontWeight": "100", - "fontStyle": "normal", - "fontFamily": "Ysabeau" - }, - { - "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7MWCDYwI8Gcw6Oi.ttf", - "fontWeight": "200", - "fontStyle": "normal", - "fontFamily": "Ysabeau" - }, - { - "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7PICDYwI8Gcw6Oi.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Ysabeau" - }, - { - "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7OWCDYwI8Gcw6Oi.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Ysabeau" - }, - { - "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7OkCDYwI8Gcw6Oi.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Ysabeau" - }, - { - "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7NIDzYwI8Gcw6Oi.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Ysabeau" - }, - { - "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7NxDzYwI8Gcw6Oi.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Ysabeau" - }, - { - "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7MWDzYwI8Gcw6Oi.ttf", - "fontWeight": "800", - "fontStyle": "normal", - "fontFamily": "Ysabeau" - }, - { - "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7M_DzYwI8Gcw6Oi.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Ysabeau" - }, - { - "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeS95yKcW-xrOiIUw.ttf", - "fontWeight": "100", - "fontStyle": "italic", - "fontFamily": "Ysabeau" - }, - { - "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeS15zKcW-xrOiIUw.ttf", - "fontWeight": "200", - "fontStyle": "italic", - "fontFamily": "Ysabeau" - }, - { - "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeS4BzKcW-xrOiIUw.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Ysabeau" - }, - { - "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeS95zKcW-xrOiIUw.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Ysabeau" - }, - { - "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeS-xzKcW-xrOiIUw.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Ysabeau" - }, - { - "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeSwB0KcW-xrOiIUw.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Ysabeau" - }, - { - "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeSzl0KcW-xrOiIUw.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Ysabeau" - }, - { - "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeS150KcW-xrOiIUw.ttf", - "fontWeight": "800", - "fontStyle": "italic", - "fontFamily": "Ysabeau" - }, - { - "src": "http://fonts.gstatic.com/s/ysabeau/v1/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeS3d0KcW-xrOiIUw.ttf", - "fontWeight": "900", - "fontStyle": "italic", - "fontFamily": "Ysabeau" - } - ] - }, - { - "name": "Yuji Boku", - "fontFamily": "Yuji Boku, serif", - "slug": "yuji-boku", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/yujiboku/v5/P5sAzZybeNzXsA9xj1Fkjb2r2dgvJA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Yuji Boku" - } - ] - }, - { - "name": "Yuji Hentaigana Akari", - "fontFamily": "Yuji Hentaigana Akari, cursive", - "slug": "yuji-hentaigana-akari", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/yujihentaiganaakari/v11/cY9bfiyVT0VB6QuhWKOrpr6z58lnb_zYFnLIRTzODYALaA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Yuji Hentaigana Akari" - } - ] - }, - { - "name": "Yuji Hentaigana Akebono", - "fontFamily": "Yuji Hentaigana Akebono, cursive", - "slug": "yuji-hentaigana-akebono", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/yujihentaiganaakebono/v12/EJRGQhkhRNwM-RtitGUwh930GU_f5KAlkuL0wQy9NKXRzrrF.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Yuji Hentaigana Akebono" - } - ] - }, - { - "name": "Yuji Mai", - "fontFamily": "Yuji Mai, serif", - "slug": "yuji-mai", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/yujimai/v5/ZgNQjPxdJ7DEHrS0gC38hmHmNpCO.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Yuji Mai" - } - ] - }, - { - "name": "Yuji Syuku", - "fontFamily": "Yuji Syuku, serif", - "slug": "yuji-syuku", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/yujisyuku/v5/BngNUXdTV3vO6Lw5ApOPqPfgwqiA-Rk.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Yuji Syuku" - } - ] - }, - { - "name": "Yusei Magic", - "fontFamily": "Yusei Magic, sans-serif", - "slug": "yusei-magic", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/yuseimagic/v12/yYLt0hbAyuCmoo5wlhPkpjHR-tdfcIT_.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Yusei Magic" - } - ] - }, - { - "name": "ZCOOL KuaiLe", - "fontFamily": "ZCOOL KuaiLe, sans-serif", - "slug": "zcool-kuaile", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/zcoolkuaile/v19/tssqApdaRQokwFjFJjvM6h2WpozzoXhC2g.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "ZCOOL KuaiLe" - } - ] - }, - { - "name": "ZCOOL QingKe HuangYou", - "fontFamily": "ZCOOL QingKe HuangYou, sans-serif", - "slug": "zcool-qingke-huangyou", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/zcoolqingkehuangyou/v15/2Eb5L_R5IXJEWhD3AOhSvFC554MOOahI4mRIi_28c8bHWA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "ZCOOL QingKe HuangYou" - } - ] - }, - { - "name": "ZCOOL XiaoWei", - "fontFamily": "ZCOOL XiaoWei, sans-serif", - "slug": "zcool-xiaowei", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/zcoolxiaowei/v14/i7dMIFFrTRywPpUVX9_RJyM1YFKQHwyVd3U.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "ZCOOL XiaoWei" - } - ] - }, - { - "name": "Zen Antique", - "fontFamily": "Zen Antique, serif", - "slug": "zen-antique", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/zenantique/v12/AYCPpXPnd91Ma_Zf-Ri2JXJq7PKP5Z_G.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Zen Antique" - } - ] - }, - { - "name": "Zen Antique Soft", - "fontFamily": "Zen Antique Soft, serif", - "slug": "zen-antique-soft", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/zenantiquesoft/v12/DtV4JwqzSL1q_KwnEWMc_3xfgW6ihwBmkui5HNg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Zen Antique Soft" - } - ] - }, - { - "name": "Zen Dots", - "fontFamily": "Zen Dots, system-ui", - "slug": "zen-dots", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/zendots/v10/XRXX3ICfm00IGoesQeaETM_FcCIG.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Zen Dots" - } - ] - }, - { - "name": "Zen Kaku Gothic Antique", - "fontFamily": "Zen Kaku Gothic Antique, sans-serif", - "slug": "zen-kaku-gothic-antique", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/zenkakugothicantique/v13/6qLVKYkHvh-nlUpKPAdoVFBtfxDzIn1eCzpB22cM9TarWJtyZyGU.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Zen Kaku Gothic Antique" - }, - { - "src": "http://fonts.gstatic.com/s/zenkakugothicantique/v13/6qLQKYkHvh-nlUpKPAdoVFBtfxDzIn1eCzpB21-g3RKjc4d7.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Zen Kaku Gothic Antique" - }, - { - "src": "http://fonts.gstatic.com/s/zenkakugothicantique/v13/6qLVKYkHvh-nlUpKPAdoVFBtfxDzIn1eCzpB22dU9DarWJtyZyGU.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Zen Kaku Gothic Antique" - }, - { - "src": "http://fonts.gstatic.com/s/zenkakugothicantique/v13/6qLVKYkHvh-nlUpKPAdoVFBtfxDzIn1eCzpB22cc8jarWJtyZyGU.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Zen Kaku Gothic Antique" - }, - { - "src": "http://fonts.gstatic.com/s/zenkakugothicantique/v13/6qLVKYkHvh-nlUpKPAdoVFBtfxDzIn1eCzpB22ck8DarWJtyZyGU.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Zen Kaku Gothic Antique" - } - ] - }, - { - "name": "Zen Kaku Gothic New", - "fontFamily": "Zen Kaku Gothic New, sans-serif", - "slug": "zen-kaku-gothic-new", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/zenkakugothicnew/v13/gNMVW2drQpDw0GjzrVNFf_valaDBcznOqpdKaWTSTGlMyd8.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Zen Kaku Gothic New" - }, - { - "src": "http://fonts.gstatic.com/s/zenkakugothicnew/v13/gNMYW2drQpDw0GjzrVNFf_valaDBcznOkjtiTWz5UGA.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Zen Kaku Gothic New" - }, - { - "src": "http://fonts.gstatic.com/s/zenkakugothicnew/v13/gNMVW2drQpDw0GjzrVNFf_valaDBcznOqs9LaWTSTGlMyd8.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Zen Kaku Gothic New" - }, - { - "src": "http://fonts.gstatic.com/s/zenkakugothicnew/v13/gNMVW2drQpDw0GjzrVNFf_valaDBcznOqodNaWTSTGlMyd8.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Zen Kaku Gothic New" - }, - { - "src": "http://fonts.gstatic.com/s/zenkakugothicnew/v13/gNMVW2drQpDw0GjzrVNFf_valaDBcznOqr9PaWTSTGlMyd8.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Zen Kaku Gothic New" - } - ] - }, - { - "name": "Zen Kurenaido", - "fontFamily": "Zen Kurenaido, sans-serif", - "slug": "zen-kurenaido", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/zenkurenaido/v13/3XFsEr0515BK2u6UUptu_gWJZfz22PRLd0U.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Zen Kurenaido" - } - ] - }, - { - "name": "Zen Loop", - "fontFamily": "Zen Loop, system-ui", - "slug": "zen-loop", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/zenloop/v7/h0GrssK16UsnJwHsEK9zqwzX5vOG.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Zen Loop" - }, - { - "src": "http://fonts.gstatic.com/s/zenloop/v7/h0GtssK16UsnJwHsEJ9xoQj14-OGJ0w.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Zen Loop" - } - ] - }, - { - "name": "Zen Maru Gothic", - "fontFamily": "Zen Maru Gothic, sans-serif", - "slug": "zen-maru-gothic", - "category": "sans-serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/zenmarugothic/v13/o-0XIpIxzW5b-RxT-6A8jWAtCp-cQWpCPJqa_ajlvw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Zen Maru Gothic" - }, - { - "src": "http://fonts.gstatic.com/s/zenmarugothic/v13/o-0SIpIxzW5b-RxT-6A8jWAtCp-k7UJmNLGG9A.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Zen Maru Gothic" - }, - { - "src": "http://fonts.gstatic.com/s/zenmarugothic/v13/o-0XIpIxzW5b-RxT-6A8jWAtCp-cGWtCPJqa_ajlvw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Zen Maru Gothic" - }, - { - "src": "http://fonts.gstatic.com/s/zenmarugothic/v13/o-0XIpIxzW5b-RxT-6A8jWAtCp-cUW1CPJqa_ajlvw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Zen Maru Gothic" - }, - { - "src": "http://fonts.gstatic.com/s/zenmarugothic/v13/o-0XIpIxzW5b-RxT-6A8jWAtCp-caW9CPJqa_ajlvw.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Zen Maru Gothic" - } - ] - }, - { - "name": "Zen Old Mincho", - "fontFamily": "Zen Old Mincho, serif", - "slug": "zen-old-mincho", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/zenoldmincho/v11/tss0ApVaYytLwxTqcxfMyBveyYb3g31S2s8p.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Zen Old Mincho" - }, - { - "src": "http://fonts.gstatic.com/s/zenoldmincho/v11/tss3ApVaYytLwxTqcxfMyBveyb4Dqlla8dMgPgBu.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Zen Old Mincho" - }, - { - "src": "http://fonts.gstatic.com/s/zenoldmincho/v11/tss3ApVaYytLwxTqcxfMyBveyb4vrVla8dMgPgBu.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Zen Old Mincho" - }, - { - "src": "http://fonts.gstatic.com/s/zenoldmincho/v11/tss3ApVaYytLwxTqcxfMyBveyb5LrFla8dMgPgBu.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Zen Old Mincho" - }, - { - "src": "http://fonts.gstatic.com/s/zenoldmincho/v11/tss3ApVaYytLwxTqcxfMyBveyb5zrlla8dMgPgBu.ttf", - "fontWeight": "900", - "fontStyle": "normal", - "fontFamily": "Zen Old Mincho" - } - ] - }, - { - "name": "Zen Tokyo Zoo", - "fontFamily": "Zen Tokyo Zoo, system-ui", - "slug": "zen-tokyo-zoo", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/zentokyozoo/v7/NGSyv5ffC0J_BK6aFNtr6sRv8a1uRWe9amg.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Zen Tokyo Zoo" - } - ] - }, - { - "name": "Zeyada", - "fontFamily": "Zeyada, cursive", - "slug": "zeyada", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/zeyada/v15/11hAGpPTxVPUbgZDNGatWKaZ3g.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Zeyada" - } - ] - }, - { - "name": "Zhi Mang Xing", - "fontFamily": "Zhi Mang Xing, cursive", - "slug": "zhi-mang-xing", - "category": "handwriting", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/zhimangxing/v17/f0Xw0ey79sErYFtWQ9a2rq-g0actfektIJ0.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Zhi Mang Xing" - } - ] - }, - { - "name": "Zilla Slab", - "fontFamily": "Zilla Slab, serif", - "slug": "zilla-slab", - "category": "serif", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/zillaslab/v11/dFa5ZfeM_74wlPZtksIFYpEY2HSjWlhzbaw.ttf", - "fontWeight": "300", - "fontStyle": "normal", - "fontFamily": "Zilla Slab" - }, - { - "src": "http://fonts.gstatic.com/s/zillaslab/v11/dFanZfeM_74wlPZtksIFaj8CVHapXnp2fazkfg.ttf", - "fontWeight": "300", - "fontStyle": "italic", - "fontFamily": "Zilla Slab" - }, - { - "src": "http://fonts.gstatic.com/s/zillaslab/v11/dFa6ZfeM_74wlPZtksIFWj0w_HyIRlE.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Zilla Slab" - }, - { - "src": "http://fonts.gstatic.com/s/zillaslab/v11/dFa4ZfeM_74wlPZtksIFaj86-F6NVlFqdA.ttf", - "fontWeight": "400", - "fontStyle": "italic", - "fontFamily": "Zilla Slab" - }, - { - "src": "http://fonts.gstatic.com/s/zillaslab/v11/dFa5ZfeM_74wlPZtksIFYskZ2HSjWlhzbaw.ttf", - "fontWeight": "500", - "fontStyle": "normal", - "fontFamily": "Zilla Slab" - }, - { - "src": "http://fonts.gstatic.com/s/zillaslab/v11/dFanZfeM_74wlPZtksIFaj8CDHepXnp2fazkfg.ttf", - "fontWeight": "500", - "fontStyle": "italic", - "fontFamily": "Zilla Slab" - }, - { - "src": "http://fonts.gstatic.com/s/zillaslab/v11/dFa5ZfeM_74wlPZtksIFYuUe2HSjWlhzbaw.ttf", - "fontWeight": "600", - "fontStyle": "normal", - "fontFamily": "Zilla Slab" - }, - { - "src": "http://fonts.gstatic.com/s/zillaslab/v11/dFanZfeM_74wlPZtksIFaj8CIHCpXnp2fazkfg.ttf", - "fontWeight": "600", - "fontStyle": "italic", - "fontFamily": "Zilla Slab" - }, - { - "src": "http://fonts.gstatic.com/s/zillaslab/v11/dFa5ZfeM_74wlPZtksIFYoEf2HSjWlhzbaw.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Zilla Slab" - }, - { - "src": "http://fonts.gstatic.com/s/zillaslab/v11/dFanZfeM_74wlPZtksIFaj8CRHGpXnp2fazkfg.ttf", - "fontWeight": "700", - "fontStyle": "italic", - "fontFamily": "Zilla Slab" - } - ] - }, - { - "name": "Zilla Slab Highlight", - "fontFamily": "Zilla Slab Highlight, system-ui", - "slug": "zilla-slab-highlight", - "category": "display", - "fontFace": [ - { - "src": "http://fonts.gstatic.com/s/zillaslabhighlight/v17/gNMbW2BrTpK8-inLtBJgMMfbm6uNVDvRxhtIY2DwSXlM.ttf", - "fontWeight": "400", - "fontStyle": "normal", - "fontFamily": "Zilla Slab Highlight" - }, - { - "src": "http://fonts.gstatic.com/s/zillaslabhighlight/v17/gNMUW2BrTpK8-inLtBJgMMfbm6uNVDvRxiP0TET4YmVF0Mb6.ttf", - "fontWeight": "700", - "fontStyle": "normal", - "fontFamily": "Zilla Slab Highlight" - } - ] - } - ], - "categories": [ - "sans-serif", - "serif", - "display", - "handwriting", - "monospace" - ] -} \ No newline at end of file From bab1793f89c02f88663e3dfa71fea0e38b72fc7d Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Wed, 23 Aug 2023 12:48:01 -0300 Subject: [PATCH 015/108] Removing Google fonts specific code --- .../font-library-modal/constants.js | 14 - .../font-library-modal/context.js | 16 - .../font-library-modal/google-font-details.js | 34 --- .../font-library-modal/google-font-variant.js | 23 -- .../font-library-modal/google-fonts.js | 275 ------------------ .../global-styles/font-library-modal/index.js | 3 - .../font-library-modal/local-fonts.js | 2 +- .../font-library-modal/resolvers.js | 15 +- 8 files changed, 3 insertions(+), 379 deletions(-) delete mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/google-font-details.js delete mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/google-font-variant.js delete mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/google-fonts.js diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/constants.js b/packages/edit-site/src/components/global-styles/font-library-modal/constants.js index 9194da3e085ac..b5ead3455aaab 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/constants.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/constants.js @@ -12,11 +12,6 @@ export const MODAL_TABS = [ title: __( 'Library' ), className: 'installed-fonts', }, - { - name: 'google-fonts', - title: __( 'Google Fonts' ), - className: 'google-fonts', - }, { name: 'local-fonts', title: __( 'Upload' ), @@ -28,15 +23,6 @@ export const DEMO_TEXT = __( 'Incredible as it may seem, I believe that the Aleph of Garay Street was a false Aleph' ); -// Google Fonts API categories mappping to fallback system fonts -export const GOOGLE_FONT_FALLBACKS = { - display: 'system-ui', - 'sans-serif': 'sans-serif', - serif: 'serif', - handwriting: 'cursive', - monospace: 'monospace', -}; - export const DEFAULT_DEMO_CONFIG = { text: '', fontSize: 24, diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/context.js b/packages/edit-site/src/components/global-styles/font-library-modal/context.js index f3d06d07dbad2..7c0e560e94ca7 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/context.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/context.js @@ -18,7 +18,6 @@ import { __ } from '@wordpress/i18n'; * Internal dependencies */ import { - fetchGoogleFonts, fetchInstallFonts, fetchUninstallFonts, } from './resolvers'; @@ -116,11 +115,6 @@ function FontLibraryProvider( { children } ) { setModalTabOepn( tabName || null ); }; - // Google Fonts - const [ googleFonts, setGoogleFonts ] = useState( null ); - const [ googleFontsCategories, setGoogleFontsCategories ] = - useState( null ); - // Demo const [ loadedFontUrls ] = useState( new Set() ); const [ demoConfig, setDemoConfig ] = useState( DEFAULT_DEMO_CONFIG ); @@ -153,13 +147,6 @@ function FontLibraryProvider( { children } ) { const themeUrl = site?.url + '/wp-content/themes/' + currentTheme?.stylesheet; - useEffect( () => { - fetchGoogleFonts().then( ( { fontFamilies, categories } ) => { - setGoogleFonts( fontFamilies ); - setGoogleFontsCategories( [ 'all', ...categories ] ); - } ); - }, [] ); - const getAvailableFontsOutline = ( fontFamilies ) => { const outline = fontFamilies.reduce( ( acc, font ) => { const availableFontFaces = Array.isArray( font?.fontFace ) @@ -298,7 +285,6 @@ function FontLibraryProvider( { children } ) { ]; } } - console.log( 'source', newCustomFonts ); setFontFamilies( { ...fontFamilies, [ source ]: newCustomFonts, @@ -357,8 +343,6 @@ function FontLibraryProvider( { children } ) { baseCustomFonts, isFontActivated, getFontFacesActivated, - googleFonts, - googleFontsCategories, loadFontFaceAsset, installFonts, uninstallFonts, diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/google-font-details.js b/packages/edit-site/src/components/global-styles/font-library-modal/google-font-details.js deleted file mode 100644 index e056391ddf921..0000000000000 --- a/packages/edit-site/src/components/global-styles/font-library-modal/google-font-details.js +++ /dev/null @@ -1,34 +0,0 @@ -/** - * WordPress dependencies - */ -import { __ } from '@wordpress/i18n'; -import { - __experimentalVStack as VStack, - __experimentalSpacer as Spacer, -} from '@wordpress/components'; - -/** - * Internal dependencies - */ -import GoogleFontVariant from './google-font-variant'; - -function GoolgeFontDetails( { font, toggleAddFont, isFontAdded } ) { - return ( - <> - - - { font.fontFace.map( ( face, i ) => ( - - ) ) } - - - ); -} - -export default GoolgeFontDetails; diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/google-font-variant.js b/packages/edit-site/src/components/global-styles/font-library-modal/google-font-variant.js deleted file mode 100644 index 07fc9725bf595..0000000000000 --- a/packages/edit-site/src/components/global-styles/font-library-modal/google-font-variant.js +++ /dev/null @@ -1,23 +0,0 @@ -/** - * WordPress dependencies - */ -import { __ } from '@wordpress/i18n'; - -/** - * Internal dependencies - */ -import FontVariant from './font-variant'; - -function GoogleFontVariant( { font, fontFace, toggleAddFont, isFontAdded } ) { - const isAdded = isFontAdded( font, fontFace ); - return ( - toggleAddFont( font, fontFace ) } - onChange={ () => {} } - /> - ); -} - -export default GoogleFontVariant; diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/google-fonts.js b/packages/edit-site/src/components/global-styles/font-library-modal/google-fonts.js deleted file mode 100644 index 17cea17683c0c..0000000000000 --- a/packages/edit-site/src/components/global-styles/font-library-modal/google-fonts.js +++ /dev/null @@ -1,275 +0,0 @@ -/** - * WordPress dependencies - */ -import { __ } from '@wordpress/i18n'; -import { useMemo, useState, useContext, useEffect } from '@wordpress/element'; -import { - Spinner, - __experimentalText as Text, - __experimentalHStack as HStack, - __experimentalSpacer as Spacer, - __experimentalInputControl as InputControl, - Button, - SelectControl, -} from '@wordpress/components'; -import { debounce } from '@wordpress/compose'; - -/** - * Internal dependencies - */ -import TabLayout from './tab-layout'; -import FontsGrid from './fonts-grid'; -import { FontLibraryContext } from './context'; -import GoolgeFontDetails from './google-font-details'; -import PreviewControls from './preview-controls'; -import FontCard from './font-card'; - -const filterFonts = ( fonts, filters ) => { - const { category, search } = filters; - let filteredFonts = fonts || []; - - if ( category && category !== 'all' ) { - filteredFonts = filteredFonts.filter( - ( font ) => font.category === category - ); - } - - if ( search ) { - filteredFonts = filteredFonts.filter( ( font ) => - font.name.toLowerCase().includes( search.toLowerCase() ) - ); - } - - return filteredFonts; -}; - -function GoogleFonts() { - const { - googleFonts, - googleFontsCategories, - installFonts, - getAvailableFontsOutline, - } = useContext( FontLibraryContext ); - const [ fontSelected, setFontSelected ] = useState( null ); - const [ filters, setFilters ] = useState( {} ); - - const [ newFonts, setNewFonts ] = useState( [] ); - const [ isSaving, setIsSaving ] = useState( false ); - - useEffect( () => { - if ( googleFontsCategories && googleFontsCategories.length > 0 ) { - setFilters( { category: googleFontsCategories[ 0 ] } ); - } - }, [ googleFontsCategories ] ); - - const newFontsOutline = useMemo( - () => getAvailableFontsOutline( newFonts ), - [ newFonts ] - ); - const isFontAdded = ( font, fontFace ) => { - if ( ! fontFace ) { - return !! newFontsOutline[ font.slug ]; - } - return !! ( newFontsOutline[ font.slug ] || [] ).includes( - fontFace.fontStyle + fontFace.fontWeight - ); - }; - - const handleSelectFont = ( font ) => { - setFontSelected( font ); - }; - - const handleUnselectFont = () => { - setFontSelected( null ); - }; - - const handleUpdateSearchInput = ( value ) => { - setFilters( { ...filters, search: value } ); - }; - const debouncedUpdateSearchInput = debounce( handleUpdateSearchInput, 300 ); - - const fonts = useMemo( - () => filterFonts( googleFonts, filters ), - [ googleFonts, filters ] - ); - - const tabDescription = fontSelected - ? __( - 'Choose font variants. Keep in mind that too many variants could make your site slower.' - ) - : __( - 'Add from Google Fonts. Fonts are copied to, and served, from your own server.' - ); - - const handleCategoryFilter = ( category ) => { - setFilters( { ...filters, category } ); - }; - - const handleSaveChanges = async () => { - setIsSaving( true ); - await installFonts( newFonts ); - setIsSaving( false ); - setFontSelected( null ); - setNewFonts( [] ); - }; - - const toggleAddFont = ( font, fontFace ) => { - const existingFont = newFonts.find( ( f ) => f.slug === font.slug ); - if ( ! fontFace ) { - if ( existingFont ) { - const fontsToAdd = newFonts.filter( - ( f ) => f.slug !== font.slug - ); - setNewFonts( fontsToAdd ); - return; - } - const fontsToAdd = [ ...newFonts, font ]; - setNewFonts( fontsToAdd ); - return; - } - - if ( existingFont ) { - const existingFontFace = existingFont.fontFace.find( - ( f ) => - f.fontStyle === fontFace.fontStyle && - f.fontWeight === fontFace.fontWeight - ); - if ( existingFontFace ) { - const fontsToAdd = newFonts - .map( ( f ) => { - if ( f.slug === font.slug ) { - const fontFaceToAdd = f.fontFace.filter( - ( face ) => - face.fontStyle !== fontFace.fontStyle || - face.fontWeight !== fontFace.fontWeight - ); - return { - ...f, - fontFace: fontFaceToAdd, - }; - } - return f; - } ) - .filter( ( f ) => f.fontFace.length > 0 ); - setNewFonts( fontsToAdd ); - return; - } - const fontsToAdd = newFonts.map( ( f ) => { - if ( f.slug === font.slug ) { - return { - ...f, - fontFace: [ ...f.fontFace, fontFace ], - }; - } - return f; - } ); - setNewFonts( fontsToAdd ); - return; - } - - const fontsToAdd = [ ...newFonts, { ...font, fontFace: [ fontFace ] } ]; - setNewFonts( fontsToAdd ); - }; - - const capitalize = ( str ) => { - return str.charAt( 0 ).toUpperCase() + str.slice( 1 ); - }; - - const Footer = () => { - return ( - - - - ); - }; - - return ( - } - > - { fonts === null && ( - - - { __( 'Loading fonts…' ) } - - ) } - - { fonts && fonts.length >= 0 && ! fontSelected && ( - <> - - - - { googleFontsCategories && - googleFontsCategories.map( ( category ) => ( - - ) ) } - - - { /* */ } - - - - - ) } - - { fonts && fonts.length === 0 && ( - - - { __( 'No fonts found try another search term' ) } - - - ) } - - { fonts && fonts.length > 0 && ( - <> - { ! fontSelected && ( - - { fonts.map( ( font ) => ( - handleSelectFont( font ) } - /> - ) ) } - - ) } - - { fontSelected && ( - <> - { /* */ } - - - - ) } - - ) } - - ); -} - -export default GoogleFonts; diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/index.js b/packages/edit-site/src/components/global-styles/font-library-modal/index.js index 67629c38d4ac9..4e8bb0df04b32 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/index.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/index.js @@ -8,7 +8,6 @@ import { Modal, TabPanel } from '@wordpress/components'; * Internal dependencies */ import InstalledFonts from './installed-fonts'; -import GoogleFonts from './google-fonts'; import LocalFonts from './local-fonts'; import { MODAL_TABS } from './constants'; @@ -30,8 +29,6 @@ function FontLibraryModal( { > { ( tab ) => { switch ( tab.name ) { - case 'google-fonts': - return ; case 'local-fonts': return ; case 'installed-fonts': diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js b/packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js index 10f1e063b07d0..ce18145176f51 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js @@ -23,7 +23,7 @@ import PreviewContols from './preview-controls'; import { FontLibraryContext } from './context'; function LocalFonts() { - const { installFonts } = useContext( FontLibraryContext ); + const { installFonts, refreshLibrary } = useContext( FontLibraryContext ); const [ selectedFiles, setSelectedFiles ] = useState( [] ); const [ fontFacesLoaded, setFontFacesLoaded ] = useState( [] ); const [ isInstalling, setIsInstalling ] = useState( false ); diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/resolvers.js b/packages/edit-site/src/components/global-styles/font-library-modal/resolvers.js index cdf316fff0bdd..978fb1170481f 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/resolvers.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/resolvers.js @@ -7,26 +7,15 @@ */ import apiFetch from '@wordpress/api-fetch'; -export async function fetchGoogleFonts() { - const config = { - path: '/wp/v2/fonts/google_fonts', - }; - const { fontFamilies, categories } = await apiFetch( config ); - return { - fontFamilies, - categories, - }; -} - export async function fetchInstallFonts( data ) { // If data is not FormData object, we need to pass it as the body of the request. // We are doing this because to upload local fonts we need to use FormData - // To homogenize the request, we are using FormData for both cases (google fonts and local fonts) + // To homogenize the request, we are using FormData for both cases (collection fonts and local fonts) let body = data; // If the data is not a FormData object, we need to create it - // Data for google fonts is an array of font families + // Data for collection fonts is an array of font families if ( ! ( data instanceof FormData ) ) { const formData = new FormData(); formData.append( 'fontFamilies', JSON.stringify( data ) ); From c068c4b0b1b41236ce812e68808f9142924fa75c Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Wed, 23 Aug 2023 12:55:49 -0300 Subject: [PATCH 016/108] refresh library after local fonts upload --- .../global-styles/font-library-modal/local-fonts.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js b/packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js index ce18145176f51..63fbcb8ca8d70 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js @@ -105,11 +105,11 @@ function LocalFonts() { // Adds the fontFamilies to the formData formData.append( 'fontFamilies', JSON.stringify( fontFamilies ) ); - // Sends the formData to the server - const save = await installFonts( formData ); + await installFonts( formData ); setIsInstalling( ( pevIsInstalling ) => ! pevIsInstalling ); setSelectedFiles( [] ); setFontFacesLoaded( [] ); + refreshLibrary(); }; const Footer = () => { From 0cf4510b8a55fb10f656f9550f6ca687a86668df Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Wed, 23 Aug 2023 13:16:21 -0300 Subject: [PATCH 017/108] remove unwanted console.log --- packages/edit-site/lib/lib-font.browser.js | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/edit-site/lib/lib-font.browser.js b/packages/edit-site/lib/lib-font.browser.js index 36b8a081091f4..757b689a06b59 100644 --- a/packages/edit-site/lib/lib-font.browser.js +++ b/packages/edit-site/lib/lib-font.browser.js @@ -299,7 +299,6 @@ class TableRecord { } } const gzipDecode = GzipDecode.inflate || undefined; -console.log( "gzipDecode", gzipDecode ); let nativeGzipDecode = undefined; // if ( ! gzipDecode ) { // import( 'zlib' ).then( ( zlib ) => { From 626c3217fc88e651f535299eefd7228831a95eab Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Wed, 23 Aug 2023 13:16:55 -0300 Subject: [PATCH 018/108] css fix --- .../components/global-styles/font-library-modal/style.scss | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/style.scss b/packages/edit-site/src/components/global-styles/font-library-modal/style.scss index 7fa947b7f1ebd..9a0e6ccbec804 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/style.scss +++ b/packages/edit-site/src/components/global-styles/font-library-modal/style.scss @@ -2,6 +2,10 @@ .components-modal__header { border-bottom: none; } + + .components-modal__content { + padding-top: 0; + } } .font-library-modal__tab-layout{ From 4bfae33706d5f1d0afd45e0d700316b8e118c0b3 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Wed, 23 Aug 2023 14:41:48 -0300 Subject: [PATCH 019/108] removing file key from fontface data sent to the server --- .../global-styles/font-library-modal/local-fonts.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js b/packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js index 63fbcb8ca8d70..0e38776a13c95 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js @@ -81,7 +81,7 @@ function LocalFonts() { const formData = new FormData(); // Creates the fontFamilies array that will be sent to the server - const fontFamiliesObject = fontFaces.reduce( ( acc, item, i ) => { + const fontFamiliesObject = fontFaces.reduce( ( acc, { file, ...item }, i ) => { if ( ! acc[ item.fontFamily ] ) { acc[ item.fontFamily ] = { name: item.fontFamily, @@ -93,7 +93,7 @@ function LocalFonts() { }; } // Add the files to the formData - formData.append( `files${ i }`, item.file, item.file.name ); + formData.append( `files${ i }`, file, file.name ); // Add the posted file id to the fontFace object // This is needed to associate the fontFace with the file on the server const face = { ...item, uploadedFile: `files${ i }` }; From 2290c980d4c4e01928fd6945ccdfb9097390d352 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Wed, 23 Aug 2023 14:52:00 -0300 Subject: [PATCH 020/108] open local fonts tab when click the + button --- .../edit-site/src/components/global-styles/font-families.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/edit-site/src/components/global-styles/font-families.js b/packages/edit-site/src/components/global-styles/font-families.js index 030fbae10fc71..574b35ebb9b62 100644 --- a/packages/edit-site/src/components/global-styles/font-families.js +++ b/packages/edit-site/src/components/global-styles/font-families.js @@ -41,7 +41,7 @@ function FontFamilies() { - ) } + ); } From a86f1b61dbe5c66019390e83685e2e2e8c021a1c Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Mon, 28 Aug 2023 17:00:41 -0300 Subject: [PATCH 030/108] removing preview controls link --- .../components/global-styles/font-library-modal/local-fonts.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js b/packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js index d725d0f0f2bcd..96e00e5d1c580 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js @@ -19,7 +19,6 @@ import { useState, useContext } from '@wordpress/element'; import TabLayout from './tab-layout'; import { ALLOWED_FILE_EXTENSIONS } from './constants'; import LocalFontVariant from './local-font-variant'; -import PreviewContols from './preview-controls'; import { FontLibraryContext } from './context'; function LocalFonts() { @@ -161,7 +160,6 @@ function LocalFonts() { { selectedFiles.length > 0 && ( <> - { /* */ } From 5814e0398f06ef841afb75c62c72b8a248e3a387 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Mon, 28 Aug 2023 17:04:56 -0300 Subject: [PATCH 031/108] removing unused imports --- .../src/components/global-styles/font-library-modal/context.js | 1 - .../components/global-styles/font-library-modal/font-variant.js | 1 - .../global-styles/font-library-modal/library-font-details.js | 1 - 3 files changed, 3 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/context.js b/packages/edit-site/src/components/global-styles/font-library-modal/context.js index 20d7f63451a9c..e99ef984fd75a 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/context.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/context.js @@ -5,7 +5,6 @@ import { createContext, useState, useEffect, - useMemo, } from '@wordpress/element'; import { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor'; import { useSelect } from '@wordpress/data'; diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/font-variant.js b/packages/edit-site/src/components/global-styles/font-library-modal/font-variant.js index b539e4381d3f1..83b995177bf1a 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/font-variant.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/font-variant.js @@ -4,7 +4,6 @@ import { __ } from '@wordpress/i18n'; import { __experimentalText as Text, - __experimentalHeading as Heading, __experimentalVStack as VStack, __experimentalHStack as HStack, CheckboxControl, diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/library-font-details.js b/packages/edit-site/src/components/global-styles/font-library-modal/library-font-details.js index 875eac9c4e6e1..5e34b3eca42e0 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/library-font-details.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/library-font-details.js @@ -7,7 +7,6 @@ import { Button, __experimentalVStack as VStack, __experimentalSpacer as Spacer, - __experimentalText as Text, __experimentalConfirmDialog as ConfirmDialog, } from '@wordpress/components'; From a28d2dbc8760b088d73061c29b27f268aa6d611f Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Tue, 29 Aug 2023 12:19:07 -0300 Subject: [PATCH 032/108] lint css --- .../font-library-modal/style.scss | 154 +++++++++--------- 1 file changed, 77 insertions(+), 77 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/style.scss b/packages/edit-site/src/components/global-styles/font-library-modal/style.scss index f04625a9ca8a6..10ea0b56325ba 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/style.scss +++ b/packages/edit-site/src/components/global-styles/font-library-modal/style.scss @@ -1,113 +1,113 @@ .font-library-modal { - .components-modal__header { - border-bottom: none; - } + .components-modal__header { + border-bottom: none; + } - .components-modal__content { - padding-top: 0; - } + .components-modal__content { + padding-top: 0; + } } -.font-library-modal__tab-layout{ +.font-library-modal__tab-layout { - main { - padding-bottom: 4rem; - } + main { + padding-bottom: 4rem; + } - footer{ - border-top: 1px solid #e5e5e5; - margin: 0 -32px -32px; - padding: 16px 32px; - position: absolute; - bottom: 32px; - width: 100%; - background-color: #fff; - } + footer { + border-top: 1px solid #e5e5e5; + margin: 0 -32px -32px; + padding: 16px 32px; + position: absolute; + bottom: 32px; + width: 100%; + background-color: #fff; + } } .font-library-modal__fonts-grid { - .font-library-modal__fonts-grid__subtitle { - text-transform: uppercase; - font-weight: 500; - font-size: 11px; - } - - .font-library-modal__fonts-grid__main { - display: flex; - flex-direction: column; - } + .font-library-modal__fonts-grid__subtitle { + text-transform: uppercase; + font-weight: 500; + font-size: 11px; + } + + .font-library-modal__fonts-grid__main { + display: flex; + flex-direction: column; + } } .font-library-modal__font-card { - border: 1px solid #e5e5e5; - padding: 1rem; - margin-top: -1px; /* To collapse the margin with the previous element */ + border: 1px solid #e5e5e5; + padding: 1rem; + margin-top: -1px; /* To collapse the margin with the previous element */ - .font-library-modal__font-card__name { - font-weight: bold; - } + .font-library-modal__font-card__name { + font-weight: bold; + } - .font-library-modal__font-card__count { - color: #6e6e6e; - } + .font-library-modal__font-card__count { + color: #6e6e6e; + } } .font-library-modal__library-font-variant { - border: 1px solid #e5e5e5; - padding: 1rem; - margin-top: -1px; /* To collapse the margin with the previous element */ + border: 1px solid #e5e5e5; + padding: 1rem; + margin-top: -1px; /* To collapse the margin with the previous element */ } .font-library-modal__font-variant { - border-bottom: 1px solid #e5e5e5; - padding-bottom: 1rem; + border-bottom: 1px solid #e5e5e5; + padding-bottom: 1rem; } .font-library-modal__tab-panel { - [role="tablist"] { - position: sticky; - top: 0; - width: calc(100% + 64px); - border-bottom: 1px solid #e6e6e6; - background: #fff; - margin: 0 -32px; - padding: 0 16px; - z-index: 1; - } + [role="tablist"] { + position: sticky; + top: 0; + width: calc(100% + 64px); + border-bottom: 1px solid #e6e6e6; + background: #fff; + margin: 0 -32px; + padding: 0 16px; + z-index: 1; + } } .font-library-modal__upload-area { - align-items: center; - display: flex; - justify-content: center; - min-height: calc(100vh - 360px); - width: 100%; - border: 1px dashed #e5e5e5; - border-radius: 8px; + align-items: center; + display: flex; + justify-content: center; + min-height: calc(100vh - 360px); + width: 100%; + border: 1px dashed #e5e5e5; + border-radius: 8px; } .font-library-modal__font-name { - font-weight: bold; + font-weight: bold; } .font-library-modal__font-filename { - color: #6e6e6e; + color: #6e6e6e; } .font-library-modal__font-variant_demo-wrapper { - white-space: nowrap; - overflow: hidden; - width: 100%; - position: relative; - - &:after{ - content: ''; - position: absolute; - bottom: 0; - right: 0; - width: 30vw; - height: 100%; - background: linear-gradient(to right, rgba(255,255,255,0), rgba(255,255,255,1)); - } -} \ No newline at end of file + white-space: nowrap; + overflow: hidden; + width: 100%; + position: relative; + + &::after { + content: ""; + position: absolute; + bottom: 0; + right: 0; + width: 30vw; + height: 100%; + background: linear-gradient(to right, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1)); + } +} From 79f71de47479019ccfbabf9b36d66aee2125849f Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Tue, 29 Aug 2023 12:36:38 -0300 Subject: [PATCH 033/108] lint css --- .../font-library-modal/context.js | 21 ++++------ .../font-library-modal/font-card.js | 14 ++----- .../font-library-modal/library-font-card.js | 5 ++- .../library-font-details.js | 2 +- .../library-font-variant.js | 23 ++++++++--- .../font-library-modal/local-fonts.js | 39 +++++++++++-------- .../global-styles/font-library-modal/utils.js | 8 ++-- 7 files changed, 59 insertions(+), 53 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/context.js b/packages/edit-site/src/components/global-styles/font-library-modal/context.js index e99ef984fd75a..e39bb82b7c0a5 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/context.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/context.js @@ -1,14 +1,9 @@ /** * WordPress dependencies */ -import { - createContext, - useState, - useEffect, -} from '@wordpress/element'; +import { createContext, useState, useEffect } from '@wordpress/element'; import { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor'; -import { useSelect } from '@wordpress/data'; -import { useEntityRecords } from '@wordpress/core-data'; +import { useSelect, useEntityRecords } from '@wordpress/data'; import { store as noticesStore } from '@wordpress/notices'; import { useDispatch } from '@wordpress/data'; import { __ } from '@wordpress/i18n'; @@ -16,10 +11,7 @@ import { __ } from '@wordpress/i18n'; /** * Internal dependencies */ -import { - fetchInstallFonts, - fetchUninstallFonts, -} from './resolvers'; +import { fetchInstallFonts, fetchUninstallFonts } from './resolvers'; import { DEFAULT_DEMO_CONFIG } from './constants'; import { unlock } from '../../../lock-unlock'; const { useGlobalSetting } = unlock( blockEditorPrivateApis ); @@ -120,10 +112,9 @@ function FontLibraryProvider( { children } ) { // Theme data const { site, currentTheme } = useSelect( ( select ) => { - const site = select( 'core' ).getSite(); const currentTheme = select( 'core' ).getCurrentTheme(); return { - site, + site: select( 'core' ).getSite(), currentTheme, }; } ); @@ -158,7 +149,9 @@ function FontLibraryProvider( { children } ) { if ( ! style && ! weight ) { return !! getActivatedFontsOutline( source )[ slug ]; } - return !! getActivatedFontsOutline( source )[ slug ]?.includes( style + weight ); + return !! getActivatedFontsOutline( source )[ slug ]?.includes( + style + weight + ); }; const getFontFacesActivated = ( slug, source ) => { diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/font-card.js b/packages/edit-site/src/components/global-styles/font-library-modal/font-card.js index 919b4d27c9a7f..5cd479ef12111 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/font-card.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/font-card.js @@ -41,24 +41,18 @@ function FontCard( { font, onClick, actionHandler, variantsText } ) { style={ style } className="font-library-modal__font-card" > - + - + { variantsText || variantsCount + ' ' + - _n( - 'variant', - 'variants', - variantsCount - ) } + _n( 'variant', 'variants', variantsCount ) } - - { !! actionHandler && actionHandler } - + { !! actionHandler && actionHandler } diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/library-font-card.js b/packages/edit-site/src/components/global-styles/font-library-modal/library-font-card.js index ba520a7abc972..4923c5c465848 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/library-font-card.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/library-font-card.js @@ -16,7 +16,10 @@ function LibraryFontCard( { font, ...props } ) { const { getFontFacesActivated } = useContext( FontLibraryContext ); const variantsInstalled = font.fontFace?.length || 1; - const variantsActive = getFontFacesActivated( font.slug, font.source ).length; + const variantsActive = getFontFacesActivated( + font.slug, + font.source + ).length; const variantsText = __( `${ variantsActive }/${ variantsInstalled } variants active` ); diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/library-font-details.js b/packages/edit-site/src/components/global-styles/font-library-modal/library-font-details.js index 5e34b3eca42e0..0abb1fb606ff3 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/library-font-details.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/library-font-details.js @@ -81,7 +81,7 @@ function LibraryFontDetails( { font, handleUnselectFont, canBeRemoved } ) { + + { canBeRemoved && ( + + )} ); } From 7e4a414b31d8e07c370104845fff3c9ee6853b46 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Thu, 31 Aug 2023 16:46:05 -0300 Subject: [PATCH 036/108] flip buttons order --- .../components/global-styles/font-families.js | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/font-families.js b/packages/edit-site/src/components/global-styles/font-families.js index 574b35ebb9b62..daea95cc7508d 100644 --- a/packages/edit-site/src/components/global-styles/font-families.js +++ b/packages/edit-site/src/components/global-styles/font-families.js @@ -39,14 +39,6 @@ function FontFamilies() { { __( 'Fonts' ) } - - + )} + { - const result = await uninstallFont( font ); - // If the font was succesfully uninstalled it is unselected - if ( result ) { - handleUnselectFont(); - } - }; - - const handleUninstallClick = async () => { - setIsConfirmOpen( true ); - }; - - const handleCancelUninstall = () => { - setIsConfirmOpen( false ); - }; - - const isActive = isFontActivated( font.slug, null, null, font.source ); - return ( <> ) ) } - - - - { canBeRemoved && ( - - )} ); } From f77066d058589ec198cbeec5fe226ca4cbe35161 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Mon, 4 Sep 2023 16:55:20 -0300 Subject: [PATCH 038/108] be able to indicate nested paths on __experimentalSaveSpecifiedEntityEdits --- packages/core-data/src/actions.js | 11 ++-- .../core-data/src/utils/get-nested-value.js | 20 ++++++ packages/core-data/src/utils/index.js | 1 + .../core-data/src/utils/set-nested-value.js | 18 ++++-- .../src/utils/test/get-nested-value.js | 61 +++++++++++++++++++ .../src/utils/test/set-nested-value.js | 7 +++ 6 files changed, 106 insertions(+), 12 deletions(-) create mode 100644 packages/core-data/src/utils/get-nested-value.js create mode 100644 packages/core-data/src/utils/test/get-nested-value.js diff --git a/packages/core-data/src/actions.js b/packages/core-data/src/actions.js index 1969d2cd717a2..b507bde8acab9 100644 --- a/packages/core-data/src/actions.js +++ b/packages/core-data/src/actions.js @@ -14,6 +14,7 @@ import deprecated from '@wordpress/deprecated'; /** * Internal dependencies */ +import { getNestedValue, setNestedValue } from './utils'; import { receiveItems, removeItems, receiveQueriedItems } from './queried-data'; import { getOrLoadEntitiesConfig, DEFAULT_ENTITY_KEY } from './entities'; import { createBatch } from './batch'; @@ -779,7 +780,7 @@ export const saveEditedEntityRecord = * @param {string} kind Kind of the entity. * @param {string} name Name of the entity. * @param {Object} recordId ID of the record. - * @param {Array} itemsToSave List of entity properties to save. + * @param {Array} itemsToSave List of entity properties or properties paths to save. * @param {Object} options Saving options. */ export const __experimentalSaveSpecifiedEntityEdits = @@ -794,10 +795,9 @@ export const __experimentalSaveSpecifiedEntityEdits = recordId ); const editsToSave = {}; - for ( const edit in edits ) { - if ( itemsToSave.some( ( item ) => item === edit ) ) { - editsToSave[ edit ] = edits[ edit ]; - } + + for ( const item of itemsToSave ) { + setNestedValue( editsToSave, item, getNestedValue( edits, item ) ); } const configs = await dispatch( getOrLoadEntitiesConfig( kind ) ); @@ -814,7 +814,6 @@ export const __experimentalSaveSpecifiedEntityEdits = if ( recordId ) { editsToSave[ entityIdKey ] = recordId; } - return await dispatch.saveEntityRecord( kind, name, diff --git a/packages/core-data/src/utils/get-nested-value.js b/packages/core-data/src/utils/get-nested-value.js new file mode 100644 index 0000000000000..66198f8e0db95 --- /dev/null +++ b/packages/core-data/src/utils/get-nested-value.js @@ -0,0 +1,20 @@ +/** + * Helper util to return a value from a certain path of the object. + * Path is specified as either: + * - a string of properties, separated by dots, for example: "x.y". + * - an array of properties, for example `[ 'x', 'y' ]`. + * You can also specify a default value in case the result is nullish. + * + * @param {Object} object Input object. + * @param {string|Array} path Path to the object property. + * @param {*} defaultValue Default value if the value at the specified path is nullish. + * @return {*} Value of the object property at the specified path. + */ +export default function getNestedValue( object, path, defaultValue ) { + const normalizedPath = Array.isArray( path ) ? path : path.split( '.' ); + let value = object; + normalizedPath.forEach( ( fieldName ) => { + value = value?.[ fieldName ]; + } ); + return value !== undefined ? value : defaultValue; +} diff --git a/packages/core-data/src/utils/index.js b/packages/core-data/src/utils/index.js index 4f4149c8265b2..f37efe6eee7fd 100644 --- a/packages/core-data/src/utils/index.js +++ b/packages/core-data/src/utils/index.js @@ -7,3 +7,4 @@ export { default as replaceAction } from './replace-action'; export { default as withWeakMapCache } from './with-weak-map-cache'; export { default as isRawAttribute } from './is-raw-attribute'; export { default as setNestedValue } from './set-nested-value'; +export { default as getNestedValue } from './get-nested-value'; diff --git a/packages/core-data/src/utils/set-nested-value.js b/packages/core-data/src/utils/set-nested-value.js index e90bf23e4dad8..cb2ae788d1c92 100644 --- a/packages/core-data/src/utils/set-nested-value.js +++ b/packages/core-data/src/utils/set-nested-value.js @@ -4,6 +4,10 @@ * Arrays are created for missing index properties while objects are created * for all other missing properties. * + * Path is specified as either: + * - a string of properties, separated by dots, for example: "x.y". + * - an array of properties, for example `[ 'x', 'y' ]`. + * * This function intentionally mutates the input object. * * Inspired by _.set(). @@ -12,24 +16,26 @@ * * @todo Needs to be deduplicated with its copy in `@wordpress/edit-site`. * - * @param {Object} object Object to modify - * @param {Array} path Path of the property to set. - * @param {*} value Value to set. + * @param {Object} object Object to modify + * @param {Array|string} path Path of the property to set. + * @param {*} value Value to set. */ export default function setNestedValue( object, path, value ) { if ( ! object || typeof object !== 'object' ) { return object; } - path.reduce( ( acc, key, idx ) => { + const normalizedPath = Array.isArray( path ) ? path : path.split( '.' ); + + normalizedPath.reduce( ( acc, key, idx ) => { if ( acc[ key ] === undefined ) { - if ( Number.isInteger( path[ idx + 1 ] ) ) { + if ( Number.isInteger( normalizedPath[ idx + 1 ] ) ) { acc[ key ] = []; } else { acc[ key ] = {}; } } - if ( idx === path.length - 1 ) { + if ( idx === normalizedPath.length - 1 ) { acc[ key ] = value; } return acc[ key ]; diff --git a/packages/core-data/src/utils/test/get-nested-value.js b/packages/core-data/src/utils/test/get-nested-value.js new file mode 100644 index 0000000000000..4c1ae68317a6a --- /dev/null +++ b/packages/core-data/src/utils/test/get-nested-value.js @@ -0,0 +1,61 @@ +/** + * Internal dependencies + */ +import getNestedValue from '../get-nested-value'; + +describe( 'setNestedValue', () => { + it( 'should return the same object unmodified if path is an empty array', () => { + const input = { x: 'y' }; + const result = getNestedValue( input, [] ); + expect( result ).toEqual( input ); + } ); + + it( 'should the nested value', () => { + const input = { x: { y: { z: 123 } } }; + const result = getNestedValue( input, [ 'x', 'y', 'z' ] ); + + expect( result ).toEqual( 123 ); + } ); + + it( 'should return the nested value if the path is a string', () => { + const input = { x: { y: { z: 123 } } }; + const result = getNestedValue( input, 'x.y.z' ); + + expect( result ).toEqual( 123 ); + } ); + + it( 'should return the shallow value', () => { + const input = { x: { y: { z: 123 } } }; + const result = getNestedValue( input, 'x' ); + + expect( result ).toEqual( { y: { z: 123 } } ); + } ); + + it( 'should return the default value if the nested value is undefined', () => { + const input = { x: { y: { z: undefined } } }; + const result = getNestedValue( input, [ 'x', 'y', 'z' ], 456 ); + + expect( result ).toEqual( 456 ); + } ); + + it( 'should return the nested value if it different to undefined', () => { + const input = { x: { y: { z: null } } }; + const result = getNestedValue( input, 'x.y.z', 456 ); + + expect( result ).toBeNull(); + } ); + + it( 'should return the default value if the nested value does not exist', () => { + const input = { x: { y: { z: 123 } } }; + const result = getNestedValue( input, [ 'x', 'y', 'z1' ], 456 ); + + expect( result ).toEqual( 456 ); + } ); + + it( 'should return undefined if the nested value does not exist', () => { + const input = { x: { y: { z: 123 } } }; + const result = getNestedValue( input, [ 'x', 'y', 'z1' ] ); + + expect( result ).toBeUndefined(); + } ); +} ); diff --git a/packages/core-data/src/utils/test/set-nested-value.js b/packages/core-data/src/utils/test/set-nested-value.js index bbc7129180764..7785e94830109 100644 --- a/packages/core-data/src/utils/test/set-nested-value.js +++ b/packages/core-data/src/utils/test/set-nested-value.js @@ -19,6 +19,13 @@ describe( 'setNestedValue', () => { expect( result ).toEqual( { x: { y: { z: 456 } } } ); } ); + it( 'should set values at deep level having a string as path', () => { + const input = { x: { y: { z: 123 } } }; + const result = setNestedValue( input, 'x.y.z', 456 ); + + expect( result ).toEqual( { x: { y: { z: 456 } } } ); + } ); + it( 'should create nested objects if necessary', () => { const result = setNestedValue( {}, [ 'x', 'y', 'z' ], 123 ); From efe375aa7c6ba71000ab6d78d8131c0a7fb26bc2 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Mon, 4 Sep 2023 21:55:50 -0300 Subject: [PATCH 039/108] save only fontFamilies when persisting global styles from font library modal --- .../global-styles/font-library-modal/context.js | 12 ++++++++++-- .../font-library-modal/installed-fonts.js | 13 +++++++------ 2 files changed, 17 insertions(+), 8 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/context.js b/packages/edit-site/src/components/global-styles/font-library-modal/context.js index 3784e50d5becd..61bc5bbc2c002 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/context.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/context.js @@ -21,7 +21,9 @@ export const FontLibraryContext = createContext( {} ); function FontLibraryProvider( { children } ) { - const { editEntityRecord, saveEditedEntityRecord } = useDispatch( coreStore ); + const { + __experimentalSaveSpecifiedEntityEdits: saveSpecifiedEntityEdits, + } = useDispatch( coreStore ); const { globalStylesId } = useSelect( ( select ) => { const { __experimentalGetCurrentGlobalStylesId } = select( coreStore ); const globalStylesId = __experimentalGetCurrentGlobalStylesId(); @@ -57,6 +59,11 @@ function FontLibraryProvider( { children } ) { 'base' ); + // Save font families to the global styles post in the database. + const saveFontFamilies = () => { + saveSpecifiedEntityEdits( 'root', 'globalStyles', globalStylesId, [ 'settings.typography.fontFamilies' ] ); + } + // Library Fonts const [ modalTabOepn, setModalTabOepn ] = useState( false ); const [ libraryFontSelected, setLibraryFontSelected ] = useState( null ); @@ -190,7 +197,7 @@ function FontLibraryProvider( { children } ) { // Deactivate the font family (remove the font family from the global styles). deactivateFontFamily( font ); // Save the global styles to the database. - await saveEditedEntityRecord( 'root', 'globalStyles', globalStylesId ); + await saveSpecifiedEntityEdits( 'root', 'globalStyles', globalStylesId, [ 'settings.typography.fontFamilies' ] ); // Refresh the library (the the library font families from database). refreshLibrary(); @@ -357,6 +364,7 @@ function FontLibraryProvider( { children } ) { modalTabOepn, toggleModal, refreshLibrary, + saveFontFamilies } } > { children } diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js b/packages/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js index 984971d3520dd..e12dee7e76813 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js @@ -15,7 +15,6 @@ import TabLayout from './tab-layout'; import { FontLibraryContext } from './context'; import FontsGrid from './fonts-grid'; import LibraryFontDetails from './library-font-details'; -import SaveButton from '../../save-button'; import LibraryFontCard from './library-font-card'; import { Button } from '@wordpress/components'; @@ -129,6 +128,7 @@ function InstalledFonts() { } function Footer({ shouldDisplayDeleteButton, handleUninstallClick }) { + const { saveFontFamilies } = useContext( FontLibraryContext ); return (
@@ -142,11 +142,12 @@ function Footer({ shouldDisplayDeleteButton, handleUninstallClick }) { )}
- +
); } From 99dc420714c8f99549ffff03b0e0f65644d5a5c3 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Mon, 4 Sep 2023 22:19:29 -0300 Subject: [PATCH 040/108] Add edits data to the useEntityRecord --- .../core-data/src/hooks/test/use-entity-record.js | 4 ++++ packages/core-data/src/hooks/use-entity-record.ts | 11 ++++++++++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/packages/core-data/src/hooks/test/use-entity-record.js b/packages/core-data/src/hooks/test/use-entity-record.js index f86906f4f7446..d78a64d5f2b62 100644 --- a/packages/core-data/src/hooks/test/use-entity-record.js +++ b/packages/core-data/src/hooks/test/use-entity-record.js @@ -46,6 +46,7 @@ describe( 'useEntityRecord', () => { edit: expect.any( Function ), editedRecord: {}, hasEdits: false, + edits: {}, record: undefined, save: expect.any( Function ), hasResolved: false, @@ -64,6 +65,7 @@ describe( 'useEntityRecord', () => { edit: expect.any( Function ), editedRecord: { hello: 'world', id: 1 }, hasEdits: false, + edits: {}, record: { hello: 'world', id: 1 }, save: expect.any( Function ), hasResolved: true, @@ -92,6 +94,7 @@ describe( 'useEntityRecord', () => { edit: expect.any( Function ), editedRecord: { hello: 'world', id: 1 }, hasEdits: false, + edits: {}, record: { hello: 'world', id: 1 }, save: expect.any( Function ), hasResolved: true, @@ -108,5 +111,6 @@ describe( 'useEntityRecord', () => { expect( widget.record ).toEqual( { hello: 'world', id: 1 } ); expect( widget.editedRecord ).toEqual( { hello: 'foo', id: 1 } ); + expect( widget.edits ).toEqual( { hello: 'foo' } ); } ); } ); diff --git a/packages/core-data/src/hooks/use-entity-record.ts b/packages/core-data/src/hooks/use-entity-record.ts index 310c013ce0b87..01eee562644cf 100644 --- a/packages/core-data/src/hooks/use-entity-record.ts +++ b/packages/core-data/src/hooks/use-entity-record.ts @@ -19,6 +19,9 @@ export interface EntityRecordResolution< RecordType > { /** The edited entity record */ editedRecord: Partial< RecordType >; + /** The edits to the edited entity record */ + edits: Partial< RecordType >; + /** Apply local (in-browser) edits to the edited entity record */ edit: ( diff: Partial< RecordType > ) => void; @@ -163,7 +166,7 @@ export default function useEntityRecord< RecordType >( [ editEntityRecord, kind, name, recordId, saveEditedEntityRecord ] ); - const { editedRecord, hasEdits } = useSelect( + const { editedRecord, hasEdits, edits } = useSelect( ( select ) => ( { editedRecord: select( coreStore ).getEditedEntityRecord( kind, @@ -175,6 +178,11 @@ export default function useEntityRecord< RecordType >( name, recordId ), + edits: select( coreStore ).getEntityRecordNonTransientEdits( + kind, + name, + recordId + ), } ), [ kind, name, recordId ] ); @@ -195,6 +203,7 @@ export default function useEntityRecord< RecordType >( record, editedRecord, hasEdits, + edits, ...querySelectRest, ...mutations, }; From 595b3bf67de495139cbc6043546d177256079a48 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Tue, 5 Sep 2023 13:49:48 -0300 Subject: [PATCH 041/108] disable save button when there are no changes to be saved --- .../global-styles/font-library-modal/context.js | 8 ++++++-- .../global-styles/font-library-modal/installed-fonts.js | 3 ++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/context.js b/packages/edit-site/src/components/global-styles/font-library-modal/context.js index 61bc5bbc2c002..fd48eacac7a08 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/context.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/context.js @@ -4,7 +4,7 @@ import { createContext, useState, useEffect } from '@wordpress/element'; import { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor'; import { useSelect, useDispatch } from '@wordpress/data'; -import { useEntityRecords, store as coreStore } from '@wordpress/core-data'; +import { useEntityRecord, useEntityRecords, store as coreStore } from '@wordpress/core-data'; import { store as noticesStore } from '@wordpress/notices'; import { __ } from '@wordpress/i18n'; @@ -30,6 +30,9 @@ function FontLibraryProvider( { children } ) { return { globalStylesId }; }); + const globalStyles = useEntityRecord('root', 'globalStyles', globalStylesId); + const fontFamiliesHasChanges = !!globalStyles?.edits?.settings?.typography?.fontFamilies; + const { createErrorNotice, createSuccessNotice } = useDispatch( noticesStore ); @@ -364,7 +367,8 @@ function FontLibraryProvider( { children } ) { modalTabOepn, toggleModal, refreshLibrary, - saveFontFamilies + saveFontFamilies, + fontFamiliesHasChanges } } > { children } diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js b/packages/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js index e12dee7e76813..bb3204f58acad 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js @@ -128,7 +128,7 @@ function InstalledFonts() { } function Footer({ shouldDisplayDeleteButton, handleUninstallClick }) { - const { saveFontFamilies } = useContext( FontLibraryContext ); + const { saveFontFamilies, fontFamiliesHasChanges } = useContext( FontLibraryContext ); return (
@@ -143,6 +143,7 @@ function Footer({ shouldDisplayDeleteButton, handleUninstallClick }) { )}
-
- ); - }; - - const SelectFilesButton = ( props ) => { - return ( - ( - - )} + ) } diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/library-font-card.js b/packages/edit-site/src/components/global-styles/font-library-modal/library-font-card.js index 4923c5c465848..6569f4345873d 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/library-font-card.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/library-font-card.js @@ -1,7 +1,7 @@ /** * WordPress dependencies */ -import { __ } from '@wordpress/i18n'; +import { __, sprintf } from '@wordpress/i18n'; import { useContext } from '@wordpress/element'; import { Icon } from '@wordpress/components'; import { chevronRight } from '@wordpress/icons'; @@ -20,8 +20,11 @@ function LibraryFontCard( { font, ...props } ) { font.slug, font.source ).length; - const variantsText = __( - `${ variantsActive }/${ variantsInstalled } variants active` + const variantsText = sprintf( + /* translators: %1$d: Active font variants, %2$d: Total font variants */ + __( '%1$s/%2$s variants active' ), + variantsActive, + variantsInstalled ); return ( diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/library-font-details.js b/packages/edit-site/src/components/global-styles/font-library-modal/library-font-details.js index a312edf2cb5c5..2988372c478f5 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/library-font-details.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/library-font-details.js @@ -1,10 +1,8 @@ /** * WordPress dependencies */ -import { __ } from '@wordpress/i18n'; -import { useContext, useState } from '@wordpress/element'; +import { __, sprintf } from '@wordpress/i18n'; import { - Button, __experimentalVStack as VStack, __experimentalSpacer as Spacer, __experimentalConfirmDialog as ConfirmDialog, @@ -15,7 +13,12 @@ import { */ import LibraryFontVariant from './library-font-variant'; -function LibraryFontDetails( { font, isConfirmDeleteOpen, handleConfirmUninstall, handleCancelUninstall } ) { +function LibraryFontDetails( { + font, + isConfirmDeleteOpen, + handleConfirmUninstall, + handleCancelUninstall, +} ) { const fontFaces = font.fontFace && font.fontFace.length ? font.fontFace @@ -36,8 +39,12 @@ function LibraryFontDetails( { font, isConfirmDeleteOpen, handleConfirmUninstall onCancel={ handleCancelUninstall } onConfirm={ handleConfirmUninstall } > - { __( - `Would you like to remove ${ font.name } and all its variants and assets?` + { sprintf( + /* translators: %s: Name of the font. */ + __( + 'Would you like to remove %s and all its variants and assets?' + ), + font.name ) } diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js b/packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js index 6d13b5fa7d4f8..9d55338d6ee65 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js @@ -3,6 +3,7 @@ */ import { __ } from '@wordpress/i18n'; import { + Button, DropZone, __experimentalSpacer as Spacer, __experimentalText as Text, @@ -31,7 +32,7 @@ function LocalFonts() { * Filters the selected files to only allow the ones with the allowed extensions * * @param {Array} files The files to be filtered - * @return {Array} The filtered files + * @return {void} */ const handleFilesUpload = ( files ) => { const uniqueFilenames = new Set(); @@ -56,25 +57,24 @@ function LocalFonts() { /** * Loads the selected files and reads the font metadata * - * @param {Array} selectedFiles The files to be loaded + * @param {Array} files The files to be loaded * @return {void} - * */ const loadFiles = async ( files ) => { const fontFacesLoaded = await Promise.all( - files.map( async (fontFile) => { + files.map( async ( fontFile ) => { const fontFaceData = await getFontFaceMetadata( fontFile ); await addFontFaceToBrowser( fontFaceData ); return fontFaceData; - } - ) ); + } ) + ); await handleInstall( fontFacesLoaded ); }; // Create a function to read the file as array buffer async function readFileAsArrayBuffer( file ) { return new Promise( ( resolve, reject ) => { - const reader = new FileReader(); + const reader = new window.FileReader(); reader.readAsArrayBuffer( file ); reader.onload = () => resolve( reader.result ); reader.onerror = reject; @@ -109,18 +109,18 @@ function LocalFonts() { fontFamily: fontName, fontStyle: isItalic ? 'italic' : 'normal', fontWeight: weightRange || fontWeight, - } - } + }; + }; - const addFontFaceToBrowser = async (fontFaceData ) => { + const addFontFaceToBrowser = async ( fontFaceData ) => { const data = await fontFaceData.file.arrayBuffer(); - const newFont = new FontFace( fontFaceData.fontFamily, data, { + const newFont = new window.FontFace( fontFaceData.fontFamily, data, { style: fontFaceData.fontStyle, weight: fontFaceData.fontWeight, } ); const loadedFace = await newFont.load(); document.fonts.add( loadedFace ); - } + }; /** * Creates the font family definition and sends it to the server @@ -161,7 +161,9 @@ function LocalFonts() { return ( <> - { __( "Upload Fonts" ) } + + { __( 'Upload Fonts' ) } + ( -
- { __("Drag and drop your font files here.") } -
+ ) } /> diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js index a333bb09762d3..0014a5a82f9ad 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js @@ -29,17 +29,17 @@ export function getFontFaceVariantName( face ) { return `${ weightName } ${ styleName }`; } -export function mergeFontFaces ( existing = [], incoming = [] ) { +export function mergeFontFaces( existing = [], incoming = [] ) { const map = new Map(); for ( const face of existing ) { map.set( `${ face.fontWeight }${ face.fontStyle }`, face ); } for ( const face of incoming ) { // This will overwrite if the src already exists, keeping it unique. - map.set( `${ face.fontWeight }${ face.fontStyle }`, face ); + map.set( `${ face.fontWeight }${ face.fontStyle }`, face ); } return Array.from( map.values() ); -}; +} export function mergeFontFamilies( existing = [], incoming = [] ) { const map = new Map(); @@ -58,7 +58,10 @@ export function mergeFontFamilies( existing = [], incoming = [] ) { incomingFontFaces ); // Except for the fontFace key all the other keys are overwritten with the incoming values. - map.set( font.slug, { ...restIncoming, fontFace: mergedFontFaces } ); + map.set( font.slug, { + ...restIncoming, + fontFace: mergedFontFaces, + } ); } else { map.set( font.slug, { ...font } ); } @@ -66,7 +69,8 @@ export function mergeFontFamilies( existing = [], incoming = [] ) { return Array.from( map.values() ); } -export async function loadFontFaceInBrowser ( fontFace, src ) { +export async function loadFontFaceInBrowser( fontFace, src ) { + // eslint-disable-next-line no-undef const newFont = new FontFace( fontFace.fontFamily, `url( ${ src } )`, { style: fontFace.fontStyle, weight: fontFace.fontWeight, @@ -86,8 +90,8 @@ export function getDisplaySrcFromFontFace( input, urlPrefix ) { if ( src.startsWith( 'file:.' ) && urlPrefix ) { src = src.replace( 'file:.', urlPrefix ); } - if ( ! isUrlEncoded ( src ) ) { + if ( ! isUrlEncoded( src ) ) { src = encodeURI( src ); } - return src; -} \ No newline at end of file + return src; +} diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/getDisplaySrcFromFontFace.spec.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/getDisplaySrcFromFontFace.spec.js index 14e2f3213c97d..9c6235443a099 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/getDisplaySrcFromFontFace.spec.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/getDisplaySrcFromFontFace.spec.js @@ -1,14 +1,24 @@ +/** + * Internal dependencies + */ import { getDisplaySrcFromFontFace } from '../index'; describe( 'getDisplaySrcFromFontFace', () => { it( 'returns the first item when input is an array', () => { - const input = [ 'http://example.com/font-asset-1.ttf', 'http://example.com/font-asset-2.ttf' ]; - expect( getDisplaySrcFromFontFace( input ) ).toBe( 'http://example.com/font-asset-1.ttf' ); + const input = [ + 'http://example.com/font-asset-1.ttf', + 'http://example.com/font-asset-2.ttf', + ]; + expect( getDisplaySrcFromFontFace( input ) ).toBe( + 'http://example.com/font-asset-1.ttf' + ); } ); it( 'returns the input when it is a string', () => { const input = 'http://example.com/font-asset-1.ttf'; - expect( getDisplaySrcFromFontFace( input ) ).toBe( 'http://example.com/font-asset-1.ttf' ); + expect( getDisplaySrcFromFontFace( input ) ).toBe( + 'http://example.com/font-asset-1.ttf' + ); } ); it( 'makes URL absolute when it starts with file:. and urlPrefix is given', () => { diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/getFontFaceVariantName.spec.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/getFontFaceVariantName.spec.js index e68d49155ee2d..21347a342f396 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/getFontFaceVariantName.spec.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/getFontFaceVariantName.spec.js @@ -1,3 +1,6 @@ +/** + * Internal dependencies + */ import { getFontFaceVariantName } from '../index'; describe( 'getFontFaceVariantName', () => { diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/isUrlEncoded.spec.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/isUrlEncoded.spec.js index dba82d55c4ed0..797a8c9febd0f 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/isUrlEncoded.spec.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/isUrlEncoded.spec.js @@ -1,3 +1,6 @@ +/** + * Internal dependencies + */ import { isUrlEncoded } from '../index'; describe( 'isUrlEncoded', () => { diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/mergeFontFaces.spec.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/mergeFontFaces.spec.js index ee31b68aa7611..ea5f2b0353ee9 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/mergeFontFaces.spec.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/mergeFontFaces.spec.js @@ -1,3 +1,6 @@ +/** + * Internal dependencies + */ import { mergeFontFaces } from '../index'; describe( 'mergeFontFaces', () => { diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/mergeFontFamilies.spec.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/mergeFontFamilies.spec.js index 19a43aa928e46..5779534dfa925 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/mergeFontFamilies.spec.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/mergeFontFamilies.spec.js @@ -1,3 +1,6 @@ +/** + * Internal dependencies + */ import { mergeFontFamilies } from '../index'; describe( 'mergeFontFamilies', () => { @@ -66,7 +69,7 @@ describe( 'mergeFontFamilies', () => { fontFamily: 'Piazzolla', fontFace: [ { fontWeight: 400, fontStyle: 'normal', src: 'url' }, - { fontWeight: 500, fontStyle: 'normal', src: 'url' }, + { fontWeight: 500, fontStyle: 'normal', src: 'url' }, ], }, ]; @@ -77,7 +80,7 @@ describe( 'mergeFontFamilies', () => { fontFamily: 'Piazzolla, serif', fontFace: [ { fontWeight: 800, fontStyle: 'normal', src: 'url' }, - { fontWeight: 400, fontStyle: 'normal', src: 'url' }, + { fontWeight: 400, fontStyle: 'normal', src: 'url' }, ], }, ]; @@ -93,7 +96,7 @@ describe( 'mergeFontFamilies', () => { fontFamily: 'Piazzolla, serif', fontFace: [ { fontWeight: 400, fontStyle: 'normal', src: 'url' }, - { fontWeight: 500, fontStyle: 'normal', src: 'url' }, + { fontWeight: 500, fontStyle: 'normal', src: 'url' }, { fontWeight: 800, fontStyle: 'normal', src: 'url' }, ], }, diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/setUIValuesNeeded.spec.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/setUIValuesNeeded.spec.js index 752667f5c8d0e..be167cb3eb34d 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/setUIValuesNeeded.spec.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/setUIValuesNeeded.spec.js @@ -1,3 +1,6 @@ +/** + * Internal dependencies + */ import { setUIValuesNeeded } from '../index'; describe( 'setUIValuesNeeded function', () => { @@ -25,8 +28,8 @@ describe( 'setUIValuesNeeded function', () => { const result = setUIValuesNeeded( font, extraValues ); expect( result ).toEqual( { name: 'Arial', - slug: 'arial', - source: 'custom', + slug: 'arial', + source: 'custom', } ); } ); diff --git a/test/e2e/specs/editor/blocks/classic.spec.js b/test/e2e/specs/editor/blocks/classic.spec.js index 4403706444a7e..30f6051fab29b 100644 --- a/test/e2e/specs/editor/blocks/classic.spec.js +++ b/test/e2e/specs/editor/blocks/classic.spec.js @@ -76,7 +76,7 @@ test.describe( 'Classic', () => { const createGallery = page.getByRole( 'button', { name: 'Create a new gallery', } ); - await expect( createGallery ).not.toBeDisabled(); + await expect( createGallery ).toBeEnabled(); await createGallery.click(); await page.click( 'role=button[name="Insert gallery"i]' ); diff --git a/test/e2e/specs/editor/blocks/links.spec.js b/test/e2e/specs/editor/blocks/links.spec.js index 83efef0bce2f0..55d126314d1fc 100644 --- a/test/e2e/specs/editor/blocks/links.spec.js +++ b/test/e2e/specs/editor/blocks/links.spec.js @@ -231,7 +231,7 @@ test.describe( 'Links', () => { // Check that the Advanced settings are still closed. // This verifies that the editor preference was persisted. - await expect( page.getByLabel( 'Open in new tab' ) ).not.toBeVisible(); + await expect( page.getByLabel( 'Open in new tab' ) ).toBeHidden(); } ); test( 'can toggle link settings and save', async ( { diff --git a/test/e2e/specs/editor/blocks/navigation-list-view.spec.js b/test/e2e/specs/editor/blocks/navigation-list-view.spec.js index 77039281faded..2ba43fe78151e 100644 --- a/test/e2e/specs/editor/blocks/navigation-list-view.spec.js +++ b/test/e2e/specs/editor/blocks/navigation-list-view.spec.js @@ -274,7 +274,7 @@ test.describe( 'Navigation block - List view editing', () => { hasText: 'Block 2 of 2, Level 1', // proxy for filtering by description. } ) .getByText( 'Top Level Item 2' ) - ).not.toBeVisible(); + ).toBeHidden(); } ); test( `can edit menu items`, async ( { page, editor, requestUtils } ) => { @@ -525,7 +525,7 @@ test.describe( 'Navigation block - List view editing', () => { // Check that despite being the last inserted block, the Link UI is not displayed // in this scenario because it was not **just** inserted into the List View (i.e. // we have unmounted the list view and then remounted it). - await expect( linkControl.getSearchInput() ).not.toBeVisible(); + await expect( linkControl.getSearchInput() ).toBeHidden(); } ); } ); diff --git a/test/e2e/specs/editor/blocks/paragraph.spec.js b/test/e2e/specs/editor/blocks/paragraph.spec.js index 1c35f6ddc8958..7eb47cdc7e344 100644 --- a/test/e2e/specs/editor/blocks/paragraph.spec.js +++ b/test/e2e/specs/editor/blocks/paragraph.spec.js @@ -87,7 +87,7 @@ test.describe( 'Paragraph', () => { ); await expect( draggingUtils.dropZone ).toBeVisible(); - await expect( draggingUtils.insertionIndicator ).not.toBeVisible(); + await expect( draggingUtils.insertionIndicator ).toBeHidden(); await drop( editor.canvas.locator( '[data-type="core/paragraph"]' ) @@ -129,7 +129,7 @@ test.describe( 'Paragraph', () => { await draggingUtils.dragOver( boundingBox.x, boundingBox.y ); await expect( draggingUtils.dropZone ).toBeVisible(); - await expect( draggingUtils.insertionIndicator ).not.toBeVisible(); + await expect( draggingUtils.insertionIndicator ).toBeHidden(); await page.mouse.up(); @@ -157,7 +157,7 @@ test.describe( 'Paragraph', () => { await draggingUtils.dragOver( boundingBox.x, boundingBox.y ); await expect( draggingUtils.dropZone ).toBeVisible(); - await expect( draggingUtils.insertionIndicator ).not.toBeVisible(); + await expect( draggingUtils.insertionIndicator ).toBeHidden(); await page.mouse.up(); @@ -264,7 +264,7 @@ test.describe( 'Paragraph', () => { headingBox.x, headingBox.y + headingBox.height - 1 ); - await expect( draggingUtils.dropZone ).not.toBeVisible(); + await expect( draggingUtils.dropZone ).toBeHidden(); await expect( draggingUtils.insertionIndicator ).toBeVisible(); @@ -310,7 +310,7 @@ test.describe( 'Paragraph', () => { headingBox.x, headingBox.y + 1 ); - await expect( draggingUtils.dropZone ).not.toBeVisible(); + await expect( draggingUtils.dropZone ).toBeHidden(); await expect( draggingUtils.insertionIndicator ).toBeVisible(); diff --git a/test/e2e/specs/editor/various/autocomplete-and-mentions.spec.js b/test/e2e/specs/editor/various/autocomplete-and-mentions.spec.js index 53b2940fe6c75..3cfc838fcadf2 100644 --- a/test/e2e/specs/editor/various/autocomplete-and-mentions.spec.js +++ b/test/e2e/specs/editor/various/autocomplete-and-mentions.spec.js @@ -452,7 +452,7 @@ test.describe( 'Autocomplete (@firefox, @webkit)', () => { await page.keyboard.press( 'ArrowLeft' ); await expect( page.locator( 'role=option', { hasText: 'Frodo Baggins' } ) - ).not.toBeVisible(); + ).toBeHidden(); } ); test( 'should hide UI when selection changes (by mouse)', async ( { @@ -473,7 +473,7 @@ test.describe( 'Autocomplete (@firefox, @webkit)', () => { await editor.canvas.click( '[data-type="core/paragraph"] strong' ); await expect( page.locator( 'role=option', { hasText: 'Frodo Baggins' } ) - ).not.toBeVisible(); + ).toBeHidden(); } ); test( 'should allow speaking number of initial results', async ( { diff --git a/test/e2e/specs/editor/various/block-deletion.spec.js b/test/e2e/specs/editor/various/block-deletion.spec.js index 9fcacae05b63f..084cd008cdc44 100644 --- a/test/e2e/specs/editor/various/block-deletion.spec.js +++ b/test/e2e/specs/editor/various/block-deletion.spec.js @@ -377,7 +377,7 @@ test.describe( 'Block deletion', () => { await expect.poll( editor.getBlocks ).toHaveLength( 0 ); await expect( editor.canvas.getByRole( 'document', { name: 'Empty block' } ) - ).not.toBeVisible(); + ).toBeHidden(); // Ensure that the block appender button is visible. await expect( diff --git a/test/e2e/specs/editor/various/block-locking.spec.js b/test/e2e/specs/editor/various/block-locking.spec.js index c374c4ee2b0b5..481c476ac065b 100644 --- a/test/e2e/specs/editor/various/block-locking.spec.js +++ b/test/e2e/specs/editor/various/block-locking.spec.js @@ -19,7 +19,7 @@ test.describe( 'Block Locking', () => { await expect( page.locator( 'role=menuitem[name="Delete"]' ) - ).not.toBeVisible(); + ).toBeHidden(); } ); test( 'can disable movement', async ( { editor, page } ) => { @@ -38,14 +38,12 @@ test.describe( 'Block Locking', () => { await editor.clickBlockToolbarButton( 'Options' ); // Drag handle is hidden. - await expect( - page.locator( 'role=button[name="Drag"]' ) - ).not.toBeVisible(); + await expect( page.locator( 'role=button[name="Drag"]' ) ).toBeHidden(); // Movers are hidden. No need to check for both. await expect( page.locator( 'role=button[name="Move up"]' ) - ).not.toBeVisible(); + ).toBeHidden(); } ); test( 'can lock everything', async ( { editor, page } ) => { diff --git a/test/e2e/specs/editor/various/inserting-blocks.spec.js b/test/e2e/specs/editor/various/inserting-blocks.spec.js index 822257e67deff..cfef686ef5c87 100644 --- a/test/e2e/specs/editor/various/inserting-blocks.spec.js +++ b/test/e2e/specs/editor/various/inserting-blocks.spec.js @@ -155,8 +155,8 @@ test.describe( 'Inserting blocks (@firefox, @webkit)', () => { await page.keyboard.press( 'Escape' ); - await expect( insertingBlocksUtils.indicator ).not.toBeVisible(); - await expect( insertingBlocksUtils.draggableChip ).not.toBeVisible(); + await expect( insertingBlocksUtils.indicator ).toBeHidden(); + await expect( insertingBlocksUtils.draggableChip ).toBeHidden(); await page.mouse.up(); @@ -294,8 +294,8 @@ test.describe( 'Inserting blocks (@firefox, @webkit)', () => { await page.keyboard.press( 'Escape' ); - await expect( insertingBlocksUtils.indicator ).not.toBeVisible(); - await expect( insertingBlocksUtils.draggableChip ).not.toBeVisible(); + await expect( insertingBlocksUtils.indicator ).toBeHidden(); + await expect( insertingBlocksUtils.draggableChip ).toBeHidden(); await page.mouse.up(); diff --git a/test/e2e/specs/editor/various/list-view.spec.js b/test/e2e/specs/editor/various/list-view.spec.js index 130bd9b7952fd..3cfcebb064d7f 100644 --- a/test/e2e/specs/editor/various/list-view.spec.js +++ b/test/e2e/specs/editor/various/list-view.spec.js @@ -331,7 +331,7 @@ test.describe( 'List View', () => { ).toBeFocused(); // List View should be closed. - await expect( listView ).not.toBeVisible(); + await expect( listView ).toBeHidden(); // Open List View. await pageUtils.pressKeys( 'access+o' ); @@ -352,7 +352,7 @@ test.describe( 'List View', () => { // Close List View and ensure it's closed. await pageUtils.pressKeys( 'access+o' ); - await expect( listView ).not.toBeVisible(); + await expect( listView ).toBeHidden(); // Open List View. await pageUtils.pressKeys( 'access+o' ); @@ -377,7 +377,7 @@ test.describe( 'List View', () => { // Close List View and ensure it's closed. await pageUtils.pressKeys( 'access+o' ); - await expect( listView ).not.toBeVisible(); + await expect( listView ).toBeHidden(); } ); test( 'should place focus on the currently selected block in the canvas', async ( { diff --git a/test/e2e/specs/editor/various/popovers.spec.js b/test/e2e/specs/editor/various/popovers.spec.js index 3191db464e223..149e188db46f2 100644 --- a/test/e2e/specs/editor/various/popovers.spec.js +++ b/test/e2e/specs/editor/various/popovers.spec.js @@ -14,14 +14,14 @@ test.describe( 'popovers', () => { const moreMenuToggleButton = page.locator( 'role=button[name="Options"i]' ); - await expect( moreMenu ).not.toBeVisible(); + await expect( moreMenu ).toBeHidden(); // Toggle opened. await moreMenuToggleButton.click(); await expect( moreMenu ).toBeVisible(); // Toggle closed. await moreMenuToggleButton.click(); - await expect( moreMenu ).not.toBeVisible(); + await expect( moreMenu ).toBeHidden(); } ); } ); } ); diff --git a/test/e2e/specs/editor/various/preview.spec.js b/test/e2e/specs/editor/various/preview.spec.js index cc97d5741c4c1..a3fa4544f39f8 100644 --- a/test/e2e/specs/editor/various/preview.spec.js +++ b/test/e2e/specs/editor/various/preview.spec.js @@ -297,7 +297,7 @@ test.describe( 'Preview with private custom post type', () => { await expect( page.locator( 'role=menuitem[name="Preview in new tab"i]' ) - ).not.toBeVisible(); + ).toBeHidden(); } ); } ); diff --git a/test/e2e/specs/editor/various/shortcut-focus-toolbar.spec.js b/test/e2e/specs/editor/various/shortcut-focus-toolbar.spec.js index 9361da403c6d9..0223821613f55 100644 --- a/test/e2e/specs/editor/various/shortcut-focus-toolbar.spec.js +++ b/test/e2e/specs/editor/various/shortcut-focus-toolbar.spec.js @@ -35,7 +35,7 @@ test.describe( 'Focus toolbar shortcut (alt + F10)', () => { ); await toolbarUtils.moveToToolbarShortcut(); await expect( toolbarUtils.blockToolbarParagraphButton ).toBeFocused(); - await expect( toolbarUtils.documentToolbarTooltip ).not.toBeVisible(); + await expect( toolbarUtils.documentToolbarTooltip ).toBeHidden(); // Test: Focus block toolbar from block content when block toolbar is visible await editor.insertBlock( { name: 'core/paragraph' } ); @@ -47,7 +47,7 @@ test.describe( 'Focus toolbar shortcut (alt + F10)', () => { await editor.showBlockToolbar(); await toolbarUtils.moveToToolbarShortcut(); await expect( toolbarUtils.blockToolbarParagraphButton ).toBeFocused(); - await expect( toolbarUtils.documentToolbarTooltip ).not.toBeVisible(); + await expect( toolbarUtils.documentToolbarTooltip ).toBeHidden(); } ); test( 'Focuses correct toolbar in default view options in select mode', async ( { @@ -169,9 +169,7 @@ test.describe( 'Focus toolbar shortcut (alt + F10)', () => { await expect( toolbarUtils.blockToolbarParagraphButton ).toBeFocused(); - await expect( - toolbarUtils.documentToolbarTooltip - ).not.toBeVisible(); + await expect( toolbarUtils.documentToolbarTooltip ).toBeHidden(); // Test: Focus the block toolbar from paragraph block with content await editor.insertBlock( { name: 'core/paragraph' } ); @@ -182,9 +180,7 @@ test.describe( 'Focus toolbar shortcut (alt + F10)', () => { await expect( toolbarUtils.blockToolbarParagraphButton ).toBeFocused(); - await expect( - toolbarUtils.documentToolbarTooltip - ).not.toBeVisible(); + await expect( toolbarUtils.documentToolbarTooltip ).toBeHidden(); } ); test( 'Focuses the correct toolbar in select mode', async ( { @@ -204,9 +200,7 @@ test.describe( 'Focus toolbar shortcut (alt + F10)', () => { await expect( toolbarUtils.blockToolbarParagraphButton ).toBeFocused(); - await expect( - toolbarUtils.documentToolbarTooltip - ).not.toBeVisible(); + await expect( toolbarUtils.documentToolbarTooltip ).toBeHidden(); // Test: Focus the block toolbar from paragraph in select mode await editor.insertBlock( { name: 'core/paragraph' } ); @@ -218,9 +212,7 @@ test.describe( 'Focus toolbar shortcut (alt + F10)', () => { await expect( toolbarUtils.blockToolbarParagraphButton ).toBeFocused(); - await expect( - toolbarUtils.documentToolbarTooltip - ).not.toBeVisible(); + await expect( toolbarUtils.documentToolbarTooltip ).toBeHidden(); } ); } ); } ); diff --git a/test/e2e/specs/editor/various/undo.spec.js b/test/e2e/specs/editor/various/undo.spec.js index 17d365a340680..dfdbef60ffaa9 100644 --- a/test/e2e/specs/editor/various/undo.spec.js +++ b/test/e2e/specs/editor/various/undo.spec.js @@ -453,7 +453,7 @@ test.describe( 'undo', () => { await expect.poll( editor.getEditedPostContent ).toBe( '' ); await expect( page.locator( 'role=button[name="Redo"]' ) - ).not.toBeDisabled(); + ).toBeEnabled(); await page.click( 'role=button[name="Redo"]' ); await expect.poll( editor.getBlocks ).toMatchObject( [ diff --git a/test/e2e/specs/interactivity/directive-init.spec.ts b/test/e2e/specs/interactivity/directive-init.spec.ts index aa81ab1ea61db..e18341a48fa3f 100644 --- a/test/e2e/specs/interactivity/directive-init.spec.ts +++ b/test/e2e/specs/interactivity/directive-init.spec.ts @@ -53,7 +53,7 @@ test.describe( 'data-wp-init', () => { await toggle.click(); - await expect( show ).not.toBeVisible(); + await expect( show ).toBeHidden(); await expect( isMounted ).toHaveText( 'false' ); } ); @@ -65,7 +65,7 @@ test.describe( 'data-wp-init', () => { await toggle.click(); - await expect( show ).not.toBeVisible(); + await expect( show ).toBeHidden(); await expect( isMounted ).toHaveText( 'false' ); await toggle.click(); diff --git a/test/e2e/specs/interactivity/directive-slots.spec.ts b/test/e2e/specs/interactivity/directive-slots.spec.ts index d93e50f767215..195af52fdb1bd 100644 --- a/test/e2e/specs/interactivity/directive-slots.spec.ts +++ b/test/e2e/specs/interactivity/directive-slots.spec.ts @@ -108,7 +108,7 @@ test.describe( 'data-wp-slot', () => { await page.getByTestId( 'slot-5-button' ).click(); await expect( fillContainer ).toBeEmpty(); - await expect( slot5 ).not.toBeVisible(); + await expect( slot5 ).toBeHidden(); await expect( slots.getByTestId( 'fill' ) ).toBeVisible(); await expect( slots.locator( 'css= > *' ) ).toHaveText( [ '[1]', diff --git a/test/e2e/specs/site-editor/list-view.spec.js b/test/e2e/specs/site-editor/list-view.spec.js index 94bac47d0ecf5..c25193ba5e60f 100644 --- a/test/e2e/specs/site-editor/list-view.spec.js +++ b/test/e2e/specs/site-editor/list-view.spec.js @@ -105,7 +105,7 @@ test.describe( 'Site Editor List View', () => { // Since focus is now inside the list view, the shortcut should close // the sidebar. await pageUtils.pressKeys( 'access+o' ); - await expect( listView ).not.toBeVisible(); + await expect( listView ).toBeHidden(); // Focus should now be on the Open Navigation button since that is // where we opened the list view sidebar. This is not a perfect @@ -130,7 +130,7 @@ test.describe( 'Site Editor List View', () => { } ) ).toBeFocused(); await pageUtils.pressKeys( 'access+o' ); - await expect( listView ).not.toBeVisible(); + await expect( listView ).toBeHidden(); await expect( openNavigationButton ).toBeFocused(); } ); } ); diff --git a/test/e2e/specs/site-editor/style-book.spec.js b/test/e2e/specs/site-editor/style-book.spec.js index eeaa1270f3ff9..b713b9a12e851 100644 --- a/test/e2e/specs/site-editor/style-book.spec.js +++ b/test/e2e/specs/site-editor/style-book.spec.js @@ -30,16 +30,16 @@ test.describe( 'Style Book', () => { test( 'should disable toolbar buttons when open', async ( { page } ) => { await expect( page.locator( 'role=button[name="Toggle block inserter"i]' ) - ).not.toBeVisible(); + ).toBeHidden(); await expect( page.locator( 'role=button[name="Tools"i]' ) - ).not.toBeVisible(); + ).toBeHidden(); await expect( page.locator( 'role=button[name="Undo"i]' ) - ).not.toBeVisible(); + ).toBeHidden(); await expect( page.locator( 'role=button[name="Redo"i]' ) - ).not.toBeVisible(); + ).toBeHidden(); await expect( page.locator( 'role=button[name="View"i]' ) ).toBeDisabled(); @@ -139,7 +139,7 @@ test.describe( 'Style Book', () => { await expect( styleBookRegion, 'should close when close button is clicked' - ).not.toBeVisible(); + ).toBeHidden(); // Open Style Book again. await page.getByRole( 'button', { name: 'Style Book' } ).click(); @@ -153,7 +153,7 @@ test.describe( 'Style Book', () => { await expect( styleBookRegion, 'should close when Escape key is pressed' - ).not.toBeVisible(); + ).toBeHidden(); } ); } ); diff --git a/test/e2e/specs/site-editor/template-part.spec.js b/test/e2e/specs/site-editor/template-part.spec.js index cd81a616b1fee..5096c7e2d3a16 100644 --- a/test/e2e/specs/site-editor/template-part.spec.js +++ b/test/e2e/specs/site-editor/template-part.spec.js @@ -215,7 +215,7 @@ test.describe( 'Template Part', () => { // There should be a paragraph but no header template part. await expect( paragraph ).toBeVisible(); - await expect( templatePartWithParagraph ).not.toBeVisible(); + await expect( templatePartWithParagraph ).toBeHidden(); } ); test( 'shows changes in a template when a template part it contains is modified', async ( { @@ -355,7 +355,7 @@ test.describe( 'Template Part', () => { // Verify that the widget area import button is not there. await expect( page.getByRole( 'combobox', { name: 'Import widget area' } ) - ).not.toBeVisible(); + ).toBeHidden(); } ); test( 'Keeps focus in place on undo in template parts', async ( { diff --git a/test/e2e/specs/site-editor/template-revert.spec.js b/test/e2e/specs/site-editor/template-revert.spec.js index c8edc034901a2..ffa02903ce0bb 100644 --- a/test/e2e/specs/site-editor/template-revert.spec.js +++ b/test/e2e/specs/site-editor/template-revert.spec.js @@ -55,7 +55,7 @@ test.describe( 'Template Revert', () => { page.locator( 'role=region[name="Editor settings"i] >> role=button[name="Actions"i]' ) - ).not.toBeVisible(); + ).toBeHidden(); } ); test( 'should show the original content after revert', async ( { diff --git a/test/e2e/specs/widgets/customizing-widgets.spec.js b/test/e2e/specs/widgets/customizing-widgets.spec.js index 8b2a585dc4e66..f3e42c482c72b 100644 --- a/test/e2e/specs/widgets/customizing-widgets.spec.js +++ b/test/e2e/specs/widgets/customizing-widgets.spec.js @@ -147,7 +147,7 @@ test.describe( 'Widgets Customizer', () => { // Go back to the widgets editor. await backButton.click(); await expect( widgetsFooter1Heading ).toBeVisible(); - await expect( inspectorHeading ).not.toBeVisible(); + await expect( inspectorHeading ).toBeHidden(); await editor.clickBlockToolbarButton( 'Options' ); await showMoreSettingsButton.click(); @@ -161,7 +161,7 @@ test.describe( 'Widgets Customizer', () => { // Go back to the widgets editor. await expect( widgetsFooter1Heading ).toBeVisible(); - await expect( inspectorHeading ).not.toBeVisible(); + await expect( inspectorHeading ).toBeHidden(); } ); test( 'should handle the inserter outer section', async ( { @@ -207,7 +207,7 @@ test.describe( 'Widgets Customizer', () => { await expect( publishSettings ).toBeVisible(); // Expect the inserter outer section to be closed. - await expect( inserterHeading ).not.toBeVisible(); + await expect( inserterHeading ).toBeHidden(); // Focus the block and start typing to hide the block toolbar. // Shouldn't be needed if we automatically hide the toolbar on blur. @@ -226,7 +226,7 @@ test.describe( 'Widgets Customizer', () => { await page.click( 'role=button[name=/Back$/] >> visible=true' ); // Expect the inserter outer section to be closed. - await expect( inserterHeading ).not.toBeVisible(); + await expect( inserterHeading ).toBeHidden(); } ); test( 'should move focus to the block', async ( { @@ -315,7 +315,7 @@ test.describe( 'Widgets Customizer', () => { await page.click( 'role=heading[name="Customizing â–¸ Widgets Footer #1"i][level=3]' ); - await expect( blockToolbar ).not.toBeVisible(); + await expect( blockToolbar ).toBeHidden(); await paragraphBlock.focus(); await editor.showBlockToolbar(); @@ -324,7 +324,7 @@ test.describe( 'Widgets Customizer', () => { // Expect clicking on the preview iframe should clear the selection. { await page.click( '#customize-preview' ); - await expect( blockToolbar ).not.toBeVisible(); + await expect( blockToolbar ).toBeHidden(); await paragraphBlock.focus(); await editor.showBlockToolbar(); @@ -339,7 +339,7 @@ test.describe( 'Widgets Customizer', () => { const { x, y, width, height } = await editorContainer.boundingBox(); // Simulate Clicking on the empty space at the end of the editor. await page.mouse.click( x + width / 2, y + height + 10 ); - await expect( blockToolbar ).not.toBeVisible(); + await expect( blockToolbar ).toBeHidden(); } } ); @@ -462,7 +462,7 @@ test.describe( 'Widgets Customizer', () => { // Expect pressing the Escape key to close the dropdown, // but not close the editor. await page.keyboard.press( 'Escape' ); - await expect( optionsMenu ).not.toBeVisible(); + await expect( optionsMenu ).toBeHidden(); await expect( paragraphBlock ).toBeVisible(); await paragraphBlock.focus(); @@ -530,7 +530,7 @@ test.describe( 'Widgets Customizer', () => { // integrate the G sidebar inside the customizer. await expect( page.locator( 'role=heading[name=/Block Settings/][level=3]' ) - ).not.toBeVisible(); + ).toBeHidden(); } ); test( 'should stay in block settings after making a change in that area', async ( { From 4cd05a4ac3a820d9470e341b0907c96b0b4f8310 Mon Sep 17 00:00:00 2001 From: Sarah Norris Date: Thu, 7 Sep 2023 12:16:44 +0100 Subject: [PATCH 064/108] Make font cards buttons --- .../global-styles/font-library-modal/font-card.js | 7 ++++--- .../components/global-styles/font-library-modal/style.scss | 1 + 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/font-card.js b/packages/edit-site/src/components/global-styles/font-library-modal/font-card.js index 5cd479ef12111..dade2dcc93583 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/font-card.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/font-card.js @@ -1,9 +1,10 @@ /** * WordPress dependencies */ -import { __, _n } from '@wordpress/i18n'; +import { _n } from '@wordpress/i18n'; import { __experimentalText as Text, + Button, Flex, FlexItem, } from '@wordpress/components'; @@ -36,7 +37,7 @@ function FontCard( { font, onClick, actionHandler, variantsText } ) { }; return ( -
{ !! actionHandler && actionHandler } -
+ ); } diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/style.scss b/packages/edit-site/src/components/global-styles/font-library-modal/style.scss index 3de6960e8cd3e..7de345b659b6e 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/style.scss +++ b/packages/edit-site/src/components/global-styles/font-library-modal/style.scss @@ -41,6 +41,7 @@ .font-library-modal__font-card { border: 1px solid #e5e5e5; + height: auto; padding: 1rem; margin-top: -1px; /* To collapse the margin with the previous element */ From 8d4ed5f1802d9371f6b5b126718ce0f16c5b9b2e Mon Sep 17 00:00:00 2001 From: Sarah Norris Date: Thu, 7 Sep 2023 12:28:23 +0100 Subject: [PATCH 065/108] Fix linter errors --- .../components/global-styles/font-library-modal/font-demo.js | 5 ++--- .../global-styles/font-library-modal/fonts-grid.js | 3 +-- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/font-demo.js b/packages/edit-site/src/components/global-styles/font-library-modal/font-demo.js index 2b2e99ddde3ae..3cd69aa057013 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/font-demo.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/font-demo.js @@ -1,7 +1,6 @@ /** * WordPress dependencies */ -import { __ } from '@wordpress/i18n'; import { __experimentalText as Text } from '@wordpress/components'; import { useContext, useEffect, useState, useRef } from '@wordpress/element'; @@ -29,7 +28,7 @@ function FontFaceDemo( { fontFace, text, style = {} } ) { }; useEffect( () => { - const observer = new IntersectionObserver( ( [ entry ] ) => { + const observer = new window.IntersectionObserver( ( [ entry ] ) => { setIsIntersecting( entry.isIntersecting ); }, {} ); observer.observe( ref.current ); @@ -46,7 +45,7 @@ function FontFaceDemo( { fontFace, text, style = {} } ) { } }; loadAsset(); - }, [ fontFace, isIntersecting ] ); + }, [ fontFace, isIntersecting, loadFontFaceAsset ] ); return ( diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/fonts-grid.js b/packages/edit-site/src/components/global-styles/font-library-modal/fonts-grid.js index ec3c24ee94239..55e7a8a5cf393 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/fonts-grid.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/fonts-grid.js @@ -1,7 +1,6 @@ /** * WordPress dependencies */ -import { __ } from '@wordpress/i18n'; import { __experimentalVStack as VStack, __experimentalText as Text, @@ -17,7 +16,7 @@ function FontsGrid( { title, children, pageSize = 32 } ) { useEffect( () => { if ( lastItem ) { - const observer = new IntersectionObserver( ( [ entry ] ) => { + const observer = new window.IntersectionObserver( ( [ entry ] ) => { if ( entry.isIntersecting ) { setPage( ( prevPage ) => prevPage + 1 ); } From 71e651d8fab39b7a5cc8dc271176f3172a694153 Mon Sep 17 00:00:00 2001 From: Sarah Norris Date: Thu, 7 Sep 2023 12:29:52 +0100 Subject: [PATCH 066/108] Fix max depth error --- .../global-styles/font-library-modal/installed-fonts.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js b/packages/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js index 213fa4cf6f223..8db6e0f28977a 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js @@ -66,7 +66,7 @@ function InstalledFonts() { useEffect( () => { refreshLibrary(); - }, [ refreshLibrary ] ); + }, [] ); return ( Date: Thu, 7 Sep 2023 12:43:58 +0100 Subject: [PATCH 067/108] Revert font lib formatting --- packages/edit-site/lib/inflate.js | 7095 +++++++++----------- packages/edit-site/lib/lib-font.browser.js | 4 +- packages/edit-site/lib/unbrotli.js | 4246 +++++------- 3 files changed, 4948 insertions(+), 6397 deletions(-) diff --git a/packages/edit-site/lib/inflate.js b/packages/edit-site/lib/inflate.js index 6455f401137f7..084f03678549b 100644 --- a/packages/edit-site/lib/inflate.js +++ b/packages/edit-site/lib/inflate.js @@ -1,733 +1,572 @@ /* eslint eslint-comments/no-unlimited-disable: 0 */ /* eslint-disable */ -/* pako 1.0.10 nodeca/pako */ ( function ( f ) { - if ( typeof exports === 'object' && typeof module !== 'undefined' ) { - module.exports = f(); - } else if ( typeof define === 'function' && define.amd ) { - define( [], f ); - } else { - var g; - if ( typeof window !== 'undefined' ) { - g = window; - } else if ( typeof global !== 'undefined' ) { - g = global; - } else if ( typeof self !== 'undefined' ) { - g = self; - } else { - g = this; - } - g.pako = f(); - } -} )( function () { - var define, module, exports; - return ( function () { - function r( e, n, t ) { - function o( i, f ) { - if ( ! n[ i ] ) { - if ( ! e[ i ] ) { - var c = 'function' == typeof require && require; - if ( ! f && c ) return c( i, ! 0 ); - if ( u ) return u( i, ! 0 ); - var a = new Error( "Cannot find module '" + i + "'" ); - throw ( ( a.code = 'MODULE_NOT_FOUND' ), a ); - } - var p = ( n[ i ] = { exports: {} } ); - e[ i ][ 0 ].call( - p.exports, - function ( r ) { - var n = e[ i ][ 1 ][ r ]; - return o( n || r ); - }, - p, - p.exports, - r, - e, - n, - t - ); - } - return n[ i ].exports; - } - for ( - var u = 'function' == typeof require && require, i = 0; - i < t.length; - i++ - ) - o( t[ i ] ); - return o; - } - return r; - } )()( - { - 1: [ - function ( require, module, exports ) { - 'use strict'; - - var TYPED_OK = - typeof Uint8Array !== 'undefined' && - typeof Uint16Array !== 'undefined' && - typeof Int32Array !== 'undefined'; - - function _has( obj, key ) { - return Object.prototype.hasOwnProperty.call( obj, key ); - } - - exports.assign = function ( - obj /*from1, from2, from3, ...*/ - ) { - var sources = Array.prototype.slice.call( - arguments, - 1 - ); - while ( sources.length ) { - var source = sources.shift(); - if ( ! source ) { - continue; - } - - if ( typeof source !== 'object' ) { - throw new TypeError( - source + 'must be non-object' - ); - } - - for ( var p in source ) { - if ( _has( source, p ) ) { - obj[ p ] = source[ p ]; - } - } - } - - return obj; - }; - - // reduce buffer size, avoiding mem copy - exports.shrinkBuf = function ( buf, size ) { - if ( buf.length === size ) { - return buf; - } - if ( buf.subarray ) { - return buf.subarray( 0, size ); - } - buf.length = size; - return buf; - }; - - var fnTyped = { - arraySet: function ( - dest, - src, - src_offs, - len, - dest_offs - ) { - if ( src.subarray && dest.subarray ) { - dest.set( - src.subarray( src_offs, src_offs + len ), - dest_offs - ); - return; - } - // Fallback to ordinary array - for ( var i = 0; i < len; i++ ) { - dest[ dest_offs + i ] = src[ src_offs + i ]; - } - }, - // Join array of chunks to single array. - flattenChunks: function ( chunks ) { - var i, l, len, pos, chunk, result; - - // calculate data length - len = 0; - for ( i = 0, l = chunks.length; i < l; i++ ) { - len += chunks[ i ].length; - } - - // join chunks - result = new Uint8Array( len ); - pos = 0; - for ( i = 0, l = chunks.length; i < l; i++ ) { - chunk = chunks[ i ]; - result.set( chunk, pos ); - pos += chunk.length; - } - - return result; - }, - }; - - var fnUntyped = { - arraySet: function ( - dest, - src, - src_offs, - len, - dest_offs - ) { - for ( var i = 0; i < len; i++ ) { - dest[ dest_offs + i ] = src[ src_offs + i ]; - } - }, - // Join array of chunks to single array. - flattenChunks: function ( chunks ) { - return [].concat.apply( [], chunks ); - }, - }; - - // Enable/Disable typed arrays use, for testing - // - exports.setTyped = function ( on ) { - if ( on ) { - exports.Buf8 = Uint8Array; - exports.Buf16 = Uint16Array; - exports.Buf32 = Int32Array; - exports.assign( exports, fnTyped ); - } else { - exports.Buf8 = Array; - exports.Buf16 = Array; - exports.Buf32 = Array; - exports.assign( exports, fnUntyped ); - } - }; - - exports.setTyped( TYPED_OK ); - }, - {}, - ], - 2: [ - function ( require, module, exports ) { - // String encode/decode helpers - 'use strict'; - - var utils = require( './common' ); - - // Quick check if we can use fast array to bin string conversion - // - // - apply(Array) can fail on Android 2.2 - // - apply(Uint8Array) can fail on iOS 5.1 Safari - // - var STR_APPLY_OK = true; - var STR_APPLY_UIA_OK = true; - - try { - String.fromCharCode.apply( null, [ 0 ] ); - } catch ( __ ) { - STR_APPLY_OK = false; - } - try { - String.fromCharCode.apply( null, new Uint8Array( 1 ) ); - } catch ( __ ) { - STR_APPLY_UIA_OK = false; - } - - // Table with utf8 lengths (calculated by first byte of sequence) - // Note, that 5 & 6-byte values and some 4-byte values can not be represented in JS, - // because max possible codepoint is 0x10ffff - var _utf8len = new utils.Buf8( 256 ); - for ( var q = 0; q < 256; q++ ) { - _utf8len[ q ] = - q >= 252 - ? 6 - : q >= 248 - ? 5 - : q >= 240 - ? 4 - : q >= 224 - ? 3 - : q >= 192 - ? 2 - : 1; - } - _utf8len[ 254 ] = _utf8len[ 254 ] = 1; // Invalid sequence start - - // convert string to array (typed, when possible) - exports.string2buf = function ( str ) { - var buf, - c, - c2, - m_pos, - i, - str_len = str.length, - buf_len = 0; - - // count binary size - for ( m_pos = 0; m_pos < str_len; m_pos++ ) { - c = str.charCodeAt( m_pos ); - if ( - ( c & 0xfc00 ) === 0xd800 && - m_pos + 1 < str_len - ) { - c2 = str.charCodeAt( m_pos + 1 ); - if ( ( c2 & 0xfc00 ) === 0xdc00 ) { - c = - 0x10000 + - ( ( c - 0xd800 ) << 10 ) + - ( c2 - 0xdc00 ); - m_pos++; - } - } - buf_len += - c < 0x80 - ? 1 - : c < 0x800 - ? 2 - : c < 0x10000 - ? 3 - : 4; - } - - // allocate buffer - buf = new utils.Buf8( buf_len ); - - // convert - for ( i = 0, m_pos = 0; i < buf_len; m_pos++ ) { - c = str.charCodeAt( m_pos ); - if ( - ( c & 0xfc00 ) === 0xd800 && - m_pos + 1 < str_len - ) { - c2 = str.charCodeAt( m_pos + 1 ); - if ( ( c2 & 0xfc00 ) === 0xdc00 ) { - c = - 0x10000 + - ( ( c - 0xd800 ) << 10 ) + - ( c2 - 0xdc00 ); - m_pos++; - } - } - if ( c < 0x80 ) { - /* one byte */ - buf[ i++ ] = c; - } else if ( c < 0x800 ) { - /* two bytes */ - buf[ i++ ] = 0xc0 | ( c >>> 6 ); - buf[ i++ ] = 0x80 | ( c & 0x3f ); - } else if ( c < 0x10000 ) { - /* three bytes */ - buf[ i++ ] = 0xe0 | ( c >>> 12 ); - buf[ i++ ] = 0x80 | ( ( c >>> 6 ) & 0x3f ); - buf[ i++ ] = 0x80 | ( c & 0x3f ); - } else { - /* four bytes */ - buf[ i++ ] = 0xf0 | ( c >>> 18 ); - buf[ i++ ] = 0x80 | ( ( c >>> 12 ) & 0x3f ); - buf[ i++ ] = 0x80 | ( ( c >>> 6 ) & 0x3f ); - buf[ i++ ] = 0x80 | ( c & 0x3f ); - } - } - - return buf; - }; - - // Helper (used in 2 places) - function buf2binstring( buf, len ) { - // On Chrome, the arguments in a function call that are allowed is `65534`. - // If the length of the buffer is smaller than that, we can use this optimization, - // otherwise we will take a slower path. - if ( len < 65534 ) { - if ( - ( buf.subarray && STR_APPLY_UIA_OK ) || - ( ! buf.subarray && STR_APPLY_OK ) - ) { - return String.fromCharCode.apply( - null, - utils.shrinkBuf( buf, len ) - ); - } - } - - var result = ''; - for ( var i = 0; i < len; i++ ) { - result += String.fromCharCode( buf[ i ] ); - } - return result; - } - - // Convert byte array to binary string - exports.buf2binstring = function ( buf ) { - return buf2binstring( buf, buf.length ); - }; - - // Convert binary string (typed, when possible) - exports.binstring2buf = function ( str ) { - var buf = new utils.Buf8( str.length ); - for ( var i = 0, len = buf.length; i < len; i++ ) { - buf[ i ] = str.charCodeAt( i ); - } - return buf; - }; - - // convert array to string - exports.buf2string = function ( buf, max ) { - var i, out, c, c_len; - var len = max || buf.length; - - // Reserve max possible length (2 words per char) - // NB: by unknown reasons, Array is significantly faster for - // String.fromCharCode.apply than Uint16Array. - var utf16buf = new Array( len * 2 ); - - for ( out = 0, i = 0; i < len; ) { - c = buf[ i++ ]; - // quick process ascii - if ( c < 0x80 ) { - utf16buf[ out++ ] = c; - continue; - } - - c_len = _utf8len[ c ]; - // skip 5 & 6 byte codes - if ( c_len > 4 ) { - utf16buf[ out++ ] = 0xfffd; - i += c_len - 1; - continue; - } - - // apply mask on first byte - c &= c_len === 2 ? 0x1f : c_len === 3 ? 0x0f : 0x07; - // join the rest - while ( c_len > 1 && i < len ) { - c = ( c << 6 ) | ( buf[ i++ ] & 0x3f ); - c_len--; - } - - // terminated by end of string? - if ( c_len > 1 ) { - utf16buf[ out++ ] = 0xfffd; - continue; - } - - if ( c < 0x10000 ) { - utf16buf[ out++ ] = c; - } else { - c -= 0x10000; - utf16buf[ out++ ] = - 0xd800 | ( ( c >> 10 ) & 0x3ff ); - utf16buf[ out++ ] = 0xdc00 | ( c & 0x3ff ); - } - } - - return buf2binstring( utf16buf, out ); - }; - - // Calculate max possible position in utf8 buffer, - // that will not break sequence. If that's not possible - // - (very small limits) return max size as is. - // - // buf[] - utf8 bytes array - // max - length limit (mandatory); - exports.utf8border = function ( buf, max ) { - var pos; - - max = max || buf.length; - if ( max > buf.length ) { - max = buf.length; - } - - // go back from last position, until start of sequence found - pos = max - 1; - while ( pos >= 0 && ( buf[ pos ] & 0xc0 ) === 0x80 ) { - pos--; - } - - // Very small and broken sequence, - // return max, because we should return something anyway. - if ( pos < 0 ) { - return max; - } - - // If we came to start of buffer - that means buffer is too small, - // return max too. - if ( pos === 0 ) { - return max; - } - - return pos + _utf8len[ buf[ pos ] ] > max ? pos : max; - }; - }, - { './common': 1 }, - ], - 3: [ - function ( require, module, exports ) { - 'use strict'; - - // Note: adler32 takes 12% for level 0 and 2% for level 6. - // It isn't worth it to make additional optimizations as in original. - // Small size is preferable. - - // (C) 1995-2013 Jean-loup Gailly and Mark Adler - // (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin - // - // This software is provided 'as-is', without any express or implied - // warranty. In no event will the authors be held liable for any damages - // arising from the use of this software. - // - // Permission is granted to anyone to use this software for any purpose, - // including commercial applications, and to alter it and redistribute it - // freely, subject to the following restrictions: - // - // 1. The origin of this software must not be misrepresented; you must not - // claim that you wrote the original software. If you use this software - // in a product, an acknowledgment in the product documentation would be - // appreciated but is not required. - // 2. Altered source versions must be plainly marked as such, and must not be - // misrepresented as being the original software. - // 3. This notice may not be removed or altered from any source distribution. - - function adler32( adler, buf, len, pos ) { - var s1 = ( adler & 0xffff ) | 0, - s2 = ( ( adler >>> 16 ) & 0xffff ) | 0, - n = 0; - - while ( len !== 0 ) { - // Set limit ~ twice less than 5552, to keep - // s2 in 31-bits, because we force signed ints. - // in other case %= will fail. - n = len > 2000 ? 2000 : len; - len -= n; - - do { - s1 = ( s1 + buf[ pos++ ] ) | 0; - s2 = ( s2 + s1 ) | 0; - } while ( --n ); - - s1 %= 65521; - s2 %= 65521; - } - - return s1 | ( s2 << 16 ) | 0; - } - - module.exports = adler32; - }, - {}, - ], - 4: [ - function ( require, module, exports ) { - 'use strict'; - - // (C) 1995-2013 Jean-loup Gailly and Mark Adler - // (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin - // - // This software is provided 'as-is', without any express or implied - // warranty. In no event will the authors be held liable for any damages - // arising from the use of this software. - // - // Permission is granted to anyone to use this software for any purpose, - // including commercial applications, and to alter it and redistribute it - // freely, subject to the following restrictions: - // - // 1. The origin of this software must not be misrepresented; you must not - // claim that you wrote the original software. If you use this software - // in a product, an acknowledgment in the product documentation would be - // appreciated but is not required. - // 2. Altered source versions must be plainly marked as such, and must not be - // misrepresented as being the original software. - // 3. This notice may not be removed or altered from any source distribution. - - module.exports = { - /* Allowed flush values; see deflate() and inflate() below for details */ - Z_NO_FLUSH: 0, - Z_PARTIAL_FLUSH: 1, - Z_SYNC_FLUSH: 2, - Z_FULL_FLUSH: 3, - Z_FINISH: 4, - Z_BLOCK: 5, - Z_TREES: 6, - - /* Return codes for the compression/decompression functions. Negative values - * are errors, positive values are used for special but normal events. - */ - Z_OK: 0, - Z_STREAM_END: 1, - Z_NEED_DICT: 2, - Z_ERRNO: -1, - Z_STREAM_ERROR: -2, - Z_DATA_ERROR: -3, - //Z_MEM_ERROR: -4, - Z_BUF_ERROR: -5, - //Z_VERSION_ERROR: -6, - - /* compression levels */ - Z_NO_COMPRESSION: 0, - Z_BEST_SPEED: 1, - Z_BEST_COMPRESSION: 9, - Z_DEFAULT_COMPRESSION: -1, - - Z_FILTERED: 1, - Z_HUFFMAN_ONLY: 2, - Z_RLE: 3, - Z_FIXED: 4, - Z_DEFAULT_STRATEGY: 0, - - /* Possible values of the data_type field (though see inflate()) */ - Z_BINARY: 0, - Z_TEXT: 1, - //Z_ASCII: 1, // = Z_TEXT (deprecated) - Z_UNKNOWN: 2, - - /* The deflate compression method */ - Z_DEFLATED: 8, - //Z_NULL: null // Use -1 or null inline, depending on var type - }; - }, - {}, - ], - 5: [ - function ( require, module, exports ) { - 'use strict'; - - // Note: we can't get significant speed boost here. - // So write code to minimize size - no pregenerated tables - // and array tools dependencies. - - // (C) 1995-2013 Jean-loup Gailly and Mark Adler - // (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin - // - // This software is provided 'as-is', without any express or implied - // warranty. In no event will the authors be held liable for any damages - // arising from the use of this software. - // - // Permission is granted to anyone to use this software for any purpose, - // including commercial applications, and to alter it and redistribute it - // freely, subject to the following restrictions: - // - // 1. The origin of this software must not be misrepresented; you must not - // claim that you wrote the original software. If you use this software - // in a product, an acknowledgment in the product documentation would be - // appreciated but is not required. - // 2. Altered source versions must be plainly marked as such, and must not be - // misrepresented as being the original software. - // 3. This notice may not be removed or altered from any source distribution. - - // Use ordinary array, since untyped makes no boost here - function makeTable() { - var c, - table = []; - - for ( var n = 0; n < 256; n++ ) { - c = n; - for ( var k = 0; k < 8; k++ ) { - c = c & 1 ? 0xedb88320 ^ ( c >>> 1 ) : c >>> 1; - } - table[ n ] = c; - } - - return table; - } - - // Create table on load. Just 255 signed longs. Not a problem. - var crcTable = makeTable(); - - function crc32( crc, buf, len, pos ) { - var t = crcTable, - end = pos + len; - - crc ^= -1; - - for ( var i = pos; i < end; i++ ) { - crc = - ( crc >>> 8 ) ^ t[ ( crc ^ buf[ i ] ) & 0xff ]; - } - - return crc ^ -1; // >>> 0; - } - - module.exports = crc32; - }, - {}, - ], - 6: [ - function ( require, module, exports ) { - 'use strict'; - - // (C) 1995-2013 Jean-loup Gailly and Mark Adler - // (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin - // - // This software is provided 'as-is', without any express or implied - // warranty. In no event will the authors be held liable for any damages - // arising from the use of this software. - // - // Permission is granted to anyone to use this software for any purpose, - // including commercial applications, and to alter it and redistribute it - // freely, subject to the following restrictions: - // - // 1. The origin of this software must not be misrepresented; you must not - // claim that you wrote the original software. If you use this software - // in a product, an acknowledgment in the product documentation would be - // appreciated but is not required. - // 2. Altered source versions must be plainly marked as such, and must not be - // misrepresented as being the original software. - // 3. This notice may not be removed or altered from any source distribution. - - function GZheader() { - /* true if compressed data believed to be text */ - this.text = 0; - /* modification time */ - this.time = 0; - /* extra flags (not used when writing a gzip file) */ - this.xflags = 0; - /* operating system */ - this.os = 0; - /* pointer to extra field or Z_NULL if none */ - this.extra = null; - /* extra field length (valid if extra != Z_NULL) */ - this.extra_len = 0; // Actually, we don't need it in JS, - // but leave for few code modifications - - // - // Setup limits is not necessary because in js we should not preallocate memory - // for inflate use constant limit in 65536 bytes - // - - /* space at extra (only when reading header) */ - // this.extra_max = 0; - /* pointer to zero-terminated file name or Z_NULL */ - this.name = ''; - /* space at name (only when reading header) */ - // this.name_max = 0; - /* pointer to zero-terminated comment or Z_NULL */ - this.comment = ''; - /* space at comment (only when reading header) */ - // this.comm_max = 0; - /* true if there was or will be a header crc */ - this.hcrc = 0; - /* true when done reading gzip header (not used when writing a gzip file) */ - this.done = false; - } - - module.exports = GZheader; - }, - {}, - ], - 7: [ - function ( require, module, exports ) { - 'use strict'; - - // (C) 1995-2013 Jean-loup Gailly and Mark Adler - // (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin - // - // This software is provided 'as-is', without any express or implied - // warranty. In no event will the authors be held liable for any damages - // arising from the use of this software. - // - // Permission is granted to anyone to use this software for any purpose, - // including commercial applications, and to alter it and redistribute it - // freely, subject to the following restrictions: - // - // 1. The origin of this software must not be misrepresented; you must not - // claim that you wrote the original software. If you use this software - // in a product, an acknowledgment in the product documentation would be - // appreciated but is not required. - // 2. Altered source versions must be plainly marked as such, and must not be - // misrepresented as being the original software. - // 3. This notice may not be removed or altered from any source distribution. - - // See state defs from inflate.js - var BAD = 30; /* got a data error -- remain here until reset */ - var TYPE = 12; /* i: waiting for type bits, including last-flag bit */ - - /* +/* pako 1.0.10 nodeca/pako */(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.pako = f()}})(function(){var define,module,exports;return (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i= 252 ? 6 : q >= 248 ? 5 : q >= 240 ? 4 : q >= 224 ? 3 : q >= 192 ? 2 : 1); + } + _utf8len[254] = _utf8len[254] = 1; // Invalid sequence start + + + // convert string to array (typed, when possible) + exports.string2buf = function (str) { + var buf, c, c2, m_pos, i, str_len = str.length, buf_len = 0; + + // count binary size + for (m_pos = 0; m_pos < str_len; m_pos++) { + c = str.charCodeAt(m_pos); + if ((c & 0xfc00) === 0xd800 && (m_pos + 1 < str_len)) { + c2 = str.charCodeAt(m_pos + 1); + if ((c2 & 0xfc00) === 0xdc00) { + c = 0x10000 + ((c - 0xd800) << 10) + (c2 - 0xdc00); + m_pos++; + } + } + buf_len += c < 0x80 ? 1 : c < 0x800 ? 2 : c < 0x10000 ? 3 : 4; + } + + // allocate buffer + buf = new utils.Buf8(buf_len); + + // convert + for (i = 0, m_pos = 0; i < buf_len; m_pos++) { + c = str.charCodeAt(m_pos); + if ((c & 0xfc00) === 0xd800 && (m_pos + 1 < str_len)) { + c2 = str.charCodeAt(m_pos + 1); + if ((c2 & 0xfc00) === 0xdc00) { + c = 0x10000 + ((c - 0xd800) << 10) + (c2 - 0xdc00); + m_pos++; + } + } + if (c < 0x80) { + /* one byte */ + buf[i++] = c; + } else if (c < 0x800) { + /* two bytes */ + buf[i++] = 0xC0 | (c >>> 6); + buf[i++] = 0x80 | (c & 0x3f); + } else if (c < 0x10000) { + /* three bytes */ + buf[i++] = 0xE0 | (c >>> 12); + buf[i++] = 0x80 | (c >>> 6 & 0x3f); + buf[i++] = 0x80 | (c & 0x3f); + } else { + /* four bytes */ + buf[i++] = 0xf0 | (c >>> 18); + buf[i++] = 0x80 | (c >>> 12 & 0x3f); + buf[i++] = 0x80 | (c >>> 6 & 0x3f); + buf[i++] = 0x80 | (c & 0x3f); + } + } + + return buf; + }; + + // Helper (used in 2 places) + function buf2binstring(buf, len) { + // On Chrome, the arguments in a function call that are allowed is `65534`. + // If the length of the buffer is smaller than that, we can use this optimization, + // otherwise we will take a slower path. + if (len < 65534) { + if ((buf.subarray && STR_APPLY_UIA_OK) || (!buf.subarray && STR_APPLY_OK)) { + return String.fromCharCode.apply(null, utils.shrinkBuf(buf, len)); + } + } + + var result = ''; + for (var i = 0; i < len; i++) { + result += String.fromCharCode(buf[i]); + } + return result; + } + + + // Convert byte array to binary string + exports.buf2binstring = function (buf) { + return buf2binstring(buf, buf.length); + }; + + + // Convert binary string (typed, when possible) + exports.binstring2buf = function (str) { + var buf = new utils.Buf8(str.length); + for (var i = 0, len = buf.length; i < len; i++) { + buf[i] = str.charCodeAt(i); + } + return buf; + }; + + + // convert array to string + exports.buf2string = function (buf, max) { + var i, out, c, c_len; + var len = max || buf.length; + + // Reserve max possible length (2 words per char) + // NB: by unknown reasons, Array is significantly faster for + // String.fromCharCode.apply than Uint16Array. + var utf16buf = new Array(len * 2); + + for (out = 0, i = 0; i < len;) { + c = buf[i++]; + // quick process ascii + if (c < 0x80) { utf16buf[out++] = c; continue; } + + c_len = _utf8len[c]; + // skip 5 & 6 byte codes + if (c_len > 4) { utf16buf[out++] = 0xfffd; i += c_len - 1; continue; } + + // apply mask on first byte + c &= c_len === 2 ? 0x1f : c_len === 3 ? 0x0f : 0x07; + // join the rest + while (c_len > 1 && i < len) { + c = (c << 6) | (buf[i++] & 0x3f); + c_len--; + } + + // terminated by end of string? + if (c_len > 1) { utf16buf[out++] = 0xfffd; continue; } + + if (c < 0x10000) { + utf16buf[out++] = c; + } else { + c -= 0x10000; + utf16buf[out++] = 0xd800 | ((c >> 10) & 0x3ff); + utf16buf[out++] = 0xdc00 | (c & 0x3ff); + } + } + + return buf2binstring(utf16buf, out); + }; + + + // Calculate max possible position in utf8 buffer, + // that will not break sequence. If that's not possible + // - (very small limits) return max size as is. + // + // buf[] - utf8 bytes array + // max - length limit (mandatory); + exports.utf8border = function (buf, max) { + var pos; + + max = max || buf.length; + if (max > buf.length) { max = buf.length; } + + // go back from last position, until start of sequence found + pos = max - 1; + while (pos >= 0 && (buf[pos] & 0xC0) === 0x80) { pos--; } + + // Very small and broken sequence, + // return max, because we should return something anyway. + if (pos < 0) { return max; } + + // If we came to start of buffer - that means buffer is too small, + // return max too. + if (pos === 0) { return max; } + + return (pos + _utf8len[buf[pos]] > max) ? pos : max; + }; + + },{"./common":1}],3:[function(require,module,exports){ + 'use strict'; + + // Note: adler32 takes 12% for level 0 and 2% for level 6. + // It isn't worth it to make additional optimizations as in original. + // Small size is preferable. + + // (C) 1995-2013 Jean-loup Gailly and Mark Adler + // (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin + // + // This software is provided 'as-is', without any express or implied + // warranty. In no event will the authors be held liable for any damages + // arising from the use of this software. + // + // Permission is granted to anyone to use this software for any purpose, + // including commercial applications, and to alter it and redistribute it + // freely, subject to the following restrictions: + // + // 1. The origin of this software must not be misrepresented; you must not + // claim that you wrote the original software. If you use this software + // in a product, an acknowledgment in the product documentation would be + // appreciated but is not required. + // 2. Altered source versions must be plainly marked as such, and must not be + // misrepresented as being the original software. + // 3. This notice may not be removed or altered from any source distribution. + + function adler32(adler, buf, len, pos) { + var s1 = (adler & 0xffff) |0, + s2 = ((adler >>> 16) & 0xffff) |0, + n = 0; + + while (len !== 0) { + // Set limit ~ twice less than 5552, to keep + // s2 in 31-bits, because we force signed ints. + // in other case %= will fail. + n = len > 2000 ? 2000 : len; + len -= n; + + do { + s1 = (s1 + buf[pos++]) |0; + s2 = (s2 + s1) |0; + } while (--n); + + s1 %= 65521; + s2 %= 65521; + } + + return (s1 | (s2 << 16)) |0; + } + + + module.exports = adler32; + + },{}],4:[function(require,module,exports){ + 'use strict'; + + // (C) 1995-2013 Jean-loup Gailly and Mark Adler + // (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin + // + // This software is provided 'as-is', without any express or implied + // warranty. In no event will the authors be held liable for any damages + // arising from the use of this software. + // + // Permission is granted to anyone to use this software for any purpose, + // including commercial applications, and to alter it and redistribute it + // freely, subject to the following restrictions: + // + // 1. The origin of this software must not be misrepresented; you must not + // claim that you wrote the original software. If you use this software + // in a product, an acknowledgment in the product documentation would be + // appreciated but is not required. + // 2. Altered source versions must be plainly marked as such, and must not be + // misrepresented as being the original software. + // 3. This notice may not be removed or altered from any source distribution. + + module.exports = { + + /* Allowed flush values; see deflate() and inflate() below for details */ + Z_NO_FLUSH: 0, + Z_PARTIAL_FLUSH: 1, + Z_SYNC_FLUSH: 2, + Z_FULL_FLUSH: 3, + Z_FINISH: 4, + Z_BLOCK: 5, + Z_TREES: 6, + + /* Return codes for the compression/decompression functions. Negative values + * are errors, positive values are used for special but normal events. + */ + Z_OK: 0, + Z_STREAM_END: 1, + Z_NEED_DICT: 2, + Z_ERRNO: -1, + Z_STREAM_ERROR: -2, + Z_DATA_ERROR: -3, + //Z_MEM_ERROR: -4, + Z_BUF_ERROR: -5, + //Z_VERSION_ERROR: -6, + + /* compression levels */ + Z_NO_COMPRESSION: 0, + Z_BEST_SPEED: 1, + Z_BEST_COMPRESSION: 9, + Z_DEFAULT_COMPRESSION: -1, + + + Z_FILTERED: 1, + Z_HUFFMAN_ONLY: 2, + Z_RLE: 3, + Z_FIXED: 4, + Z_DEFAULT_STRATEGY: 0, + + /* Possible values of the data_type field (though see inflate()) */ + Z_BINARY: 0, + Z_TEXT: 1, + //Z_ASCII: 1, // = Z_TEXT (deprecated) + Z_UNKNOWN: 2, + + /* The deflate compression method */ + Z_DEFLATED: 8 + //Z_NULL: null // Use -1 or null inline, depending on var type + }; + + },{}],5:[function(require,module,exports){ + 'use strict'; + + // Note: we can't get significant speed boost here. + // So write code to minimize size - no pregenerated tables + // and array tools dependencies. + + // (C) 1995-2013 Jean-loup Gailly and Mark Adler + // (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin + // + // This software is provided 'as-is', without any express or implied + // warranty. In no event will the authors be held liable for any damages + // arising from the use of this software. + // + // Permission is granted to anyone to use this software for any purpose, + // including commercial applications, and to alter it and redistribute it + // freely, subject to the following restrictions: + // + // 1. The origin of this software must not be misrepresented; you must not + // claim that you wrote the original software. If you use this software + // in a product, an acknowledgment in the product documentation would be + // appreciated but is not required. + // 2. Altered source versions must be plainly marked as such, and must not be + // misrepresented as being the original software. + // 3. This notice may not be removed or altered from any source distribution. + + // Use ordinary array, since untyped makes no boost here + function makeTable() { + var c, table = []; + + for (var n = 0; n < 256; n++) { + c = n; + for (var k = 0; k < 8; k++) { + c = ((c & 1) ? (0xEDB88320 ^ (c >>> 1)) : (c >>> 1)); + } + table[n] = c; + } + + return table; + } + + // Create table on load. Just 255 signed longs. Not a problem. + var crcTable = makeTable(); + + + function crc32(crc, buf, len, pos) { + var t = crcTable, + end = pos + len; + + crc ^= -1; + + for (var i = pos; i < end; i++) { + crc = (crc >>> 8) ^ t[(crc ^ buf[i]) & 0xFF]; + } + + return (crc ^ (-1)); // >>> 0; + } + + + module.exports = crc32; + + },{}],6:[function(require,module,exports){ + 'use strict'; + + // (C) 1995-2013 Jean-loup Gailly and Mark Adler + // (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin + // + // This software is provided 'as-is', without any express or implied + // warranty. In no event will the authors be held liable for any damages + // arising from the use of this software. + // + // Permission is granted to anyone to use this software for any purpose, + // including commercial applications, and to alter it and redistribute it + // freely, subject to the following restrictions: + // + // 1. The origin of this software must not be misrepresented; you must not + // claim that you wrote the original software. If you use this software + // in a product, an acknowledgment in the product documentation would be + // appreciated but is not required. + // 2. Altered source versions must be plainly marked as such, and must not be + // misrepresented as being the original software. + // 3. This notice may not be removed or altered from any source distribution. + + function GZheader() { + /* true if compressed data believed to be text */ + this.text = 0; + /* modification time */ + this.time = 0; + /* extra flags (not used when writing a gzip file) */ + this.xflags = 0; + /* operating system */ + this.os = 0; + /* pointer to extra field or Z_NULL if none */ + this.extra = null; + /* extra field length (valid if extra != Z_NULL) */ + this.extra_len = 0; // Actually, we don't need it in JS, + // but leave for few code modifications + + // + // Setup limits is not necessary because in js we should not preallocate memory + // for inflate use constant limit in 65536 bytes + // + + /* space at extra (only when reading header) */ + // this.extra_max = 0; + /* pointer to zero-terminated file name or Z_NULL */ + this.name = ''; + /* space at name (only when reading header) */ + // this.name_max = 0; + /* pointer to zero-terminated comment or Z_NULL */ + this.comment = ''; + /* space at comment (only when reading header) */ + // this.comm_max = 0; + /* true if there was or will be a header crc */ + this.hcrc = 0; + /* true when done reading gzip header (not used when writing a gzip file) */ + this.done = false; + } + + module.exports = GZheader; + + },{}],7:[function(require,module,exports){ + 'use strict'; + + // (C) 1995-2013 Jean-loup Gailly and Mark Adler + // (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin + // + // This software is provided 'as-is', without any express or implied + // warranty. In no event will the authors be held liable for any damages + // arising from the use of this software. + // + // Permission is granted to anyone to use this software for any purpose, + // including commercial applications, and to alter it and redistribute it + // freely, subject to the following restrictions: + // + // 1. The origin of this software must not be misrepresented; you must not + // claim that you wrote the original software. If you use this software + // in a product, an acknowledgment in the product documentation would be + // appreciated but is not required. + // 2. Altered source versions must be plainly marked as such, and must not be + // misrepresented as being the original software. + // 3. This notice may not be removed or altered from any source distribution. + + // See state defs from inflate.js + var BAD = 30; /* got a data error -- remain here until reset */ + var TYPE = 12; /* i: waiting for type bits, including last-flag bit */ + + /* Decode literal, length, and distance codes and write out the resulting literal and match bytes until either not enough input or output is available, an end-of-block is encountered, or a data error is encountered. @@ -762,656 +601,570 @@ requires strm.avail_out >= 258 for each loop to avoid checking for output space. */ - module.exports = function inflate_fast( strm, start ) { - var state; - var _in; /* local strm.input */ - var last; /* have enough input while in < last */ - var _out; /* local strm.output */ - var beg; /* inflate()'s initial strm.output */ - var end; /* while out < end, enough space available */ - //#ifdef INFLATE_STRICT - var dmax; /* maximum distance from zlib header */ - //#endif - var wsize; /* window size or zero if not using window */ - var whave; /* valid bytes in the window */ - var wnext; /* window write index */ - // Use `s_window` instead `window`, avoid conflict with instrumentation tools - var s_window; /* allocated sliding window, if wsize != 0 */ - var hold; /* local strm.hold */ - var bits; /* local strm.bits */ - var lcode; /* local strm.lencode */ - var dcode; /* local strm.distcode */ - var lmask; /* mask for first level of length codes */ - var dmask; /* mask for first level of distance codes */ - var here; /* retrieved table entry */ - var op; /* code bits, operation, extra bits, or */ - /* window position, window bytes to copy */ - var len; /* match length, unused bytes */ - var dist; /* match distance */ - var from; /* where to copy match from */ - var from_source; - - var input, output; // JS specific, because we have no pointers - - /* copy state to local variables */ - state = strm.state; - //here = state.here; - _in = strm.next_in; - input = strm.input; - last = _in + ( strm.avail_in - 5 ); - _out = strm.next_out; - output = strm.output; - beg = _out - ( start - strm.avail_out ); - end = _out + ( strm.avail_out - 257 ); - //#ifdef INFLATE_STRICT - dmax = state.dmax; - //#endif - wsize = state.wsize; - whave = state.whave; - wnext = state.wnext; - s_window = state.window; - hold = state.hold; - bits = state.bits; - lcode = state.lencode; - dcode = state.distcode; - lmask = ( 1 << state.lenbits ) - 1; - dmask = ( 1 << state.distbits ) - 1; - - /* decode literals and length/distances until end-of-block or not enough + module.exports = function inflate_fast(strm, start) { + var state; + var _in; /* local strm.input */ + var last; /* have enough input while in < last */ + var _out; /* local strm.output */ + var beg; /* inflate()'s initial strm.output */ + var end; /* while out < end, enough space available */ + //#ifdef INFLATE_STRICT + var dmax; /* maximum distance from zlib header */ + //#endif + var wsize; /* window size or zero if not using window */ + var whave; /* valid bytes in the window */ + var wnext; /* window write index */ + // Use `s_window` instead `window`, avoid conflict with instrumentation tools + var s_window; /* allocated sliding window, if wsize != 0 */ + var hold; /* local strm.hold */ + var bits; /* local strm.bits */ + var lcode; /* local strm.lencode */ + var dcode; /* local strm.distcode */ + var lmask; /* mask for first level of length codes */ + var dmask; /* mask for first level of distance codes */ + var here; /* retrieved table entry */ + var op; /* code bits, operation, extra bits, or */ + /* window position, window bytes to copy */ + var len; /* match length, unused bytes */ + var dist; /* match distance */ + var from; /* where to copy match from */ + var from_source; + + + var input, output; // JS specific, because we have no pointers + + /* copy state to local variables */ + state = strm.state; + //here = state.here; + _in = strm.next_in; + input = strm.input; + last = _in + (strm.avail_in - 5); + _out = strm.next_out; + output = strm.output; + beg = _out - (start - strm.avail_out); + end = _out + (strm.avail_out - 257); + //#ifdef INFLATE_STRICT + dmax = state.dmax; + //#endif + wsize = state.wsize; + whave = state.whave; + wnext = state.wnext; + s_window = state.window; + hold = state.hold; + bits = state.bits; + lcode = state.lencode; + dcode = state.distcode; + lmask = (1 << state.lenbits) - 1; + dmask = (1 << state.distbits) - 1; + + + /* decode literals and length/distances until end-of-block or not enough input data or output space */ - top: do { - if ( bits < 15 ) { - hold += input[ _in++ ] << bits; - bits += 8; - hold += input[ _in++ ] << bits; - bits += 8; - } - - here = lcode[ hold & lmask ]; - - dolen: for (;;) { - // Goto emulation - op = here >>> 24 /*here.bits*/; - hold >>>= op; - bits -= op; - op = ( here >>> 16 ) & 0xff /*here.op*/; - if ( op === 0 ) { - /* literal */ - //Tracevv((stderr, here.val >= 0x20 && here.val < 0x7f ? - // "inflate: literal '%c'\n" : - // "inflate: literal 0x%02x\n", here.val)); - output[ _out++ ] = - here & 0xffff /*here.val*/; - } else if ( op & 16 ) { - /* length base */ - len = here & 0xffff /*here.val*/; - op &= 15; /* number of extra bits */ - if ( op ) { - if ( bits < op ) { - hold += input[ _in++ ] << bits; - bits += 8; - } - len += hold & ( ( 1 << op ) - 1 ); - hold >>>= op; - bits -= op; - } - //Tracevv((stderr, "inflate: length %u\n", len)); - if ( bits < 15 ) { - hold += input[ _in++ ] << bits; - bits += 8; - hold += input[ _in++ ] << bits; - bits += 8; - } - here = dcode[ hold & dmask ]; - - dodist: for (;;) { - // goto emulation - op = here >>> 24 /*here.bits*/; - hold >>>= op; - bits -= op; - op = ( here >>> 16 ) & 0xff /*here.op*/; - - if ( op & 16 ) { - /* distance base */ - dist = here & 0xffff /*here.val*/; - op &= 15; /* number of extra bits */ - if ( bits < op ) { - hold += input[ _in++ ] << bits; - bits += 8; - if ( bits < op ) { - hold += - input[ _in++ ] << bits; - bits += 8; - } - } - dist += hold & ( ( 1 << op ) - 1 ); - //#ifdef INFLATE_STRICT - if ( dist > dmax ) { - strm.msg = - 'invalid distance too far back'; - state.mode = BAD; - break top; - } - //#endif - hold >>>= op; - bits -= op; - //Tracevv((stderr, "inflate: distance %u\n", dist)); - op = - _out - - beg; /* max distance in output */ - if ( dist > op ) { - /* see if copy from window */ - op = - dist - - op; /* distance back in window */ - if ( op > whave ) { - if ( state.sane ) { - strm.msg = - 'invalid distance too far back'; - state.mode = BAD; - break top; - } - - // (!) This block is disabled in zlib defaults, - // don't enable it for binary compatibility - //#ifdef INFLATE_ALLOW_INVALID_DISTANCE_TOOFAR_ARRR - // if (len <= op - whave) { - // do { - // output[_out++] = 0; - // } while (--len); - // continue top; - // } - // len -= op - whave; - // do { - // output[_out++] = 0; - // } while (--op > whave); - // if (op === 0) { - // from = _out - dist; - // do { - // output[_out++] = output[from++]; - // } while (--len); - // continue top; - // } - //#endif - } - from = 0; // window index - from_source = s_window; - if ( wnext === 0 ) { - /* very common case */ - from += wsize - op; - if ( op < len ) { - /* some from window */ - len -= op; - do { - output[ _out++ ] = - s_window[ - from++ - ]; - } while ( --op ); - from = - _out - - dist; /* rest from output */ - from_source = output; - } - } else if ( wnext < op ) { - /* wrap around window */ - from += wsize + wnext - op; - op -= wnext; - if ( op < len ) { - /* some from end of window */ - len -= op; - do { - output[ _out++ ] = - s_window[ - from++ - ]; - } while ( --op ); - from = 0; - if ( wnext < len ) { - /* some from start of window */ - op = wnext; - len -= op; - do { - output[ - _out++ - ] = - s_window[ - from++ - ]; - } while ( --op ); - from = - _out - - dist; /* rest from output */ - from_source = - output; - } - } - } else { - /* contiguous in window */ - from += wnext - op; - if ( op < len ) { - /* some from window */ - len -= op; - do { - output[ _out++ ] = - s_window[ - from++ - ]; - } while ( --op ); - from = - _out - - dist; /* rest from output */ - from_source = output; - } - } - while ( len > 2 ) { - output[ _out++ ] = - from_source[ from++ ]; - output[ _out++ ] = - from_source[ from++ ]; - output[ _out++ ] = - from_source[ from++ ]; - len -= 3; - } - if ( len ) { - output[ _out++ ] = - from_source[ from++ ]; - if ( len > 1 ) { - output[ _out++ ] = - from_source[ - from++ - ]; - } - } - } else { - from = - _out - - dist; /* copy direct from output */ - do { - /* minimum length is three */ - output[ _out++ ] = - output[ from++ ]; - output[ _out++ ] = - output[ from++ ]; - output[ _out++ ] = - output[ from++ ]; - len -= 3; - } while ( len > 2 ); - if ( len ) { - output[ _out++ ] = - output[ from++ ]; - if ( len > 1 ) { - output[ _out++ ] = - output[ from++ ]; - } - } - } - } else if ( ( op & 64 ) === 0 ) { - /* 2nd level distance code */ - here = - dcode[ - ( here & - 0xffff ) /*here.val*/ + - ( hold & - ( ( 1 << op ) - - 1 ) ) - ]; - continue dodist; - } else { - strm.msg = 'invalid distance code'; - state.mode = BAD; - break top; - } - - break; // need to emulate goto via "continue" - } - } else if ( ( op & 64 ) === 0 ) { - /* 2nd level length code */ - here = - lcode[ - ( here & 0xffff ) /*here.val*/ + - ( hold & ( ( 1 << op ) - 1 ) ) - ]; - continue dolen; - } else if ( op & 32 ) { - /* end-of-block */ - //Tracevv((stderr, "inflate: end of block\n")); - state.mode = TYPE; - break top; - } else { - strm.msg = 'invalid literal/length code'; - state.mode = BAD; - break top; - } - - break; // need to emulate goto via "continue" - } - } while ( _in < last && _out < end ); - - /* return unused bytes (on entry, bits < 8, so in won't go too far back) */ - len = bits >> 3; - _in -= len; - bits -= len << 3; - hold &= ( 1 << bits ) - 1; - - /* update state and return */ - strm.next_in = _in; - strm.next_out = _out; - strm.avail_in = - _in < last - ? 5 + ( last - _in ) - : 5 - ( _in - last ); - strm.avail_out = - _out < end - ? 257 + ( end - _out ) - : 257 - ( _out - end ); - state.hold = hold; - state.bits = bits; - return; - }; - }, - {}, - ], - 8: [ - function ( require, module, exports ) { - 'use strict'; - - // (C) 1995-2013 Jean-loup Gailly and Mark Adler - // (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin - // - // This software is provided 'as-is', without any express or implied - // warranty. In no event will the authors be held liable for any damages - // arising from the use of this software. - // - // Permission is granted to anyone to use this software for any purpose, - // including commercial applications, and to alter it and redistribute it - // freely, subject to the following restrictions: - // - // 1. The origin of this software must not be misrepresented; you must not - // claim that you wrote the original software. If you use this software - // in a product, an acknowledgment in the product documentation would be - // appreciated but is not required. - // 2. Altered source versions must be plainly marked as such, and must not be - // misrepresented as being the original software. - // 3. This notice may not be removed or altered from any source distribution. - - var utils = require( '../utils/common' ); - var adler32 = require( './adler32' ); - var crc32 = require( './crc32' ); - var inflate_fast = require( './inffast' ); - var inflate_table = require( './inftrees' ); - - var CODES = 0; - var LENS = 1; - var DISTS = 2; - - /* Public constants ==========================================================*/ - /* ===========================================================================*/ - - /* Allowed flush values; see deflate() and inflate() below for details */ - //var Z_NO_FLUSH = 0; - //var Z_PARTIAL_FLUSH = 1; - //var Z_SYNC_FLUSH = 2; - //var Z_FULL_FLUSH = 3; - var Z_FINISH = 4; - var Z_BLOCK = 5; - var Z_TREES = 6; - - /* Return codes for the compression/decompression functions. Negative values - * are errors, positive values are used for special but normal events. - */ - var Z_OK = 0; - var Z_STREAM_END = 1; - var Z_NEED_DICT = 2; - //var Z_ERRNO = -1; - var Z_STREAM_ERROR = -2; - var Z_DATA_ERROR = -3; - var Z_MEM_ERROR = -4; - var Z_BUF_ERROR = -5; - //var Z_VERSION_ERROR = -6; - - /* The deflate compression method */ - var Z_DEFLATED = 8; - - /* STATES ====================================================================*/ - /* ===========================================================================*/ - - var HEAD = 1; /* i: waiting for magic header */ - var FLAGS = 2; /* i: waiting for method and flags (gzip) */ - var TIME = 3; /* i: waiting for modification time (gzip) */ - var OS = 4; /* i: waiting for extra flags and operating system (gzip) */ - var EXLEN = 5; /* i: waiting for extra length (gzip) */ - var EXTRA = 6; /* i: waiting for extra bytes (gzip) */ - var NAME = 7; /* i: waiting for end of file name (gzip) */ - var COMMENT = 8; /* i: waiting for end of comment (gzip) */ - var HCRC = 9; /* i: waiting for header crc (gzip) */ - var DICTID = 10; /* i: waiting for dictionary check value */ - var DICT = 11; /* waiting for inflateSetDictionary() call */ - var TYPE = 12; /* i: waiting for type bits, including last-flag bit */ - var TYPEDO = 13; /* i: same, but skip check to exit inflate on new block */ - var STORED = 14; /* i: waiting for stored size (length and complement) */ - var COPY_ = 15; /* i/o: same as COPY below, but only first time in */ - var COPY = 16; /* i/o: waiting for input or output to copy stored block */ - var TABLE = 17; /* i: waiting for dynamic block table lengths */ - var LENLENS = 18; /* i: waiting for code length code lengths */ - var CODELENS = 19; /* i: waiting for length/lit and distance code lengths */ - var LEN_ = 20; /* i: same as LEN below, but only first time in */ - var LEN = 21; /* i: waiting for length/lit/eob code */ - var LENEXT = 22; /* i: waiting for length extra bits */ - var DIST = 23; /* i: waiting for distance code */ - var DISTEXT = 24; /* i: waiting for distance extra bits */ - var MATCH = 25; /* o: waiting for output space to copy string */ - var LIT = 26; /* o: waiting for output space to write literal */ - var CHECK = 27; /* i: waiting for 32-bit check value */ - var LENGTH = 28; /* i: waiting for 32-bit length (gzip) */ - var DONE = 29; /* finished check, done -- remain here until reset */ - var BAD = 30; /* got a data error -- remain here until reset */ - var MEM = 31; /* got an inflate() memory error -- remain here until reset */ - var SYNC = 32; /* looking for synchronization bytes to restart inflate() */ - - /* ===========================================================================*/ - - var ENOUGH_LENS = 852; - var ENOUGH_DISTS = 592; - //var ENOUGH = (ENOUGH_LENS+ENOUGH_DISTS); - - var MAX_WBITS = 15; - /* 32K LZ77 window */ - var DEF_WBITS = MAX_WBITS; - - function zswap32( q ) { - return ( - ( ( q >>> 24 ) & 0xff ) + - ( ( q >>> 8 ) & 0xff00 ) + - ( ( q & 0xff00 ) << 8 ) + - ( ( q & 0xff ) << 24 ) - ); - } - - function InflateState() { - this.mode = 0; /* current inflate mode */ - this.last = false; /* true if processing last block */ - this.wrap = 0; /* bit 0 true for zlib, bit 1 true for gzip */ - this.havedict = false; /* true if dictionary provided */ - this.flags = 0; /* gzip header method and flags (0 if zlib) */ - this.dmax = 0; /* zlib header max distance (INFLATE_STRICT) */ - this.check = 0; /* protected copy of check value */ - this.total = 0; /* protected copy of output count */ - // TODO: may be {} - this.head = - null; /* where to save gzip header information */ - - /* sliding window */ - this.wbits = 0; /* log base 2 of requested window size */ - this.wsize = 0; /* window size or zero if not using window */ - this.whave = 0; /* valid bytes in the window */ - this.wnext = 0; /* window write index */ - this.window = - null; /* allocated sliding window, if needed */ - - /* bit accumulator */ - this.hold = 0; /* input bit accumulator */ - this.bits = 0; /* number of bits in "in" */ - - /* for string and stored block copying */ - this.length = 0; /* literal or length of data to copy */ - this.offset = 0; /* distance back to copy string from */ - - /* for table and code decoding */ - this.extra = 0; /* extra bits needed */ - - /* fixed and dynamic code tables */ - this.lencode = - null; /* starting table for length/literal codes */ - this.distcode = - null; /* starting table for distance codes */ - this.lenbits = 0; /* index bits for lencode */ - this.distbits = 0; /* index bits for distcode */ - - /* dynamic table building */ - this.ncode = 0; /* number of code length code lengths */ - this.nlen = 0; /* number of length code lengths */ - this.ndist = 0; /* number of distance code lengths */ - this.have = 0; /* number of code lengths in lens[] */ - this.next = null; /* next available space in codes[] */ - - this.lens = new utils.Buf16( - 320 - ); /* temporary storage for code lengths */ - this.work = new utils.Buf16( - 288 - ); /* work area for code table building */ - - /* + top: + do { + if (bits < 15) { + hold += input[_in++] << bits; + bits += 8; + hold += input[_in++] << bits; + bits += 8; + } + + here = lcode[hold & lmask]; + + dolen: + for (;;) { // Goto emulation + op = here >>> 24/*here.bits*/; + hold >>>= op; + bits -= op; + op = (here >>> 16) & 0xff/*here.op*/; + if (op === 0) { /* literal */ + //Tracevv((stderr, here.val >= 0x20 && here.val < 0x7f ? + // "inflate: literal '%c'\n" : + // "inflate: literal 0x%02x\n", here.val)); + output[_out++] = here & 0xffff/*here.val*/; + } + else if (op & 16) { /* length base */ + len = here & 0xffff/*here.val*/; + op &= 15; /* number of extra bits */ + if (op) { + if (bits < op) { + hold += input[_in++] << bits; + bits += 8; + } + len += hold & ((1 << op) - 1); + hold >>>= op; + bits -= op; + } + //Tracevv((stderr, "inflate: length %u\n", len)); + if (bits < 15) { + hold += input[_in++] << bits; + bits += 8; + hold += input[_in++] << bits; + bits += 8; + } + here = dcode[hold & dmask]; + + dodist: + for (;;) { // goto emulation + op = here >>> 24/*here.bits*/; + hold >>>= op; + bits -= op; + op = (here >>> 16) & 0xff/*here.op*/; + + if (op & 16) { /* distance base */ + dist = here & 0xffff/*here.val*/; + op &= 15; /* number of extra bits */ + if (bits < op) { + hold += input[_in++] << bits; + bits += 8; + if (bits < op) { + hold += input[_in++] << bits; + bits += 8; + } + } + dist += hold & ((1 << op) - 1); + //#ifdef INFLATE_STRICT + if (dist > dmax) { + strm.msg = 'invalid distance too far back'; + state.mode = BAD; + break top; + } + //#endif + hold >>>= op; + bits -= op; + //Tracevv((stderr, "inflate: distance %u\n", dist)); + op = _out - beg; /* max distance in output */ + if (dist > op) { /* see if copy from window */ + op = dist - op; /* distance back in window */ + if (op > whave) { + if (state.sane) { + strm.msg = 'invalid distance too far back'; + state.mode = BAD; + break top; + } + + // (!) This block is disabled in zlib defaults, + // don't enable it for binary compatibility + //#ifdef INFLATE_ALLOW_INVALID_DISTANCE_TOOFAR_ARRR + // if (len <= op - whave) { + // do { + // output[_out++] = 0; + // } while (--len); + // continue top; + // } + // len -= op - whave; + // do { + // output[_out++] = 0; + // } while (--op > whave); + // if (op === 0) { + // from = _out - dist; + // do { + // output[_out++] = output[from++]; + // } while (--len); + // continue top; + // } + //#endif + } + from = 0; // window index + from_source = s_window; + if (wnext === 0) { /* very common case */ + from += wsize - op; + if (op < len) { /* some from window */ + len -= op; + do { + output[_out++] = s_window[from++]; + } while (--op); + from = _out - dist; /* rest from output */ + from_source = output; + } + } + else if (wnext < op) { /* wrap around window */ + from += wsize + wnext - op; + op -= wnext; + if (op < len) { /* some from end of window */ + len -= op; + do { + output[_out++] = s_window[from++]; + } while (--op); + from = 0; + if (wnext < len) { /* some from start of window */ + op = wnext; + len -= op; + do { + output[_out++] = s_window[from++]; + } while (--op); + from = _out - dist; /* rest from output */ + from_source = output; + } + } + } + else { /* contiguous in window */ + from += wnext - op; + if (op < len) { /* some from window */ + len -= op; + do { + output[_out++] = s_window[from++]; + } while (--op); + from = _out - dist; /* rest from output */ + from_source = output; + } + } + while (len > 2) { + output[_out++] = from_source[from++]; + output[_out++] = from_source[from++]; + output[_out++] = from_source[from++]; + len -= 3; + } + if (len) { + output[_out++] = from_source[from++]; + if (len > 1) { + output[_out++] = from_source[from++]; + } + } + } + else { + from = _out - dist; /* copy direct from output */ + do { /* minimum length is three */ + output[_out++] = output[from++]; + output[_out++] = output[from++]; + output[_out++] = output[from++]; + len -= 3; + } while (len > 2); + if (len) { + output[_out++] = output[from++]; + if (len > 1) { + output[_out++] = output[from++]; + } + } + } + } + else if ((op & 64) === 0) { /* 2nd level distance code */ + here = dcode[(here & 0xffff)/*here.val*/ + (hold & ((1 << op) - 1))]; + continue dodist; + } + else { + strm.msg = 'invalid distance code'; + state.mode = BAD; + break top; + } + + break; // need to emulate goto via "continue" + } + } + else if ((op & 64) === 0) { /* 2nd level length code */ + here = lcode[(here & 0xffff)/*here.val*/ + (hold & ((1 << op) - 1))]; + continue dolen; + } + else if (op & 32) { /* end-of-block */ + //Tracevv((stderr, "inflate: end of block\n")); + state.mode = TYPE; + break top; + } + else { + strm.msg = 'invalid literal/length code'; + state.mode = BAD; + break top; + } + + break; // need to emulate goto via "continue" + } + } while (_in < last && _out < end); + + /* return unused bytes (on entry, bits < 8, so in won't go too far back) */ + len = bits >> 3; + _in -= len; + bits -= len << 3; + hold &= (1 << bits) - 1; + + /* update state and return */ + strm.next_in = _in; + strm.next_out = _out; + strm.avail_in = (_in < last ? 5 + (last - _in) : 5 - (_in - last)); + strm.avail_out = (_out < end ? 257 + (end - _out) : 257 - (_out - end)); + state.hold = hold; + state.bits = bits; + return; + }; + + },{}],8:[function(require,module,exports){ + 'use strict'; + + // (C) 1995-2013 Jean-loup Gailly and Mark Adler + // (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin + // + // This software is provided 'as-is', without any express or implied + // warranty. In no event will the authors be held liable for any damages + // arising from the use of this software. + // + // Permission is granted to anyone to use this software for any purpose, + // including commercial applications, and to alter it and redistribute it + // freely, subject to the following restrictions: + // + // 1. The origin of this software must not be misrepresented; you must not + // claim that you wrote the original software. If you use this software + // in a product, an acknowledgment in the product documentation would be + // appreciated but is not required. + // 2. Altered source versions must be plainly marked as such, and must not be + // misrepresented as being the original software. + // 3. This notice may not be removed or altered from any source distribution. + + var utils = require('../utils/common'); + var adler32 = require('./adler32'); + var crc32 = require('./crc32'); + var inflate_fast = require('./inffast'); + var inflate_table = require('./inftrees'); + + var CODES = 0; + var LENS = 1; + var DISTS = 2; + + /* Public constants ==========================================================*/ + /* ===========================================================================*/ + + + /* Allowed flush values; see deflate() and inflate() below for details */ + //var Z_NO_FLUSH = 0; + //var Z_PARTIAL_FLUSH = 1; + //var Z_SYNC_FLUSH = 2; + //var Z_FULL_FLUSH = 3; + var Z_FINISH = 4; + var Z_BLOCK = 5; + var Z_TREES = 6; + + + /* Return codes for the compression/decompression functions. Negative values + * are errors, positive values are used for special but normal events. + */ + var Z_OK = 0; + var Z_STREAM_END = 1; + var Z_NEED_DICT = 2; + //var Z_ERRNO = -1; + var Z_STREAM_ERROR = -2; + var Z_DATA_ERROR = -3; + var Z_MEM_ERROR = -4; + var Z_BUF_ERROR = -5; + //var Z_VERSION_ERROR = -6; + + /* The deflate compression method */ + var Z_DEFLATED = 8; + + + /* STATES ====================================================================*/ + /* ===========================================================================*/ + + + var HEAD = 1; /* i: waiting for magic header */ + var FLAGS = 2; /* i: waiting for method and flags (gzip) */ + var TIME = 3; /* i: waiting for modification time (gzip) */ + var OS = 4; /* i: waiting for extra flags and operating system (gzip) */ + var EXLEN = 5; /* i: waiting for extra length (gzip) */ + var EXTRA = 6; /* i: waiting for extra bytes (gzip) */ + var NAME = 7; /* i: waiting for end of file name (gzip) */ + var COMMENT = 8; /* i: waiting for end of comment (gzip) */ + var HCRC = 9; /* i: waiting for header crc (gzip) */ + var DICTID = 10; /* i: waiting for dictionary check value */ + var DICT = 11; /* waiting for inflateSetDictionary() call */ + var TYPE = 12; /* i: waiting for type bits, including last-flag bit */ + var TYPEDO = 13; /* i: same, but skip check to exit inflate on new block */ + var STORED = 14; /* i: waiting for stored size (length and complement) */ + var COPY_ = 15; /* i/o: same as COPY below, but only first time in */ + var COPY = 16; /* i/o: waiting for input or output to copy stored block */ + var TABLE = 17; /* i: waiting for dynamic block table lengths */ + var LENLENS = 18; /* i: waiting for code length code lengths */ + var CODELENS = 19; /* i: waiting for length/lit and distance code lengths */ + var LEN_ = 20; /* i: same as LEN below, but only first time in */ + var LEN = 21; /* i: waiting for length/lit/eob code */ + var LENEXT = 22; /* i: waiting for length extra bits */ + var DIST = 23; /* i: waiting for distance code */ + var DISTEXT = 24; /* i: waiting for distance extra bits */ + var MATCH = 25; /* o: waiting for output space to copy string */ + var LIT = 26; /* o: waiting for output space to write literal */ + var CHECK = 27; /* i: waiting for 32-bit check value */ + var LENGTH = 28; /* i: waiting for 32-bit length (gzip) */ + var DONE = 29; /* finished check, done -- remain here until reset */ + var BAD = 30; /* got a data error -- remain here until reset */ + var MEM = 31; /* got an inflate() memory error -- remain here until reset */ + var SYNC = 32; /* looking for synchronization bytes to restart inflate() */ + + /* ===========================================================================*/ + + + + var ENOUGH_LENS = 852; + var ENOUGH_DISTS = 592; + //var ENOUGH = (ENOUGH_LENS+ENOUGH_DISTS); + + var MAX_WBITS = 15; + /* 32K LZ77 window */ + var DEF_WBITS = MAX_WBITS; + + + function zswap32(q) { + return (((q >>> 24) & 0xff) + + ((q >>> 8) & 0xff00) + + ((q & 0xff00) << 8) + + ((q & 0xff) << 24)); + } + + + function InflateState() { + this.mode = 0; /* current inflate mode */ + this.last = false; /* true if processing last block */ + this.wrap = 0; /* bit 0 true for zlib, bit 1 true for gzip */ + this.havedict = false; /* true if dictionary provided */ + this.flags = 0; /* gzip header method and flags (0 if zlib) */ + this.dmax = 0; /* zlib header max distance (INFLATE_STRICT) */ + this.check = 0; /* protected copy of check value */ + this.total = 0; /* protected copy of output count */ + // TODO: may be {} + this.head = null; /* where to save gzip header information */ + + /* sliding window */ + this.wbits = 0; /* log base 2 of requested window size */ + this.wsize = 0; /* window size or zero if not using window */ + this.whave = 0; /* valid bytes in the window */ + this.wnext = 0; /* window write index */ + this.window = null; /* allocated sliding window, if needed */ + + /* bit accumulator */ + this.hold = 0; /* input bit accumulator */ + this.bits = 0; /* number of bits in "in" */ + + /* for string and stored block copying */ + this.length = 0; /* literal or length of data to copy */ + this.offset = 0; /* distance back to copy string from */ + + /* for table and code decoding */ + this.extra = 0; /* extra bits needed */ + + /* fixed and dynamic code tables */ + this.lencode = null; /* starting table for length/literal codes */ + this.distcode = null; /* starting table for distance codes */ + this.lenbits = 0; /* index bits for lencode */ + this.distbits = 0; /* index bits for distcode */ + + /* dynamic table building */ + this.ncode = 0; /* number of code length code lengths */ + this.nlen = 0; /* number of length code lengths */ + this.ndist = 0; /* number of distance code lengths */ + this.have = 0; /* number of code lengths in lens[] */ + this.next = null; /* next available space in codes[] */ + + this.lens = new utils.Buf16(320); /* temporary storage for code lengths */ + this.work = new utils.Buf16(288); /* work area for code table building */ + + /* because we don't have pointers in js, we use lencode and distcode directly as buffers so we don't need codes */ - //this.codes = new utils.Buf32(ENOUGH); /* space for code tables */ - this.lendyn = - null; /* dynamic table for length/literal codes (JS specific) */ - this.distdyn = - null; /* dynamic table for distance codes (JS specific) */ - this.sane = 0; /* if false, allow invalid distance too far */ - this.back = 0; /* bits back of last unprocessed length/lit */ - this.was = 0; /* initial length of match */ - } - - function inflateResetKeep( strm ) { - var state; - - if ( ! strm || ! strm.state ) { - return Z_STREAM_ERROR; - } - state = strm.state; - strm.total_in = strm.total_out = state.total = 0; - strm.msg = ''; /*Z_NULL*/ - if ( state.wrap ) { - /* to support ill-conceived Java test suite */ - strm.adler = state.wrap & 1; - } - state.mode = HEAD; - state.last = 0; - state.havedict = 0; - state.dmax = 32768; - state.head = null /*Z_NULL*/; - state.hold = 0; - state.bits = 0; - //state.lencode = state.distcode = state.next = state.codes; - state.lencode = state.lendyn = new utils.Buf32( - ENOUGH_LENS - ); - state.distcode = state.distdyn = new utils.Buf32( - ENOUGH_DISTS - ); - - state.sane = 1; - state.back = -1; - //Tracev((stderr, "inflate: reset\n")); - return Z_OK; - } - - function inflateReset( strm ) { - var state; - - if ( ! strm || ! strm.state ) { - return Z_STREAM_ERROR; - } - state = strm.state; - state.wsize = 0; - state.whave = 0; - state.wnext = 0; - return inflateResetKeep( strm ); - } - - function inflateReset2( strm, windowBits ) { - var wrap; - var state; - - /* get the state */ - if ( ! strm || ! strm.state ) { - return Z_STREAM_ERROR; - } - state = strm.state; - - /* extract wrap request from windowBits parameter */ - if ( windowBits < 0 ) { - wrap = 0; - windowBits = -windowBits; - } else { - wrap = ( windowBits >> 4 ) + 1; - if ( windowBits < 48 ) { - windowBits &= 15; - } - } - - /* set number of window bits, free window if different */ - if ( - windowBits && - ( windowBits < 8 || windowBits > 15 ) - ) { - return Z_STREAM_ERROR; - } - if ( - state.window !== null && - state.wbits !== windowBits - ) { - state.window = null; - } - - /* update state and reset the rest of it */ - state.wrap = wrap; - state.wbits = windowBits; - return inflateReset( strm ); - } - - function inflateInit2( strm, windowBits ) { - var ret; - var state; - - if ( ! strm ) { - return Z_STREAM_ERROR; - } - //strm.msg = Z_NULL; /* in case we return an error */ - - state = new InflateState(); - - //if (state === Z_NULL) return Z_MEM_ERROR; - //Tracev((stderr, "inflate: allocated\n")); - strm.state = state; - state.window = null /*Z_NULL*/; - ret = inflateReset2( strm, windowBits ); - if ( ret !== Z_OK ) { - strm.state = null /*Z_NULL*/; - } - return ret; - } - - function inflateInit( strm ) { - return inflateInit2( strm, DEF_WBITS ); - } - - /* + //this.codes = new utils.Buf32(ENOUGH); /* space for code tables */ + this.lendyn = null; /* dynamic table for length/literal codes (JS specific) */ + this.distdyn = null; /* dynamic table for distance codes (JS specific) */ + this.sane = 0; /* if false, allow invalid distance too far */ + this.back = 0; /* bits back of last unprocessed length/lit */ + this.was = 0; /* initial length of match */ + } + + function inflateResetKeep(strm) { + var state; + + if (!strm || !strm.state) { return Z_STREAM_ERROR; } + state = strm.state; + strm.total_in = strm.total_out = state.total = 0; + strm.msg = ''; /*Z_NULL*/ + if (state.wrap) { /* to support ill-conceived Java test suite */ + strm.adler = state.wrap & 1; + } + state.mode = HEAD; + state.last = 0; + state.havedict = 0; + state.dmax = 32768; + state.head = null/*Z_NULL*/; + state.hold = 0; + state.bits = 0; + //state.lencode = state.distcode = state.next = state.codes; + state.lencode = state.lendyn = new utils.Buf32(ENOUGH_LENS); + state.distcode = state.distdyn = new utils.Buf32(ENOUGH_DISTS); + + state.sane = 1; + state.back = -1; + //Tracev((stderr, "inflate: reset\n")); + return Z_OK; + } + + function inflateReset(strm) { + var state; + + if (!strm || !strm.state) { return Z_STREAM_ERROR; } + state = strm.state; + state.wsize = 0; + state.whave = 0; + state.wnext = 0; + return inflateResetKeep(strm); + + } + + function inflateReset2(strm, windowBits) { + var wrap; + var state; + + /* get the state */ + if (!strm || !strm.state) { return Z_STREAM_ERROR; } + state = strm.state; + + /* extract wrap request from windowBits parameter */ + if (windowBits < 0) { + wrap = 0; + windowBits = -windowBits; + } + else { + wrap = (windowBits >> 4) + 1; + if (windowBits < 48) { + windowBits &= 15; + } + } + + /* set number of window bits, free window if different */ + if (windowBits && (windowBits < 8 || windowBits > 15)) { + return Z_STREAM_ERROR; + } + if (state.window !== null && state.wbits !== windowBits) { + state.window = null; + } + + /* update state and reset the rest of it */ + state.wrap = wrap; + state.wbits = windowBits; + return inflateReset(strm); + } + + function inflateInit2(strm, windowBits) { + var ret; + var state; + + if (!strm) { return Z_STREAM_ERROR; } + //strm.msg = Z_NULL; /* in case we return an error */ + + state = new InflateState(); + + //if (state === Z_NULL) return Z_MEM_ERROR; + //Tracev((stderr, "inflate: allocated\n")); + strm.state = state; + state.window = null/*Z_NULL*/; + ret = inflateReset2(strm, windowBits); + if (ret !== Z_OK) { + strm.state = null/*Z_NULL*/; + } + return ret; + } + + function inflateInit(strm) { + return inflateInit2(strm, DEF_WBITS); + } + + + /* Return state with length and distance decoding tables and index sizes set to fixed code decoding. Normally this returns fixed tables from inffixed.h. If BUILDFIXED is defined, then instead this routine builds the tables the @@ -1421,72 +1174,45 @@ used for threaded applications, since the rewriting of the tables and virgin may not be thread-safe. */ - var virgin = true; - - var lenfix, distfix; // We have no pointers in JS, so keep tables separate - - function fixedtables( state ) { - /* build fixed huffman tables if first call (may not be thread safe) */ - if ( virgin ) { - var sym; - - lenfix = new utils.Buf32( 512 ); - distfix = new utils.Buf32( 32 ); - - /* literal/length table */ - sym = 0; - while ( sym < 144 ) { - state.lens[ sym++ ] = 8; - } - while ( sym < 256 ) { - state.lens[ sym++ ] = 9; - } - while ( sym < 280 ) { - state.lens[ sym++ ] = 7; - } - while ( sym < 288 ) { - state.lens[ sym++ ] = 8; - } - - inflate_table( - LENS, - state.lens, - 0, - 288, - lenfix, - 0, - state.work, - { bits: 9 } - ); - - /* distance table */ - sym = 0; - while ( sym < 32 ) { - state.lens[ sym++ ] = 5; - } - - inflate_table( - DISTS, - state.lens, - 0, - 32, - distfix, - 0, - state.work, - { bits: 5 } - ); - - /* do this just once */ - virgin = false; - } - - state.lencode = lenfix; - state.lenbits = 9; - state.distcode = distfix; - state.distbits = 5; - } - - /* + var virgin = true; + + var lenfix, distfix; // We have no pointers in JS, so keep tables separate + + function fixedtables(state) { + /* build fixed huffman tables if first call (may not be thread safe) */ + if (virgin) { + var sym; + + lenfix = new utils.Buf32(512); + distfix = new utils.Buf32(32); + + /* literal/length table */ + sym = 0; + while (sym < 144) { state.lens[sym++] = 8; } + while (sym < 256) { state.lens[sym++] = 9; } + while (sym < 280) { state.lens[sym++] = 7; } + while (sym < 288) { state.lens[sym++] = 8; } + + inflate_table(LENS, state.lens, 0, 288, lenfix, 0, state.work, { bits: 9 }); + + /* distance table */ + sym = 0; + while (sym < 32) { state.lens[sym++] = 5; } + + inflate_table(DISTS, state.lens, 0, 32, distfix, 0, state.work, { bits: 5 }); + + /* do this just once */ + virgin = false; + } + + state.lencode = lenfix; + state.lenbits = 9; + state.distcode = distfix; + state.distbits = 5; + } + + + /* Update the window with the last wsize (normally 32K) bytes written before returning. If window does not exist yet, create it. This is only called when a window is already in use, or when output has been written during this @@ -1500,1592 +1226,1216 @@ output will fall in the output data, making match copies simpler and faster. The advantage may be dependent on the size of the processor's data caches. */ - function updatewindow( strm, src, end, copy ) { - var dist; - var state = strm.state; - - /* if it hasn't been done already, allocate space for the window */ - if ( state.window === null ) { - state.wsize = 1 << state.wbits; - state.wnext = 0; - state.whave = 0; - - state.window = new utils.Buf8( state.wsize ); - } - - /* copy state->wsize or less output bytes into the circular window */ - if ( copy >= state.wsize ) { - utils.arraySet( - state.window, - src, - end - state.wsize, - state.wsize, - 0 - ); - state.wnext = 0; - state.whave = state.wsize; - } else { - dist = state.wsize - state.wnext; - if ( dist > copy ) { - dist = copy; - } - //zmemcpy(state->window + state->wnext, end - copy, dist); - utils.arraySet( - state.window, - src, - end - copy, - dist, - state.wnext - ); - copy -= dist; - if ( copy ) { - //zmemcpy(state->window, end - copy, copy); - utils.arraySet( - state.window, - src, - end - copy, - copy, - 0 - ); - state.wnext = copy; - state.whave = state.wsize; - } else { - state.wnext += dist; - if ( state.wnext === state.wsize ) { - state.wnext = 0; - } - if ( state.whave < state.wsize ) { - state.whave += dist; - } - } - } - return 0; - } - - function inflate( strm, flush ) { - var state; - var input, output; // input/output buffers - var next; /* next input INDEX */ - var put; /* next output INDEX */ - var have, left; /* available input and output */ - var hold; /* bit buffer */ - var bits; /* bits in bit buffer */ - var _in, - _out; /* save starting available input and output */ - var copy; /* number of stored or match bytes to copy */ - var from; /* where to copy match bytes from */ - var from_source; - var here = 0; /* current decoding table entry */ - var here_bits, here_op, here_val; // paked "here" denormalized (JS specific) - //var last; /* parent table entry */ - var last_bits, last_op, last_val; // paked "last" denormalized (JS specific) - var len; /* length to copy for repeats, bits to drop */ - var ret; /* return code */ - var hbuf = new utils.Buf8( - 4 - ); /* buffer for gzip header crc calculation */ - var opts; - - var n; // temporary var for NEED_BITS - - var order = - /* permutation of code lengths */ - [ - 16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, - 13, 2, 14, 1, 15, - ]; - - if ( - ! strm || - ! strm.state || - ! strm.output || - ( ! strm.input && strm.avail_in !== 0 ) - ) { - return Z_STREAM_ERROR; - } - - state = strm.state; - if ( state.mode === TYPE ) { - state.mode = TYPEDO; - } /* skip check */ - - //--- LOAD() --- - put = strm.next_out; - output = strm.output; - left = strm.avail_out; - next = strm.next_in; - input = strm.input; - have = strm.avail_in; - hold = state.hold; - bits = state.bits; - //--- - - _in = have; - _out = left; - ret = Z_OK; - - // goto emulation - inf_leave: for (;;) { - switch ( state.mode ) { - case HEAD: - if ( state.wrap === 0 ) { - state.mode = TYPEDO; - break; - } - //=== NEEDBITS(16); - while ( bits < 16 ) { - if ( have === 0 ) { - break inf_leave; - } - have--; - hold += input[ next++ ] << bits; - bits += 8; - } - //===// - if ( state.wrap & 2 && hold === 0x8b1f ) { - /* gzip header */ - state.check = 0 /*crc32(0L, Z_NULL, 0)*/; - //=== CRC2(state.check, hold); - hbuf[ 0 ] = hold & 0xff; - hbuf[ 1 ] = ( hold >>> 8 ) & 0xff; - state.check = crc32( - state.check, - hbuf, - 2, - 0 - ); - //===// - - //=== INITBITS(); - hold = 0; - bits = 0; - //===// - state.mode = FLAGS; - break; - } - state.flags = 0; /* expect zlib header */ - if ( state.head ) { - state.head.done = false; - } - if ( - ! ( - state.wrap & 1 - ) /* check if zlib header allowed */ || - ( ( ( hold & 0xff ) /*BITS(8)*/ << 8 ) + - ( hold >> 8 ) ) % - 31 - ) { - strm.msg = 'incorrect header check'; - state.mode = BAD; - break; - } - if ( - ( hold & 0x0f ) /*BITS(4)*/ !== - Z_DEFLATED - ) { - strm.msg = 'unknown compression method'; - state.mode = BAD; - break; - } - //--- DROPBITS(4) ---// - hold >>>= 4; - bits -= 4; - //---// - len = ( hold & 0x0f ) /*BITS(4)*/ + 8; - if ( state.wbits === 0 ) { - state.wbits = len; - } else if ( len > state.wbits ) { - strm.msg = 'invalid window size'; - state.mode = BAD; - break; - } - state.dmax = 1 << len; - //Tracev((stderr, "inflate: zlib header ok\n")); - strm.adler = - state.check = 1 /*adler32(0L, Z_NULL, 0)*/; - state.mode = hold & 0x200 ? DICTID : TYPE; - //=== INITBITS(); - hold = 0; - bits = 0; - //===// - break; - case FLAGS: - //=== NEEDBITS(16); */ - while ( bits < 16 ) { - if ( have === 0 ) { - break inf_leave; - } - have--; - hold += input[ next++ ] << bits; - bits += 8; - } - //===// - state.flags = hold; - if ( - ( state.flags & 0xff ) !== - Z_DEFLATED - ) { - strm.msg = 'unknown compression method'; - state.mode = BAD; - break; - } - if ( state.flags & 0xe000 ) { - strm.msg = 'unknown header flags set'; - state.mode = BAD; - break; - } - if ( state.head ) { - state.head.text = ( hold >> 8 ) & 1; - } - if ( state.flags & 0x0200 ) { - //=== CRC2(state.check, hold); - hbuf[ 0 ] = hold & 0xff; - hbuf[ 1 ] = ( hold >>> 8 ) & 0xff; - state.check = crc32( - state.check, - hbuf, - 2, - 0 - ); - //===// - } - //=== INITBITS(); - hold = 0; - bits = 0; - //===// - state.mode = TIME; - /* falls through */ - case TIME: - //=== NEEDBITS(32); */ - while ( bits < 32 ) { - if ( have === 0 ) { - break inf_leave; - } - have--; - hold += input[ next++ ] << bits; - bits += 8; - } - //===// - if ( state.head ) { - state.head.time = hold; - } - if ( state.flags & 0x0200 ) { - //=== CRC4(state.check, hold) - hbuf[ 0 ] = hold & 0xff; - hbuf[ 1 ] = ( hold >>> 8 ) & 0xff; - hbuf[ 2 ] = ( hold >>> 16 ) & 0xff; - hbuf[ 3 ] = ( hold >>> 24 ) & 0xff; - state.check = crc32( - state.check, - hbuf, - 4, - 0 - ); - //=== - } - //=== INITBITS(); - hold = 0; - bits = 0; - //===// - state.mode = OS; - /* falls through */ - case OS: - //=== NEEDBITS(16); */ - while ( bits < 16 ) { - if ( have === 0 ) { - break inf_leave; - } - have--; - hold += input[ next++ ] << bits; - bits += 8; - } - //===// - if ( state.head ) { - state.head.xflags = hold & 0xff; - state.head.os = hold >> 8; - } - if ( state.flags & 0x0200 ) { - //=== CRC2(state.check, hold); - hbuf[ 0 ] = hold & 0xff; - hbuf[ 1 ] = ( hold >>> 8 ) & 0xff; - state.check = crc32( - state.check, - hbuf, - 2, - 0 - ); - //===// - } - //=== INITBITS(); - hold = 0; - bits = 0; - //===// - state.mode = EXLEN; - /* falls through */ - case EXLEN: - if ( state.flags & 0x0400 ) { - //=== NEEDBITS(16); */ - while ( bits < 16 ) { - if ( have === 0 ) { - break inf_leave; - } - have--; - hold += input[ next++ ] << bits; - bits += 8; - } - //===// - state.length = hold; - if ( state.head ) { - state.head.extra_len = hold; - } - if ( state.flags & 0x0200 ) { - //=== CRC2(state.check, hold); - hbuf[ 0 ] = hold & 0xff; - hbuf[ 1 ] = ( hold >>> 8 ) & 0xff; - state.check = crc32( - state.check, - hbuf, - 2, - 0 - ); - //===// - } - //=== INITBITS(); - hold = 0; - bits = 0; - //===// - } else if ( state.head ) { - state.head.extra = null /*Z_NULL*/; - } - state.mode = EXTRA; - /* falls through */ - case EXTRA: - if ( state.flags & 0x0400 ) { - copy = state.length; - if ( copy > have ) { - copy = have; - } - if ( copy ) { - if ( state.head ) { - len = - state.head.extra_len - - state.length; - if ( ! state.head.extra ) { - // Use untyped array for more convenient processing later - state.head.extra = - new Array( - state.head.extra_len - ); - } - utils.arraySet( - state.head.extra, - input, - next, - // extra field is limited to 65536 bytes - // - no need for additional size check - copy, - /*len + copy > state.head.extra_max - len ? state.head.extra_max : copy,*/ - len - ); - //zmemcpy(state.head.extra + len, next, - // len + copy > state.head.extra_max ? - // state.head.extra_max - len : copy); - } - if ( state.flags & 0x0200 ) { - state.check = crc32( - state.check, - input, - copy, - next - ); - } - have -= copy; - next += copy; - state.length -= copy; - } - if ( state.length ) { - break inf_leave; - } - } - state.length = 0; - state.mode = NAME; - /* falls through */ - case NAME: - if ( state.flags & 0x0800 ) { - if ( have === 0 ) { - break inf_leave; - } - copy = 0; - do { - // TODO: 2 or 1 bytes? - len = input[ next + copy++ ]; - /* use constant limit because in js we should not preallocate memory */ - if ( - state.head && - len && - state.length < - 65536 /*state.head.name_max*/ - ) { - state.head.name += - String.fromCharCode( len ); - } - } while ( len && copy < have ); - - if ( state.flags & 0x0200 ) { - state.check = crc32( - state.check, - input, - copy, - next - ); - } - have -= copy; - next += copy; - if ( len ) { - break inf_leave; - } - } else if ( state.head ) { - state.head.name = null; - } - state.length = 0; - state.mode = COMMENT; - /* falls through */ - case COMMENT: - if ( state.flags & 0x1000 ) { - if ( have === 0 ) { - break inf_leave; - } - copy = 0; - do { - len = input[ next + copy++ ]; - /* use constant limit because in js we should not preallocate memory */ - if ( - state.head && - len && - state.length < - 65536 /*state.head.comm_max*/ - ) { - state.head.comment += - String.fromCharCode( len ); - } - } while ( len && copy < have ); - if ( state.flags & 0x0200 ) { - state.check = crc32( - state.check, - input, - copy, - next - ); - } - have -= copy; - next += copy; - if ( len ) { - break inf_leave; - } - } else if ( state.head ) { - state.head.comment = null; - } - state.mode = HCRC; - /* falls through */ - case HCRC: - if ( state.flags & 0x0200 ) { - //=== NEEDBITS(16); */ - while ( bits < 16 ) { - if ( have === 0 ) { - break inf_leave; - } - have--; - hold += input[ next++ ] << bits; - bits += 8; - } - //===// - if ( - hold !== - ( state.check & 0xffff ) - ) { - strm.msg = 'header crc mismatch'; - state.mode = BAD; - break; - } - //=== INITBITS(); - hold = 0; - bits = 0; - //===// - } - if ( state.head ) { - state.head.hcrc = - ( state.flags >> 9 ) & 1; - state.head.done = true; - } - strm.adler = state.check = 0; - state.mode = TYPE; - break; - case DICTID: - //=== NEEDBITS(32); */ - while ( bits < 32 ) { - if ( have === 0 ) { - break inf_leave; - } - have--; - hold += input[ next++ ] << bits; - bits += 8; - } - //===// - strm.adler = state.check = zswap32( hold ); - //=== INITBITS(); - hold = 0; - bits = 0; - //===// - state.mode = DICT; - /* falls through */ - case DICT: - if ( state.havedict === 0 ) { - //--- RESTORE() --- - strm.next_out = put; - strm.avail_out = left; - strm.next_in = next; - strm.avail_in = have; - state.hold = hold; - state.bits = bits; - //--- - return Z_NEED_DICT; - } - strm.adler = - state.check = 1 /*adler32(0L, Z_NULL, 0)*/; - state.mode = TYPE; - /* falls through */ - case TYPE: - if ( - flush === Z_BLOCK || - flush === Z_TREES - ) { - break inf_leave; - } - /* falls through */ - case TYPEDO: - if ( state.last ) { - //--- BYTEBITS() ---// - hold >>>= bits & 7; - bits -= bits & 7; - //---// - state.mode = CHECK; - break; - } - //=== NEEDBITS(3); */ - while ( bits < 3 ) { - if ( have === 0 ) { - break inf_leave; - } - have--; - hold += input[ next++ ] << bits; - bits += 8; - } - //===// - state.last = hold & 0x01 /*BITS(1)*/; - //--- DROPBITS(1) ---// - hold >>>= 1; - bits -= 1; - //---// - - switch ( hold & 0x03 /*BITS(2)*/ ) { - case 0 /* stored block */: - //Tracev((stderr, "inflate: stored block%s\n", - // state.last ? " (last)" : "")); - state.mode = STORED; - break; - case 1 /* fixed block */: - fixedtables( state ); - //Tracev((stderr, "inflate: fixed codes block%s\n", - // state.last ? " (last)" : "")); - state.mode = - LEN_; /* decode codes */ - if ( flush === Z_TREES ) { - //--- DROPBITS(2) ---// - hold >>>= 2; - bits -= 2; - //---// - break inf_leave; - } - break; - case 2 /* dynamic block */: - //Tracev((stderr, "inflate: dynamic codes block%s\n", - // state.last ? " (last)" : "")); - state.mode = TABLE; - break; - case 3: - strm.msg = 'invalid block type'; - state.mode = BAD; - } - //--- DROPBITS(2) ---// - hold >>>= 2; - bits -= 2; - //---// - break; - case STORED: - //--- BYTEBITS() ---// /* go to byte boundary */ - hold >>>= bits & 7; - bits -= bits & 7; - //---// - //=== NEEDBITS(32); */ - while ( bits < 32 ) { - if ( have === 0 ) { - break inf_leave; - } - have--; - hold += input[ next++ ] << bits; - bits += 8; - } - //===// - if ( - ( hold & 0xffff ) !== - ( ( hold >>> 16 ) ^ 0xffff ) - ) { - strm.msg = - 'invalid stored block lengths'; - state.mode = BAD; - break; - } - state.length = hold & 0xffff; - //Tracev((stderr, "inflate: stored length %u\n", - // state.length)); - //=== INITBITS(); - hold = 0; - bits = 0; - //===// - state.mode = COPY_; - if ( flush === Z_TREES ) { - break inf_leave; - } - /* falls through */ - case COPY_: - state.mode = COPY; - /* falls through */ - case COPY: - copy = state.length; - if ( copy ) { - if ( copy > have ) { - copy = have; - } - if ( copy > left ) { - copy = left; - } - if ( copy === 0 ) { - break inf_leave; - } - //--- zmemcpy(put, next, copy); --- - utils.arraySet( - output, - input, - next, - copy, - put - ); - //---// - have -= copy; - next += copy; - left -= copy; - put += copy; - state.length -= copy; - break; - } - //Tracev((stderr, "inflate: stored end\n")); - state.mode = TYPE; - break; - case TABLE: - //=== NEEDBITS(14); */ - while ( bits < 14 ) { - if ( have === 0 ) { - break inf_leave; - } - have--; - hold += input[ next++ ] << bits; - bits += 8; - } - //===// - state.nlen = - ( hold & 0x1f ) /*BITS(5)*/ + 257; - //--- DROPBITS(5) ---// - hold >>>= 5; - bits -= 5; - //---// - state.ndist = - ( hold & 0x1f ) /*BITS(5)*/ + 1; - //--- DROPBITS(5) ---// - hold >>>= 5; - bits -= 5; - //---// - state.ncode = - ( hold & 0x0f ) /*BITS(4)*/ + 4; - //--- DROPBITS(4) ---// - hold >>>= 4; - bits -= 4; - //---// - //#ifndef PKZIP_BUG_WORKAROUND - if ( - state.nlen > 286 || - state.ndist > 30 - ) { - strm.msg = - 'too many length or distance symbols'; - state.mode = BAD; - break; - } - //#endif - //Tracev((stderr, "inflate: table sizes ok\n")); - state.have = 0; - state.mode = LENLENS; - /* falls through */ - case LENLENS: - while ( state.have < state.ncode ) { - //=== NEEDBITS(3); - while ( bits < 3 ) { - if ( have === 0 ) { - break inf_leave; - } - have--; - hold += input[ next++ ] << bits; - bits += 8; - } - //===// - state.lens[ order[ state.have++ ] ] = - hold & 0x07; //BITS(3); - //--- DROPBITS(3) ---// - hold >>>= 3; - bits -= 3; - //---// - } - while ( state.have < 19 ) { - state.lens[ order[ state.have++ ] ] = 0; - } - // We have separate tables & no pointers. 2 commented lines below not needed. - //state.next = state.codes; - //state.lencode = state.next; - // Switch to use dynamic table - state.lencode = state.lendyn; - state.lenbits = 7; - - opts = { bits: state.lenbits }; - ret = inflate_table( - CODES, - state.lens, - 0, - 19, - state.lencode, - 0, - state.work, - opts - ); - state.lenbits = opts.bits; - - if ( ret ) { - strm.msg = 'invalid code lengths set'; - state.mode = BAD; - break; - } - //Tracev((stderr, "inflate: code lengths ok\n")); - state.have = 0; - state.mode = CODELENS; - /* falls through */ - case CODELENS: - while ( - state.have < - state.nlen + state.ndist - ) { - for (;;) { - here = - state.lencode[ - hold & - ( ( 1 << - state.lenbits ) - - 1 ) - ]; /*BITS(state.lenbits)*/ - here_bits = here >>> 24; - here_op = ( here >>> 16 ) & 0xff; - here_val = here & 0xffff; - - if ( here_bits <= bits ) { - break; - } - //--- PULLBYTE() ---// - if ( have === 0 ) { - break inf_leave; - } - have--; - hold += input[ next++ ] << bits; - bits += 8; - //---// - } - if ( here_val < 16 ) { - //--- DROPBITS(here.bits) ---// - hold >>>= here_bits; - bits -= here_bits; - //---// - state.lens[ state.have++ ] = - here_val; - } else { - if ( here_val === 16 ) { - //=== NEEDBITS(here.bits + 2); - n = here_bits + 2; - while ( bits < n ) { - if ( have === 0 ) { - break inf_leave; - } - have--; - hold += - input[ next++ ] << bits; - bits += 8; - } - //===// - //--- DROPBITS(here.bits) ---// - hold >>>= here_bits; - bits -= here_bits; - //---// - if ( state.have === 0 ) { - strm.msg = - 'invalid bit length repeat'; - state.mode = BAD; - break; - } - len = - state.lens[ - state.have - 1 - ]; - copy = 3 + ( hold & 0x03 ); //BITS(2); - //--- DROPBITS(2) ---// - hold >>>= 2; - bits -= 2; - //---// - } else if ( here_val === 17 ) { - //=== NEEDBITS(here.bits + 3); - n = here_bits + 3; - while ( bits < n ) { - if ( have === 0 ) { - break inf_leave; - } - have--; - hold += - input[ next++ ] << bits; - bits += 8; - } - //===// - //--- DROPBITS(here.bits) ---// - hold >>>= here_bits; - bits -= here_bits; - //---// - len = 0; - copy = 3 + ( hold & 0x07 ); //BITS(3); - //--- DROPBITS(3) ---// - hold >>>= 3; - bits -= 3; - //---// - } else { - //=== NEEDBITS(here.bits + 7); - n = here_bits + 7; - while ( bits < n ) { - if ( have === 0 ) { - break inf_leave; - } - have--; - hold += - input[ next++ ] << bits; - bits += 8; - } - //===// - //--- DROPBITS(here.bits) ---// - hold >>>= here_bits; - bits -= here_bits; - //---// - len = 0; - copy = 11 + ( hold & 0x7f ); //BITS(7); - //--- DROPBITS(7) ---// - hold >>>= 7; - bits -= 7; - //---// - } - if ( - state.have + copy > - state.nlen + state.ndist - ) { - strm.msg = - 'invalid bit length repeat'; - state.mode = BAD; - break; - } - while ( copy-- ) { - state.lens[ state.have++ ] = - len; - } - } - } - - /* handle error breaks in while */ - if ( state.mode === BAD ) { - break; - } - - /* check for end-of-block code (better have one) */ - if ( state.lens[ 256 ] === 0 ) { - strm.msg = - 'invalid code -- missing end-of-block'; - state.mode = BAD; - break; - } - - /* build code tables -- note: do not change the lenbits or distbits + function updatewindow(strm, src, end, copy) { + var dist; + var state = strm.state; + + /* if it hasn't been done already, allocate space for the window */ + if (state.window === null) { + state.wsize = 1 << state.wbits; + state.wnext = 0; + state.whave = 0; + + state.window = new utils.Buf8(state.wsize); + } + + /* copy state->wsize or less output bytes into the circular window */ + if (copy >= state.wsize) { + utils.arraySet(state.window, src, end - state.wsize, state.wsize, 0); + state.wnext = 0; + state.whave = state.wsize; + } + else { + dist = state.wsize - state.wnext; + if (dist > copy) { + dist = copy; + } + //zmemcpy(state->window + state->wnext, end - copy, dist); + utils.arraySet(state.window, src, end - copy, dist, state.wnext); + copy -= dist; + if (copy) { + //zmemcpy(state->window, end - copy, copy); + utils.arraySet(state.window, src, end - copy, copy, 0); + state.wnext = copy; + state.whave = state.wsize; + } + else { + state.wnext += dist; + if (state.wnext === state.wsize) { state.wnext = 0; } + if (state.whave < state.wsize) { state.whave += dist; } + } + } + return 0; + } + + function inflate(strm, flush) { + var state; + var input, output; // input/output buffers + var next; /* next input INDEX */ + var put; /* next output INDEX */ + var have, left; /* available input and output */ + var hold; /* bit buffer */ + var bits; /* bits in bit buffer */ + var _in, _out; /* save starting available input and output */ + var copy; /* number of stored or match bytes to copy */ + var from; /* where to copy match bytes from */ + var from_source; + var here = 0; /* current decoding table entry */ + var here_bits, here_op, here_val; // paked "here" denormalized (JS specific) + //var last; /* parent table entry */ + var last_bits, last_op, last_val; // paked "last" denormalized (JS specific) + var len; /* length to copy for repeats, bits to drop */ + var ret; /* return code */ + var hbuf = new utils.Buf8(4); /* buffer for gzip header crc calculation */ + var opts; + + var n; // temporary var for NEED_BITS + + var order = /* permutation of code lengths */ + [ 16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15 ]; + + + if (!strm || !strm.state || !strm.output || + (!strm.input && strm.avail_in !== 0)) { + return Z_STREAM_ERROR; + } + + state = strm.state; + if (state.mode === TYPE) { state.mode = TYPEDO; } /* skip check */ + + + //--- LOAD() --- + put = strm.next_out; + output = strm.output; + left = strm.avail_out; + next = strm.next_in; + input = strm.input; + have = strm.avail_in; + hold = state.hold; + bits = state.bits; + //--- + + _in = have; + _out = left; + ret = Z_OK; + + inf_leave: // goto emulation + for (;;) { + switch (state.mode) { + case HEAD: + if (state.wrap === 0) { + state.mode = TYPEDO; + break; + } + //=== NEEDBITS(16); + while (bits < 16) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + if ((state.wrap & 2) && hold === 0x8b1f) { /* gzip header */ + state.check = 0/*crc32(0L, Z_NULL, 0)*/; + //=== CRC2(state.check, hold); + hbuf[0] = hold & 0xff; + hbuf[1] = (hold >>> 8) & 0xff; + state.check = crc32(state.check, hbuf, 2, 0); + //===// + + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + state.mode = FLAGS; + break; + } + state.flags = 0; /* expect zlib header */ + if (state.head) { + state.head.done = false; + } + if (!(state.wrap & 1) || /* check if zlib header allowed */ + (((hold & 0xff)/*BITS(8)*/ << 8) + (hold >> 8)) % 31) { + strm.msg = 'incorrect header check'; + state.mode = BAD; + break; + } + if ((hold & 0x0f)/*BITS(4)*/ !== Z_DEFLATED) { + strm.msg = 'unknown compression method'; + state.mode = BAD; + break; + } + //--- DROPBITS(4) ---// + hold >>>= 4; + bits -= 4; + //---// + len = (hold & 0x0f)/*BITS(4)*/ + 8; + if (state.wbits === 0) { + state.wbits = len; + } + else if (len > state.wbits) { + strm.msg = 'invalid window size'; + state.mode = BAD; + break; + } + state.dmax = 1 << len; + //Tracev((stderr, "inflate: zlib header ok\n")); + strm.adler = state.check = 1/*adler32(0L, Z_NULL, 0)*/; + state.mode = hold & 0x200 ? DICTID : TYPE; + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + break; + case FLAGS: + //=== NEEDBITS(16); */ + while (bits < 16) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + state.flags = hold; + if ((state.flags & 0xff) !== Z_DEFLATED) { + strm.msg = 'unknown compression method'; + state.mode = BAD; + break; + } + if (state.flags & 0xe000) { + strm.msg = 'unknown header flags set'; + state.mode = BAD; + break; + } + if (state.head) { + state.head.text = ((hold >> 8) & 1); + } + if (state.flags & 0x0200) { + //=== CRC2(state.check, hold); + hbuf[0] = hold & 0xff; + hbuf[1] = (hold >>> 8) & 0xff; + state.check = crc32(state.check, hbuf, 2, 0); + //===// + } + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + state.mode = TIME; + /* falls through */ + case TIME: + //=== NEEDBITS(32); */ + while (bits < 32) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + if (state.head) { + state.head.time = hold; + } + if (state.flags & 0x0200) { + //=== CRC4(state.check, hold) + hbuf[0] = hold & 0xff; + hbuf[1] = (hold >>> 8) & 0xff; + hbuf[2] = (hold >>> 16) & 0xff; + hbuf[3] = (hold >>> 24) & 0xff; + state.check = crc32(state.check, hbuf, 4, 0); + //=== + } + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + state.mode = OS; + /* falls through */ + case OS: + //=== NEEDBITS(16); */ + while (bits < 16) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + if (state.head) { + state.head.xflags = (hold & 0xff); + state.head.os = (hold >> 8); + } + if (state.flags & 0x0200) { + //=== CRC2(state.check, hold); + hbuf[0] = hold & 0xff; + hbuf[1] = (hold >>> 8) & 0xff; + state.check = crc32(state.check, hbuf, 2, 0); + //===// + } + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + state.mode = EXLEN; + /* falls through */ + case EXLEN: + if (state.flags & 0x0400) { + //=== NEEDBITS(16); */ + while (bits < 16) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + state.length = hold; + if (state.head) { + state.head.extra_len = hold; + } + if (state.flags & 0x0200) { + //=== CRC2(state.check, hold); + hbuf[0] = hold & 0xff; + hbuf[1] = (hold >>> 8) & 0xff; + state.check = crc32(state.check, hbuf, 2, 0); + //===// + } + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + } + else if (state.head) { + state.head.extra = null/*Z_NULL*/; + } + state.mode = EXTRA; + /* falls through */ + case EXTRA: + if (state.flags & 0x0400) { + copy = state.length; + if (copy > have) { copy = have; } + if (copy) { + if (state.head) { + len = state.head.extra_len - state.length; + if (!state.head.extra) { + // Use untyped array for more convenient processing later + state.head.extra = new Array(state.head.extra_len); + } + utils.arraySet( + state.head.extra, + input, + next, + // extra field is limited to 65536 bytes + // - no need for additional size check + copy, + /*len + copy > state.head.extra_max - len ? state.head.extra_max : copy,*/ + len + ); + //zmemcpy(state.head.extra + len, next, + // len + copy > state.head.extra_max ? + // state.head.extra_max - len : copy); + } + if (state.flags & 0x0200) { + state.check = crc32(state.check, input, copy, next); + } + have -= copy; + next += copy; + state.length -= copy; + } + if (state.length) { break inf_leave; } + } + state.length = 0; + state.mode = NAME; + /* falls through */ + case NAME: + if (state.flags & 0x0800) { + if (have === 0) { break inf_leave; } + copy = 0; + do { + // TODO: 2 or 1 bytes? + len = input[next + copy++]; + /* use constant limit because in js we should not preallocate memory */ + if (state.head && len && + (state.length < 65536 /*state.head.name_max*/)) { + state.head.name += String.fromCharCode(len); + } + } while (len && copy < have); + + if (state.flags & 0x0200) { + state.check = crc32(state.check, input, copy, next); + } + have -= copy; + next += copy; + if (len) { break inf_leave; } + } + else if (state.head) { + state.head.name = null; + } + state.length = 0; + state.mode = COMMENT; + /* falls through */ + case COMMENT: + if (state.flags & 0x1000) { + if (have === 0) { break inf_leave; } + copy = 0; + do { + len = input[next + copy++]; + /* use constant limit because in js we should not preallocate memory */ + if (state.head && len && + (state.length < 65536 /*state.head.comm_max*/)) { + state.head.comment += String.fromCharCode(len); + } + } while (len && copy < have); + if (state.flags & 0x0200) { + state.check = crc32(state.check, input, copy, next); + } + have -= copy; + next += copy; + if (len) { break inf_leave; } + } + else if (state.head) { + state.head.comment = null; + } + state.mode = HCRC; + /* falls through */ + case HCRC: + if (state.flags & 0x0200) { + //=== NEEDBITS(16); */ + while (bits < 16) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + if (hold !== (state.check & 0xffff)) { + strm.msg = 'header crc mismatch'; + state.mode = BAD; + break; + } + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + } + if (state.head) { + state.head.hcrc = ((state.flags >> 9) & 1); + state.head.done = true; + } + strm.adler = state.check = 0; + state.mode = TYPE; + break; + case DICTID: + //=== NEEDBITS(32); */ + while (bits < 32) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + strm.adler = state.check = zswap32(hold); + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + state.mode = DICT; + /* falls through */ + case DICT: + if (state.havedict === 0) { + //--- RESTORE() --- + strm.next_out = put; + strm.avail_out = left; + strm.next_in = next; + strm.avail_in = have; + state.hold = hold; + state.bits = bits; + //--- + return Z_NEED_DICT; + } + strm.adler = state.check = 1/*adler32(0L, Z_NULL, 0)*/; + state.mode = TYPE; + /* falls through */ + case TYPE: + if (flush === Z_BLOCK || flush === Z_TREES) { break inf_leave; } + /* falls through */ + case TYPEDO: + if (state.last) { + //--- BYTEBITS() ---// + hold >>>= bits & 7; + bits -= bits & 7; + //---// + state.mode = CHECK; + break; + } + //=== NEEDBITS(3); */ + while (bits < 3) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + state.last = (hold & 0x01)/*BITS(1)*/; + //--- DROPBITS(1) ---// + hold >>>= 1; + bits -= 1; + //---// + + switch ((hold & 0x03)/*BITS(2)*/) { + case 0: /* stored block */ + //Tracev((stderr, "inflate: stored block%s\n", + // state.last ? " (last)" : "")); + state.mode = STORED; + break; + case 1: /* fixed block */ + fixedtables(state); + //Tracev((stderr, "inflate: fixed codes block%s\n", + // state.last ? " (last)" : "")); + state.mode = LEN_; /* decode codes */ + if (flush === Z_TREES) { + //--- DROPBITS(2) ---// + hold >>>= 2; + bits -= 2; + //---// + break inf_leave; + } + break; + case 2: /* dynamic block */ + //Tracev((stderr, "inflate: dynamic codes block%s\n", + // state.last ? " (last)" : "")); + state.mode = TABLE; + break; + case 3: + strm.msg = 'invalid block type'; + state.mode = BAD; + } + //--- DROPBITS(2) ---// + hold >>>= 2; + bits -= 2; + //---// + break; + case STORED: + //--- BYTEBITS() ---// /* go to byte boundary */ + hold >>>= bits & 7; + bits -= bits & 7; + //---// + //=== NEEDBITS(32); */ + while (bits < 32) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + if ((hold & 0xffff) !== ((hold >>> 16) ^ 0xffff)) { + strm.msg = 'invalid stored block lengths'; + state.mode = BAD; + break; + } + state.length = hold & 0xffff; + //Tracev((stderr, "inflate: stored length %u\n", + // state.length)); + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + state.mode = COPY_; + if (flush === Z_TREES) { break inf_leave; } + /* falls through */ + case COPY_: + state.mode = COPY; + /* falls through */ + case COPY: + copy = state.length; + if (copy) { + if (copy > have) { copy = have; } + if (copy > left) { copy = left; } + if (copy === 0) { break inf_leave; } + //--- zmemcpy(put, next, copy); --- + utils.arraySet(output, input, next, copy, put); + //---// + have -= copy; + next += copy; + left -= copy; + put += copy; + state.length -= copy; + break; + } + //Tracev((stderr, "inflate: stored end\n")); + state.mode = TYPE; + break; + case TABLE: + //=== NEEDBITS(14); */ + while (bits < 14) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + state.nlen = (hold & 0x1f)/*BITS(5)*/ + 257; + //--- DROPBITS(5) ---// + hold >>>= 5; + bits -= 5; + //---// + state.ndist = (hold & 0x1f)/*BITS(5)*/ + 1; + //--- DROPBITS(5) ---// + hold >>>= 5; + bits -= 5; + //---// + state.ncode = (hold & 0x0f)/*BITS(4)*/ + 4; + //--- DROPBITS(4) ---// + hold >>>= 4; + bits -= 4; + //---// + //#ifndef PKZIP_BUG_WORKAROUND + if (state.nlen > 286 || state.ndist > 30) { + strm.msg = 'too many length or distance symbols'; + state.mode = BAD; + break; + } + //#endif + //Tracev((stderr, "inflate: table sizes ok\n")); + state.have = 0; + state.mode = LENLENS; + /* falls through */ + case LENLENS: + while (state.have < state.ncode) { + //=== NEEDBITS(3); + while (bits < 3) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + state.lens[order[state.have++]] = (hold & 0x07);//BITS(3); + //--- DROPBITS(3) ---// + hold >>>= 3; + bits -= 3; + //---// + } + while (state.have < 19) { + state.lens[order[state.have++]] = 0; + } + // We have separate tables & no pointers. 2 commented lines below not needed. + //state.next = state.codes; + //state.lencode = state.next; + // Switch to use dynamic table + state.lencode = state.lendyn; + state.lenbits = 7; + + opts = { bits: state.lenbits }; + ret = inflate_table(CODES, state.lens, 0, 19, state.lencode, 0, state.work, opts); + state.lenbits = opts.bits; + + if (ret) { + strm.msg = 'invalid code lengths set'; + state.mode = BAD; + break; + } + //Tracev((stderr, "inflate: code lengths ok\n")); + state.have = 0; + state.mode = CODELENS; + /* falls through */ + case CODELENS: + while (state.have < state.nlen + state.ndist) { + for (;;) { + here = state.lencode[hold & ((1 << state.lenbits) - 1)];/*BITS(state.lenbits)*/ + here_bits = here >>> 24; + here_op = (here >>> 16) & 0xff; + here_val = here & 0xffff; + + if ((here_bits) <= bits) { break; } + //--- PULLBYTE() ---// + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + //---// + } + if (here_val < 16) { + //--- DROPBITS(here.bits) ---// + hold >>>= here_bits; + bits -= here_bits; + //---// + state.lens[state.have++] = here_val; + } + else { + if (here_val === 16) { + //=== NEEDBITS(here.bits + 2); + n = here_bits + 2; + while (bits < n) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + //--- DROPBITS(here.bits) ---// + hold >>>= here_bits; + bits -= here_bits; + //---// + if (state.have === 0) { + strm.msg = 'invalid bit length repeat'; + state.mode = BAD; + break; + } + len = state.lens[state.have - 1]; + copy = 3 + (hold & 0x03);//BITS(2); + //--- DROPBITS(2) ---// + hold >>>= 2; + bits -= 2; + //---// + } + else if (here_val === 17) { + //=== NEEDBITS(here.bits + 3); + n = here_bits + 3; + while (bits < n) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + //--- DROPBITS(here.bits) ---// + hold >>>= here_bits; + bits -= here_bits; + //---// + len = 0; + copy = 3 + (hold & 0x07);//BITS(3); + //--- DROPBITS(3) ---// + hold >>>= 3; + bits -= 3; + //---// + } + else { + //=== NEEDBITS(here.bits + 7); + n = here_bits + 7; + while (bits < n) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + //--- DROPBITS(here.bits) ---// + hold >>>= here_bits; + bits -= here_bits; + //---// + len = 0; + copy = 11 + (hold & 0x7f);//BITS(7); + //--- DROPBITS(7) ---// + hold >>>= 7; + bits -= 7; + //---// + } + if (state.have + copy > state.nlen + state.ndist) { + strm.msg = 'invalid bit length repeat'; + state.mode = BAD; + break; + } + while (copy--) { + state.lens[state.have++] = len; + } + } + } + + /* handle error breaks in while */ + if (state.mode === BAD) { break; } + + /* check for end-of-block code (better have one) */ + if (state.lens[256] === 0) { + strm.msg = 'invalid code -- missing end-of-block'; + state.mode = BAD; + break; + } + + /* build code tables -- note: do not change the lenbits or distbits values here (9 and 6) without reading the comments in inftrees.h concerning the ENOUGH constants, which depend on those values */ - state.lenbits = 9; - - opts = { bits: state.lenbits }; - ret = inflate_table( - LENS, - state.lens, - 0, - state.nlen, - state.lencode, - 0, - state.work, - opts - ); - // We have separate tables & no pointers. 2 commented lines below not needed. - // state.next_index = opts.table_index; - state.lenbits = opts.bits; - // state.lencode = state.next; - - if ( ret ) { - strm.msg = - 'invalid literal/lengths set'; - state.mode = BAD; - break; - } - - state.distbits = 6; - //state.distcode.copy(state.codes); - // Switch to use dynamic table - state.distcode = state.distdyn; - opts = { bits: state.distbits }; - ret = inflate_table( - DISTS, - state.lens, - state.nlen, - state.ndist, - state.distcode, - 0, - state.work, - opts - ); - // We have separate tables & no pointers. 2 commented lines below not needed. - // state.next_index = opts.table_index; - state.distbits = opts.bits; - // state.distcode = state.next; - - if ( ret ) { - strm.msg = 'invalid distances set'; - state.mode = BAD; - break; - } - //Tracev((stderr, 'inflate: codes ok\n')); - state.mode = LEN_; - if ( flush === Z_TREES ) { - break inf_leave; - } - /* falls through */ - case LEN_: - state.mode = LEN; - /* falls through */ - case LEN: - if ( have >= 6 && left >= 258 ) { - //--- RESTORE() --- - strm.next_out = put; - strm.avail_out = left; - strm.next_in = next; - strm.avail_in = have; - state.hold = hold; - state.bits = bits; - //--- - inflate_fast( strm, _out ); - //--- LOAD() --- - put = strm.next_out; - output = strm.output; - left = strm.avail_out; - next = strm.next_in; - input = strm.input; - have = strm.avail_in; - hold = state.hold; - bits = state.bits; - //--- - - if ( state.mode === TYPE ) { - state.back = -1; - } - break; - } - state.back = 0; - for (;;) { - here = - state.lencode[ - hold & - ( ( 1 << state.lenbits ) - - 1 ) - ]; /*BITS(state.lenbits)*/ - here_bits = here >>> 24; - here_op = ( here >>> 16 ) & 0xff; - here_val = here & 0xffff; - - if ( here_bits <= bits ) { - break; - } - //--- PULLBYTE() ---// - if ( have === 0 ) { - break inf_leave; - } - have--; - hold += input[ next++ ] << bits; - bits += 8; - //---// - } - if ( here_op && ( here_op & 0xf0 ) === 0 ) { - last_bits = here_bits; - last_op = here_op; - last_val = here_val; - for (;;) { - here = - state.lencode[ - last_val + - ( ( hold & - ( ( 1 << - ( last_bits + - last_op ) ) - - 1 ) ) /*BITS(last.bits + last.op)*/ >> - last_bits ) - ]; - here_bits = here >>> 24; - here_op = ( here >>> 16 ) & 0xff; - here_val = here & 0xffff; - - if ( - last_bits + here_bits <= - bits - ) { - break; - } - //--- PULLBYTE() ---// - if ( have === 0 ) { - break inf_leave; - } - have--; - hold += input[ next++ ] << bits; - bits += 8; - //---// - } - //--- DROPBITS(last.bits) ---// - hold >>>= last_bits; - bits -= last_bits; - //---// - state.back += last_bits; - } - //--- DROPBITS(here.bits) ---// - hold >>>= here_bits; - bits -= here_bits; - //---// - state.back += here_bits; - state.length = here_val; - if ( here_op === 0 ) { - //Tracevv((stderr, here.val >= 0x20 && here.val < 0x7f ? - // "inflate: literal '%c'\n" : - // "inflate: literal 0x%02x\n", here.val)); - state.mode = LIT; - break; - } - if ( here_op & 32 ) { - //Tracevv((stderr, "inflate: end of block\n")); - state.back = -1; - state.mode = TYPE; - break; - } - if ( here_op & 64 ) { - strm.msg = - 'invalid literal/length code'; - state.mode = BAD; - break; - } - state.extra = here_op & 15; - state.mode = LENEXT; - /* falls through */ - case LENEXT: - if ( state.extra ) { - //=== NEEDBITS(state.extra); - n = state.extra; - while ( bits < n ) { - if ( have === 0 ) { - break inf_leave; - } - have--; - hold += input[ next++ ] << bits; - bits += 8; - } - //===// - state.length += - hold & - ( ( 1 << state.extra ) - - 1 ) /*BITS(state.extra)*/; - //--- DROPBITS(state.extra) ---// - hold >>>= state.extra; - bits -= state.extra; - //---// - state.back += state.extra; - } - //Tracevv((stderr, "inflate: length %u\n", state.length)); - state.was = state.length; - state.mode = DIST; - /* falls through */ - case DIST: - for (;;) { - here = - state.distcode[ - hold & - ( ( 1 << state.distbits ) - - 1 ) - ]; /*BITS(state.distbits)*/ - here_bits = here >>> 24; - here_op = ( here >>> 16 ) & 0xff; - here_val = here & 0xffff; - - if ( here_bits <= bits ) { - break; - } - //--- PULLBYTE() ---// - if ( have === 0 ) { - break inf_leave; - } - have--; - hold += input[ next++ ] << bits; - bits += 8; - //---// - } - if ( ( here_op & 0xf0 ) === 0 ) { - last_bits = here_bits; - last_op = here_op; - last_val = here_val; - for (;;) { - here = - state.distcode[ - last_val + - ( ( hold & - ( ( 1 << - ( last_bits + - last_op ) ) - - 1 ) ) /*BITS(last.bits + last.op)*/ >> - last_bits ) - ]; - here_bits = here >>> 24; - here_op = ( here >>> 16 ) & 0xff; - here_val = here & 0xffff; - - if ( - last_bits + here_bits <= - bits - ) { - break; - } - //--- PULLBYTE() ---// - if ( have === 0 ) { - break inf_leave; - } - have--; - hold += input[ next++ ] << bits; - bits += 8; - //---// - } - //--- DROPBITS(last.bits) ---// - hold >>>= last_bits; - bits -= last_bits; - //---// - state.back += last_bits; - } - //--- DROPBITS(here.bits) ---// - hold >>>= here_bits; - bits -= here_bits; - //---// - state.back += here_bits; - if ( here_op & 64 ) { - strm.msg = 'invalid distance code'; - state.mode = BAD; - break; - } - state.offset = here_val; - state.extra = here_op & 15; - state.mode = DISTEXT; - /* falls through */ - case DISTEXT: - if ( state.extra ) { - //=== NEEDBITS(state.extra); - n = state.extra; - while ( bits < n ) { - if ( have === 0 ) { - break inf_leave; - } - have--; - hold += input[ next++ ] << bits; - bits += 8; - } - //===// - state.offset += - hold & - ( ( 1 << state.extra ) - - 1 ) /*BITS(state.extra)*/; - //--- DROPBITS(state.extra) ---// - hold >>>= state.extra; - bits -= state.extra; - //---// - state.back += state.extra; - } - //#ifdef INFLATE_STRICT - if ( state.offset > state.dmax ) { - strm.msg = - 'invalid distance too far back'; - state.mode = BAD; - break; - } - //#endif - //Tracevv((stderr, "inflate: distance %u\n", state.offset)); - state.mode = MATCH; - /* falls through */ - case MATCH: - if ( left === 0 ) { - break inf_leave; - } - copy = _out - left; - if ( state.offset > copy ) { - /* copy from window */ - copy = state.offset - copy; - if ( copy > state.whave ) { - if ( state.sane ) { - strm.msg = - 'invalid distance too far back'; - state.mode = BAD; - break; - } - // (!) This block is disabled in zlib defaults, - // don't enable it for binary compatibility - //#ifdef INFLATE_ALLOW_INVALID_DISTANCE_TOOFAR_ARRR - // Trace((stderr, "inflate.c too far\n")); - // copy -= state.whave; - // if (copy > state.length) { copy = state.length; } - // if (copy > left) { copy = left; } - // left -= copy; - // state.length -= copy; - // do { - // output[put++] = 0; - // } while (--copy); - // if (state.length === 0) { state.mode = LEN; } - // break; - //#endif - } - if ( copy > state.wnext ) { - copy -= state.wnext; - from = state.wsize - copy; - } else { - from = state.wnext - copy; - } - if ( copy > state.length ) { - copy = state.length; - } - from_source = state.window; - } else { - /* copy from output */ - from_source = output; - from = put - state.offset; - copy = state.length; - } - if ( copy > left ) { - copy = left; - } - left -= copy; - state.length -= copy; - do { - output[ put++ ] = from_source[ from++ ]; - } while ( --copy ); - if ( state.length === 0 ) { - state.mode = LEN; - } - break; - case LIT: - if ( left === 0 ) { - break inf_leave; - } - output[ put++ ] = state.length; - left--; - state.mode = LEN; - break; - case CHECK: - if ( state.wrap ) { - //=== NEEDBITS(32); - while ( bits < 32 ) { - if ( have === 0 ) { - break inf_leave; - } - have--; - // Use '|' instead of '+' to make sure that result is signed - hold |= input[ next++ ] << bits; - bits += 8; - } - //===// - _out -= left; - strm.total_out += _out; - state.total += _out; - if ( _out ) { - strm.adler = state.check = - /*UPDATE(state.check, put - _out, _out);*/ - state.flags - ? crc32( - state.check, - output, - _out, - put - _out - ) - : adler32( - state.check, - output, - _out, - put - _out - ); - } - _out = left; - // NB: crc32 stored as signed 32-bit int, zswap32 returns signed too - if ( - ( state.flags - ? hold - : zswap32( hold ) ) !== - state.check - ) { - strm.msg = 'incorrect data check'; - state.mode = BAD; - break; - } - //=== INITBITS(); - hold = 0; - bits = 0; - //===// - //Tracev((stderr, "inflate: check matches trailer\n")); - } - state.mode = LENGTH; - /* falls through */ - case LENGTH: - if ( state.wrap && state.flags ) { - //=== NEEDBITS(32); - while ( bits < 32 ) { - if ( have === 0 ) { - break inf_leave; - } - have--; - hold += input[ next++ ] << bits; - bits += 8; - } - //===// - if ( - hold !== - ( state.total & 0xffffffff ) - ) { - strm.msg = 'incorrect length check'; - state.mode = BAD; - break; - } - //=== INITBITS(); - hold = 0; - bits = 0; - //===// - //Tracev((stderr, "inflate: length matches trailer\n")); - } - state.mode = DONE; - /* falls through */ - case DONE: - ret = Z_STREAM_END; - break inf_leave; - case BAD: - ret = Z_DATA_ERROR; - break inf_leave; - case MEM: - return Z_MEM_ERROR; - case SYNC: - /* falls through */ - default: - return Z_STREAM_ERROR; - } - } - - // inf_leave <- here is real place for "goto inf_leave", emulated via "break inf_leave" - - /* + state.lenbits = 9; + + opts = { bits: state.lenbits }; + ret = inflate_table(LENS, state.lens, 0, state.nlen, state.lencode, 0, state.work, opts); + // We have separate tables & no pointers. 2 commented lines below not needed. + // state.next_index = opts.table_index; + state.lenbits = opts.bits; + // state.lencode = state.next; + + if (ret) { + strm.msg = 'invalid literal/lengths set'; + state.mode = BAD; + break; + } + + state.distbits = 6; + //state.distcode.copy(state.codes); + // Switch to use dynamic table + state.distcode = state.distdyn; + opts = { bits: state.distbits }; + ret = inflate_table(DISTS, state.lens, state.nlen, state.ndist, state.distcode, 0, state.work, opts); + // We have separate tables & no pointers. 2 commented lines below not needed. + // state.next_index = opts.table_index; + state.distbits = opts.bits; + // state.distcode = state.next; + + if (ret) { + strm.msg = 'invalid distances set'; + state.mode = BAD; + break; + } + //Tracev((stderr, 'inflate: codes ok\n')); + state.mode = LEN_; + if (flush === Z_TREES) { break inf_leave; } + /* falls through */ + case LEN_: + state.mode = LEN; + /* falls through */ + case LEN: + if (have >= 6 && left >= 258) { + //--- RESTORE() --- + strm.next_out = put; + strm.avail_out = left; + strm.next_in = next; + strm.avail_in = have; + state.hold = hold; + state.bits = bits; + //--- + inflate_fast(strm, _out); + //--- LOAD() --- + put = strm.next_out; + output = strm.output; + left = strm.avail_out; + next = strm.next_in; + input = strm.input; + have = strm.avail_in; + hold = state.hold; + bits = state.bits; + //--- + + if (state.mode === TYPE) { + state.back = -1; + } + break; + } + state.back = 0; + for (;;) { + here = state.lencode[hold & ((1 << state.lenbits) - 1)]; /*BITS(state.lenbits)*/ + here_bits = here >>> 24; + here_op = (here >>> 16) & 0xff; + here_val = here & 0xffff; + + if (here_bits <= bits) { break; } + //--- PULLBYTE() ---// + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + //---// + } + if (here_op && (here_op & 0xf0) === 0) { + last_bits = here_bits; + last_op = here_op; + last_val = here_val; + for (;;) { + here = state.lencode[last_val + + ((hold & ((1 << (last_bits + last_op)) - 1))/*BITS(last.bits + last.op)*/ >> last_bits)]; + here_bits = here >>> 24; + here_op = (here >>> 16) & 0xff; + here_val = here & 0xffff; + + if ((last_bits + here_bits) <= bits) { break; } + //--- PULLBYTE() ---// + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + //---// + } + //--- DROPBITS(last.bits) ---// + hold >>>= last_bits; + bits -= last_bits; + //---// + state.back += last_bits; + } + //--- DROPBITS(here.bits) ---// + hold >>>= here_bits; + bits -= here_bits; + //---// + state.back += here_bits; + state.length = here_val; + if (here_op === 0) { + //Tracevv((stderr, here.val >= 0x20 && here.val < 0x7f ? + // "inflate: literal '%c'\n" : + // "inflate: literal 0x%02x\n", here.val)); + state.mode = LIT; + break; + } + if (here_op & 32) { + //Tracevv((stderr, "inflate: end of block\n")); + state.back = -1; + state.mode = TYPE; + break; + } + if (here_op & 64) { + strm.msg = 'invalid literal/length code'; + state.mode = BAD; + break; + } + state.extra = here_op & 15; + state.mode = LENEXT; + /* falls through */ + case LENEXT: + if (state.extra) { + //=== NEEDBITS(state.extra); + n = state.extra; + while (bits < n) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + state.length += hold & ((1 << state.extra) - 1)/*BITS(state.extra)*/; + //--- DROPBITS(state.extra) ---// + hold >>>= state.extra; + bits -= state.extra; + //---// + state.back += state.extra; + } + //Tracevv((stderr, "inflate: length %u\n", state.length)); + state.was = state.length; + state.mode = DIST; + /* falls through */ + case DIST: + for (;;) { + here = state.distcode[hold & ((1 << state.distbits) - 1)];/*BITS(state.distbits)*/ + here_bits = here >>> 24; + here_op = (here >>> 16) & 0xff; + here_val = here & 0xffff; + + if ((here_bits) <= bits) { break; } + //--- PULLBYTE() ---// + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + //---// + } + if ((here_op & 0xf0) === 0) { + last_bits = here_bits; + last_op = here_op; + last_val = here_val; + for (;;) { + here = state.distcode[last_val + + ((hold & ((1 << (last_bits + last_op)) - 1))/*BITS(last.bits + last.op)*/ >> last_bits)]; + here_bits = here >>> 24; + here_op = (here >>> 16) & 0xff; + here_val = here & 0xffff; + + if ((last_bits + here_bits) <= bits) { break; } + //--- PULLBYTE() ---// + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + //---// + } + //--- DROPBITS(last.bits) ---// + hold >>>= last_bits; + bits -= last_bits; + //---// + state.back += last_bits; + } + //--- DROPBITS(here.bits) ---// + hold >>>= here_bits; + bits -= here_bits; + //---// + state.back += here_bits; + if (here_op & 64) { + strm.msg = 'invalid distance code'; + state.mode = BAD; + break; + } + state.offset = here_val; + state.extra = (here_op) & 15; + state.mode = DISTEXT; + /* falls through */ + case DISTEXT: + if (state.extra) { + //=== NEEDBITS(state.extra); + n = state.extra; + while (bits < n) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + state.offset += hold & ((1 << state.extra) - 1)/*BITS(state.extra)*/; + //--- DROPBITS(state.extra) ---// + hold >>>= state.extra; + bits -= state.extra; + //---// + state.back += state.extra; + } + //#ifdef INFLATE_STRICT + if (state.offset > state.dmax) { + strm.msg = 'invalid distance too far back'; + state.mode = BAD; + break; + } + //#endif + //Tracevv((stderr, "inflate: distance %u\n", state.offset)); + state.mode = MATCH; + /* falls through */ + case MATCH: + if (left === 0) { break inf_leave; } + copy = _out - left; + if (state.offset > copy) { /* copy from window */ + copy = state.offset - copy; + if (copy > state.whave) { + if (state.sane) { + strm.msg = 'invalid distance too far back'; + state.mode = BAD; + break; + } + // (!) This block is disabled in zlib defaults, + // don't enable it for binary compatibility + //#ifdef INFLATE_ALLOW_INVALID_DISTANCE_TOOFAR_ARRR + // Trace((stderr, "inflate.c too far\n")); + // copy -= state.whave; + // if (copy > state.length) { copy = state.length; } + // if (copy > left) { copy = left; } + // left -= copy; + // state.length -= copy; + // do { + // output[put++] = 0; + // } while (--copy); + // if (state.length === 0) { state.mode = LEN; } + // break; + //#endif + } + if (copy > state.wnext) { + copy -= state.wnext; + from = state.wsize - copy; + } + else { + from = state.wnext - copy; + } + if (copy > state.length) { copy = state.length; } + from_source = state.window; + } + else { /* copy from output */ + from_source = output; + from = put - state.offset; + copy = state.length; + } + if (copy > left) { copy = left; } + left -= copy; + state.length -= copy; + do { + output[put++] = from_source[from++]; + } while (--copy); + if (state.length === 0) { state.mode = LEN; } + break; + case LIT: + if (left === 0) { break inf_leave; } + output[put++] = state.length; + left--; + state.mode = LEN; + break; + case CHECK: + if (state.wrap) { + //=== NEEDBITS(32); + while (bits < 32) { + if (have === 0) { break inf_leave; } + have--; + // Use '|' instead of '+' to make sure that result is signed + hold |= input[next++] << bits; + bits += 8; + } + //===// + _out -= left; + strm.total_out += _out; + state.total += _out; + if (_out) { + strm.adler = state.check = + /*UPDATE(state.check, put - _out, _out);*/ + (state.flags ? crc32(state.check, output, _out, put - _out) : adler32(state.check, output, _out, put - _out)); + + } + _out = left; + // NB: crc32 stored as signed 32-bit int, zswap32 returns signed too + if ((state.flags ? hold : zswap32(hold)) !== state.check) { + strm.msg = 'incorrect data check'; + state.mode = BAD; + break; + } + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + //Tracev((stderr, "inflate: check matches trailer\n")); + } + state.mode = LENGTH; + /* falls through */ + case LENGTH: + if (state.wrap && state.flags) { + //=== NEEDBITS(32); + while (bits < 32) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + if (hold !== (state.total & 0xffffffff)) { + strm.msg = 'incorrect length check'; + state.mode = BAD; + break; + } + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + //Tracev((stderr, "inflate: length matches trailer\n")); + } + state.mode = DONE; + /* falls through */ + case DONE: + ret = Z_STREAM_END; + break inf_leave; + case BAD: + ret = Z_DATA_ERROR; + break inf_leave; + case MEM: + return Z_MEM_ERROR; + case SYNC: + /* falls through */ + default: + return Z_STREAM_ERROR; + } + } + + // inf_leave <- here is real place for "goto inf_leave", emulated via "break inf_leave" + + /* Return from inflate(), updating the total counts and the check value. If there was no progress during the inflate() call, return a buffer error. Call updatewindow() to create and/or update the window state. Note: a memory error from inflate() is non-recoverable. */ - //--- RESTORE() --- - strm.next_out = put; - strm.avail_out = left; - strm.next_in = next; - strm.avail_in = have; - state.hold = hold; - state.bits = bits; - //--- - - if ( - state.wsize || - ( _out !== strm.avail_out && - state.mode < BAD && - ( state.mode < CHECK || flush !== Z_FINISH ) ) - ) { - if ( - updatewindow( - strm, - strm.output, - strm.next_out, - _out - strm.avail_out - ) - ) { - state.mode = MEM; - return Z_MEM_ERROR; - } - } - _in -= strm.avail_in; - _out -= strm.avail_out; - strm.total_in += _in; - strm.total_out += _out; - state.total += _out; - if ( state.wrap && _out ) { - strm.adler = state.check = - /*UPDATE(state.check, strm.next_out - _out, _out);*/ - state.flags - ? crc32( - state.check, - output, - _out, - strm.next_out - _out - ) - : adler32( - state.check, - output, - _out, - strm.next_out - _out - ); - } - strm.data_type = - state.bits + - ( state.last ? 64 : 0 ) + - ( state.mode === TYPE ? 128 : 0 ) + - ( state.mode === LEN_ || state.mode === COPY_ - ? 256 - : 0 ); - if ( - ( ( _in === 0 && _out === 0 ) || - flush === Z_FINISH ) && - ret === Z_OK - ) { - ret = Z_BUF_ERROR; - } - return ret; - } - - function inflateEnd( strm ) { - if ( - ! strm || - ! strm.state /*|| strm->zfree == (free_func)0*/ - ) { - return Z_STREAM_ERROR; - } - - var state = strm.state; - if ( state.window ) { - state.window = null; - } - strm.state = null; - return Z_OK; - } - - function inflateGetHeader( strm, head ) { - var state; - - /* check state */ - if ( ! strm || ! strm.state ) { - return Z_STREAM_ERROR; - } - state = strm.state; - if ( ( state.wrap & 2 ) === 0 ) { - return Z_STREAM_ERROR; - } - - /* save header structure */ - state.head = head; - head.done = false; - return Z_OK; - } - - function inflateSetDictionary( strm, dictionary ) { - var dictLength = dictionary.length; - - var state; - var dictid; - var ret; - - /* check state */ - if ( - ! strm /* == Z_NULL */ || - ! strm.state /* == Z_NULL */ - ) { - return Z_STREAM_ERROR; - } - state = strm.state; - - if ( state.wrap !== 0 && state.mode !== DICT ) { - return Z_STREAM_ERROR; - } - - /* check for correct dictionary identifier */ - if ( state.mode === DICT ) { - dictid = 1; /* adler32(0, null, 0)*/ - /* dictid = adler32(dictid, dictionary, dictLength); */ - dictid = adler32( - dictid, - dictionary, - dictLength, - 0 - ); - if ( dictid !== state.check ) { - return Z_DATA_ERROR; - } - } - /* copy dictionary to window using updatewindow(), which will amend the + //--- RESTORE() --- + strm.next_out = put; + strm.avail_out = left; + strm.next_in = next; + strm.avail_in = have; + state.hold = hold; + state.bits = bits; + //--- + + if (state.wsize || (_out !== strm.avail_out && state.mode < BAD && + (state.mode < CHECK || flush !== Z_FINISH))) { + if (updatewindow(strm, strm.output, strm.next_out, _out - strm.avail_out)) { + state.mode = MEM; + return Z_MEM_ERROR; + } + } + _in -= strm.avail_in; + _out -= strm.avail_out; + strm.total_in += _in; + strm.total_out += _out; + state.total += _out; + if (state.wrap && _out) { + strm.adler = state.check = /*UPDATE(state.check, strm.next_out - _out, _out);*/ + (state.flags ? crc32(state.check, output, _out, strm.next_out - _out) : adler32(state.check, output, _out, strm.next_out - _out)); + } + strm.data_type = state.bits + (state.last ? 64 : 0) + + (state.mode === TYPE ? 128 : 0) + + (state.mode === LEN_ || state.mode === COPY_ ? 256 : 0); + if (((_in === 0 && _out === 0) || flush === Z_FINISH) && ret === Z_OK) { + ret = Z_BUF_ERROR; + } + return ret; + } + + function inflateEnd(strm) { + + if (!strm || !strm.state /*|| strm->zfree == (free_func)0*/) { + return Z_STREAM_ERROR; + } + + var state = strm.state; + if (state.window) { + state.window = null; + } + strm.state = null; + return Z_OK; + } + + function inflateGetHeader(strm, head) { + var state; + + /* check state */ + if (!strm || !strm.state) { return Z_STREAM_ERROR; } + state = strm.state; + if ((state.wrap & 2) === 0) { return Z_STREAM_ERROR; } + + /* save header structure */ + state.head = head; + head.done = false; + return Z_OK; + } + + function inflateSetDictionary(strm, dictionary) { + var dictLength = dictionary.length; + + var state; + var dictid; + var ret; + + /* check state */ + if (!strm /* == Z_NULL */ || !strm.state /* == Z_NULL */) { return Z_STREAM_ERROR; } + state = strm.state; + + if (state.wrap !== 0 && state.mode !== DICT) { + return Z_STREAM_ERROR; + } + + /* check for correct dictionary identifier */ + if (state.mode === DICT) { + dictid = 1; /* adler32(0, null, 0)*/ + /* dictid = adler32(dictid, dictionary, dictLength); */ + dictid = adler32(dictid, dictionary, dictLength, 0); + if (dictid !== state.check) { + return Z_DATA_ERROR; + } + } + /* copy dictionary to window using updatewindow(), which will amend the existing dictionary if appropriate */ - ret = updatewindow( - strm, - dictionary, - dictLength, - dictLength - ); - if ( ret ) { - state.mode = MEM; - return Z_MEM_ERROR; - } - state.havedict = 1; - // Tracev((stderr, "inflate: dictionary set\n")); - return Z_OK; - } - - exports.inflateReset = inflateReset; - exports.inflateReset2 = inflateReset2; - exports.inflateResetKeep = inflateResetKeep; - exports.inflateInit = inflateInit; - exports.inflateInit2 = inflateInit2; - exports.inflate = inflate; - exports.inflateEnd = inflateEnd; - exports.inflateGetHeader = inflateGetHeader; - exports.inflateSetDictionary = inflateSetDictionary; - exports.inflateInfo = 'pako inflate (from Nodeca project)'; - - /* Not implemented + ret = updatewindow(strm, dictionary, dictLength, dictLength); + if (ret) { + state.mode = MEM; + return Z_MEM_ERROR; + } + state.havedict = 1; + // Tracev((stderr, "inflate: dictionary set\n")); + return Z_OK; + } + + exports.inflateReset = inflateReset; + exports.inflateReset2 = inflateReset2; + exports.inflateResetKeep = inflateResetKeep; + exports.inflateInit = inflateInit; + exports.inflateInit2 = inflateInit2; + exports.inflate = inflate; + exports.inflateEnd = inflateEnd; + exports.inflateGetHeader = inflateGetHeader; + exports.inflateSetDictionary = inflateSetDictionary; + exports.inflateInfo = 'pako inflate (from Nodeca project)'; + + /* Not implemented exports.inflateCopy = inflateCopy; exports.inflateGetDictionary = inflateGetDictionary; exports.inflateMark = inflateMark; @@ -3094,114 +2444,93 @@ exports.inflateSyncPoint = inflateSyncPoint; exports.inflateUndermine = inflateUndermine; */ - }, - { - '../utils/common': 1, - './adler32': 3, - './crc32': 5, - './inffast': 7, - './inftrees': 9, - }, - ], - 9: [ - function ( require, module, exports ) { - 'use strict'; - - // (C) 1995-2013 Jean-loup Gailly and Mark Adler - // (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin - // - // This software is provided 'as-is', without any express or implied - // warranty. In no event will the authors be held liable for any damages - // arising from the use of this software. - // - // Permission is granted to anyone to use this software for any purpose, - // including commercial applications, and to alter it and redistribute it - // freely, subject to the following restrictions: - // - // 1. The origin of this software must not be misrepresented; you must not - // claim that you wrote the original software. If you use this software - // in a product, an acknowledgment in the product documentation would be - // appreciated but is not required. - // 2. Altered source versions must be plainly marked as such, and must not be - // misrepresented as being the original software. - // 3. This notice may not be removed or altered from any source distribution. - - var utils = require( '../utils/common' ); - - var MAXBITS = 15; - var ENOUGH_LENS = 852; - var ENOUGH_DISTS = 592; - //var ENOUGH = (ENOUGH_LENS+ENOUGH_DISTS); - - var CODES = 0; - var LENS = 1; - var DISTS = 2; - - var lbase = [ - /* Length codes 257..285 base */ 3, 4, 5, 6, 7, 8, 9, - 10, 11, 13, 15, 17, 19, 23, 27, 31, 35, 43, 51, 59, 67, - 83, 99, 115, 131, 163, 195, 227, 258, 0, 0, - ]; - - var lext = [ - /* Length codes 257..285 extra */ 16, 16, 16, 16, 16, - 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 19, 19, 19, - 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 72, 78, - ]; - - var dbase = [ - /* Distance codes 0..29 base */ 1, 2, 3, 4, 5, 7, 9, 13, - 17, 25, 33, 49, 65, 97, 129, 193, 257, 385, 513, 769, - 1025, 1537, 2049, 3073, 4097, 6145, 8193, 12289, 16385, - 24577, 0, 0, - ]; - - var dext = [ - /* Distance codes 0..29 extra */ 16, 16, 16, 16, 17, 17, - 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, 23, 23, 24, 24, - 25, 25, 26, 26, 27, 27, 28, 28, 29, 29, 64, 64, - ]; - - module.exports = function inflate_table( - type, - lens, - lens_index, - codes, - table, - table_index, - work, - opts - ) { - var bits = opts.bits; - //here = opts.here; /* table entry for duplication */ - - var len = 0; /* a code's length in bits */ - var sym = 0; /* index of code symbols */ - var min = 0, - max = 0; /* minimum and maximum code lengths */ - var root = 0; /* number of index bits for root table */ - var curr = 0; /* number of index bits for current table */ - var drop = 0; /* code bits to drop for sub-table */ - var left = 0; /* number of prefix codes available */ - var used = 0; /* code entries in table used */ - var huff = 0; /* Huffman code */ - var incr; /* for incrementing code, index */ - var fill; /* index for replicating entries */ - var low; /* low bits for current root entry */ - var mask; /* mask for low root bits */ - var next; /* next available space in table */ - var base = null; /* base value table to use */ - var base_index = 0; - // var shoextra; /* extra bits table to use */ - var end; /* use base and extra for symbol > end */ - var count = new utils.Buf16( MAXBITS + 1 ); //[MAXBITS+1]; /* number of codes of each length */ - var offs = new utils.Buf16( MAXBITS + 1 ); //[MAXBITS+1]; /* offsets in table for each length */ - var extra = null; - var extra_index = 0; - - var here_bits, here_op, here_val; - - /* + + },{"../utils/common":1,"./adler32":3,"./crc32":5,"./inffast":7,"./inftrees":9}],9:[function(require,module,exports){ + 'use strict'; + + // (C) 1995-2013 Jean-loup Gailly and Mark Adler + // (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin + // + // This software is provided 'as-is', without any express or implied + // warranty. In no event will the authors be held liable for any damages + // arising from the use of this software. + // + // Permission is granted to anyone to use this software for any purpose, + // including commercial applications, and to alter it and redistribute it + // freely, subject to the following restrictions: + // + // 1. The origin of this software must not be misrepresented; you must not + // claim that you wrote the original software. If you use this software + // in a product, an acknowledgment in the product documentation would be + // appreciated but is not required. + // 2. Altered source versions must be plainly marked as such, and must not be + // misrepresented as being the original software. + // 3. This notice may not be removed or altered from any source distribution. + + var utils = require('../utils/common'); + + var MAXBITS = 15; + var ENOUGH_LENS = 852; + var ENOUGH_DISTS = 592; + //var ENOUGH = (ENOUGH_LENS+ENOUGH_DISTS); + + var CODES = 0; + var LENS = 1; + var DISTS = 2; + + var lbase = [ /* Length codes 257..285 base */ + 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31, + 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0 + ]; + + var lext = [ /* Length codes 257..285 extra */ + 16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, + 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 72, 78 + ]; + + var dbase = [ /* Distance codes 0..29 base */ + 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, + 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, + 8193, 12289, 16385, 24577, 0, 0 + ]; + + var dext = [ /* Distance codes 0..29 extra */ + 16, 16, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, + 23, 23, 24, 24, 25, 25, 26, 26, 27, 27, + 28, 28, 29, 29, 64, 64 + ]; + + module.exports = function inflate_table(type, lens, lens_index, codes, table, table_index, work, opts) + { + var bits = opts.bits; + //here = opts.here; /* table entry for duplication */ + + var len = 0; /* a code's length in bits */ + var sym = 0; /* index of code symbols */ + var min = 0, max = 0; /* minimum and maximum code lengths */ + var root = 0; /* number of index bits for root table */ + var curr = 0; /* number of index bits for current table */ + var drop = 0; /* code bits to drop for sub-table */ + var left = 0; /* number of prefix codes available */ + var used = 0; /* code entries in table used */ + var huff = 0; /* Huffman code */ + var incr; /* for incrementing code, index */ + var fill; /* index for replicating entries */ + var low; /* low bits for current root entry */ + var mask; /* mask for low root bits */ + var next; /* next available space in table */ + var base = null; /* base value table to use */ + var base_index = 0; + // var shoextra; /* extra bits table to use */ + var end; /* use base and extra for symbol > end */ + var count = new utils.Buf16(MAXBITS + 1); //[MAXBITS+1]; /* number of codes of each length */ + var offs = new utils.Buf16(MAXBITS + 1); //[MAXBITS+1]; /* offsets in table for each length */ + var extra = null; + var extra_index = 0; + + var here_bits, here_op, here_val; + + /* Process a set of code lengths to create a canonical Huffman code. The code lengths are lens[0..codes-1]. Each length corresponds to the symbols 0..codes-1. The Huffman code is generated by first sorting the @@ -3232,78 +2561,71 @@ decoding tables. */ - /* accumulate lengths for codes (assumes lens[] all in 0..MAXBITS) */ - for ( len = 0; len <= MAXBITS; len++ ) { - count[ len ] = 0; - } - for ( sym = 0; sym < codes; sym++ ) { - count[ lens[ lens_index + sym ] ]++; - } - - /* bound code lengths, force root to be within code lengths */ - root = bits; - for ( max = MAXBITS; max >= 1; max-- ) { - if ( count[ max ] !== 0 ) { - break; - } - } - if ( root > max ) { - root = max; - } - if ( max === 0 ) { - /* no symbols to code at all */ - //table.op[opts.table_index] = 64; //here.op = (var char)64; /* invalid code marker */ - //table.bits[opts.table_index] = 1; //here.bits = (var char)1; - //table.val[opts.table_index++] = 0; //here.val = (var short)0; - table[ table_index++ ] = - ( 1 << 24 ) | ( 64 << 16 ) | 0; - - //table.op[opts.table_index] = 64; - //table.bits[opts.table_index] = 1; - //table.val[opts.table_index++] = 0; - table[ table_index++ ] = - ( 1 << 24 ) | ( 64 << 16 ) | 0; - - opts.bits = 1; - return 0; /* no symbols, but wait for decoding to report error */ - } - for ( min = 1; min < max; min++ ) { - if ( count[ min ] !== 0 ) { - break; - } - } - if ( root < min ) { - root = min; - } - - /* check for an over-subscribed or incomplete set of lengths */ - left = 1; - for ( len = 1; len <= MAXBITS; len++ ) { - left <<= 1; - left -= count[ len ]; - if ( left < 0 ) { - return -1; - } /* over-subscribed */ - } - if ( left > 0 && ( type === CODES || max !== 1 ) ) { - return -1; /* incomplete set */ - } - - /* generate offsets into symbol table for each length for sorting */ - offs[ 1 ] = 0; - for ( len = 1; len < MAXBITS; len++ ) { - offs[ len + 1 ] = offs[ len ] + count[ len ]; - } - - /* sort symbols by length, by symbol order within each length */ - for ( sym = 0; sym < codes; sym++ ) { - if ( lens[ lens_index + sym ] !== 0 ) { - work[ offs[ lens[ lens_index + sym ] ]++ ] = - sym; - } - } - - /* + /* accumulate lengths for codes (assumes lens[] all in 0..MAXBITS) */ + for (len = 0; len <= MAXBITS; len++) { + count[len] = 0; + } + for (sym = 0; sym < codes; sym++) { + count[lens[lens_index + sym]]++; + } + + /* bound code lengths, force root to be within code lengths */ + root = bits; + for (max = MAXBITS; max >= 1; max--) { + if (count[max] !== 0) { break; } + } + if (root > max) { + root = max; + } + if (max === 0) { /* no symbols to code at all */ + //table.op[opts.table_index] = 64; //here.op = (var char)64; /* invalid code marker */ + //table.bits[opts.table_index] = 1; //here.bits = (var char)1; + //table.val[opts.table_index++] = 0; //here.val = (var short)0; + table[table_index++] = (1 << 24) | (64 << 16) | 0; + + + //table.op[opts.table_index] = 64; + //table.bits[opts.table_index] = 1; + //table.val[opts.table_index++] = 0; + table[table_index++] = (1 << 24) | (64 << 16) | 0; + + opts.bits = 1; + return 0; /* no symbols, but wait for decoding to report error */ + } + for (min = 1; min < max; min++) { + if (count[min] !== 0) { break; } + } + if (root < min) { + root = min; + } + + /* check for an over-subscribed or incomplete set of lengths */ + left = 1; + for (len = 1; len <= MAXBITS; len++) { + left <<= 1; + left -= count[len]; + if (left < 0) { + return -1; + } /* over-subscribed */ + } + if (left > 0 && (type === CODES || max !== 1)) { + return -1; /* incomplete set */ + } + + /* generate offsets into symbol table for each length for sorting */ + offs[1] = 0; + for (len = 1; len < MAXBITS; len++) { + offs[len + 1] = offs[len] + count[len]; + } + + /* sort symbols by length, by symbol order within each length */ + for (sym = 0; sym < codes; sym++) { + if (lens[lens_index + sym] !== 0) { + work[offs[lens[lens_index + sym]]++] = sym; + } + } + + /* Create and fill in decoding tables. In this loop, the table being filled is at next and has curr index bits. The code being used is huff with length len. That code is converted to an index by dropping drop @@ -3334,749 +2656,648 @@ in the rest of the decoding tables with invalid code markers. */ - /* set up for code type */ - // poor man optimization - use if-else instead of switch, - // to avoid deopts in old v8 - if ( type === CODES ) { - base = extra = work; /* dummy value--not used */ - end = 19; - } else if ( type === LENS ) { - base = lbase; - base_index -= 257; - extra = lext; - extra_index -= 257; - end = 256; - } else { - /* DISTS */ - base = dbase; - extra = dext; - end = -1; - } - - /* initialize opts for loop */ - huff = 0; /* starting code */ - sym = 0; /* starting code symbol */ - len = min; /* starting code length */ - next = table_index; /* current table to fill in */ - curr = root; /* current table index bits */ - drop = 0; /* current bits to drop from code for index */ - low = -1; /* trigger new sub-table when len > root */ - used = 1 << root; /* use root table entries */ - mask = used - 1; /* mask for comparing low */ - - /* check available table space */ - if ( - ( type === LENS && used > ENOUGH_LENS ) || - ( type === DISTS && used > ENOUGH_DISTS ) - ) { - return 1; - } - - /* process all codes and make table entries */ - for (;;) { - /* create table entry */ - here_bits = len - drop; - if ( work[ sym ] < end ) { - here_op = 0; - here_val = work[ sym ]; - } else if ( work[ sym ] > end ) { - here_op = extra[ extra_index + work[ sym ] ]; - here_val = base[ base_index + work[ sym ] ]; - } else { - here_op = 32 + 64; /* end of block */ - here_val = 0; - } - - /* replicate for those indices with low len bits equal to huff */ - incr = 1 << ( len - drop ); - fill = 1 << curr; - min = fill; /* save offset to next table */ - do { - fill -= incr; - table[ next + ( huff >> drop ) + fill ] = - ( here_bits << 24 ) | - ( here_op << 16 ) | - here_val | - 0; - } while ( fill !== 0 ); - - /* backwards increment the len-bit code huff */ - incr = 1 << ( len - 1 ); - while ( huff & incr ) { - incr >>= 1; - } - if ( incr !== 0 ) { - huff &= incr - 1; - huff += incr; - } else { - huff = 0; - } - - /* go to next symbol, update count, len */ - sym++; - if ( --count[ len ] === 0 ) { - if ( len === max ) { - break; - } - len = lens[ lens_index + work[ sym ] ]; - } - - /* create new sub-table if needed */ - if ( len > root && ( huff & mask ) !== low ) { - /* if first time, transition to sub-tables */ - if ( drop === 0 ) { - drop = root; - } - - /* increment past last table */ - next += min; /* here min is 1 << curr */ - - /* determine length of next table */ - curr = len - drop; - left = 1 << curr; - while ( curr + drop < max ) { - left -= count[ curr + drop ]; - if ( left <= 0 ) { - break; - } - curr++; - left <<= 1; - } - - /* check for enough space */ - used += 1 << curr; - if ( - ( type === LENS && used > ENOUGH_LENS ) || - ( type === DISTS && used > ENOUGH_DISTS ) - ) { - return 1; - } - - /* point entry in root table to sub-table */ - low = huff & mask; - /*table.op[low] = curr; + /* set up for code type */ + // poor man optimization - use if-else instead of switch, + // to avoid deopts in old v8 + if (type === CODES) { + base = extra = work; /* dummy value--not used */ + end = 19; + + } else if (type === LENS) { + base = lbase; + base_index -= 257; + extra = lext; + extra_index -= 257; + end = 256; + + } else { /* DISTS */ + base = dbase; + extra = dext; + end = -1; + } + + /* initialize opts for loop */ + huff = 0; /* starting code */ + sym = 0; /* starting code symbol */ + len = min; /* starting code length */ + next = table_index; /* current table to fill in */ + curr = root; /* current table index bits */ + drop = 0; /* current bits to drop from code for index */ + low = -1; /* trigger new sub-table when len > root */ + used = 1 << root; /* use root table entries */ + mask = used - 1; /* mask for comparing low */ + + /* check available table space */ + if ((type === LENS && used > ENOUGH_LENS) || + (type === DISTS && used > ENOUGH_DISTS)) { + return 1; + } + + /* process all codes and make table entries */ + for (;;) { + /* create table entry */ + here_bits = len - drop; + if (work[sym] < end) { + here_op = 0; + here_val = work[sym]; + } + else if (work[sym] > end) { + here_op = extra[extra_index + work[sym]]; + here_val = base[base_index + work[sym]]; + } + else { + here_op = 32 + 64; /* end of block */ + here_val = 0; + } + + /* replicate for those indices with low len bits equal to huff */ + incr = 1 << (len - drop); + fill = 1 << curr; + min = fill; /* save offset to next table */ + do { + fill -= incr; + table[next + (huff >> drop) + fill] = (here_bits << 24) | (here_op << 16) | here_val |0; + } while (fill !== 0); + + /* backwards increment the len-bit code huff */ + incr = 1 << (len - 1); + while (huff & incr) { + incr >>= 1; + } + if (incr !== 0) { + huff &= incr - 1; + huff += incr; + } else { + huff = 0; + } + + /* go to next symbol, update count, len */ + sym++; + if (--count[len] === 0) { + if (len === max) { break; } + len = lens[lens_index + work[sym]]; + } + + /* create new sub-table if needed */ + if (len > root && (huff & mask) !== low) { + /* if first time, transition to sub-tables */ + if (drop === 0) { + drop = root; + } + + /* increment past last table */ + next += min; /* here min is 1 << curr */ + + /* determine length of next table */ + curr = len - drop; + left = 1 << curr; + while (curr + drop < max) { + left -= count[curr + drop]; + if (left <= 0) { break; } + curr++; + left <<= 1; + } + + /* check for enough space */ + used += 1 << curr; + if ((type === LENS && used > ENOUGH_LENS) || + (type === DISTS && used > ENOUGH_DISTS)) { + return 1; + } + + /* point entry in root table to sub-table */ + low = huff & mask; + /*table.op[low] = curr; table.bits[low] = root; table.val[low] = next - opts.table_index;*/ - table[ low ] = - ( root << 24 ) | - ( curr << 16 ) | - ( next - table_index ) | - 0; - } - } - - /* fill in remaining table entry if code is incomplete (guaranteed to have + table[low] = (root << 24) | (curr << 16) | (next - table_index) |0; + } + } + + /* fill in remaining table entry if code is incomplete (guaranteed to have at most one remaining entry, since if the code is incomplete, the maximum code length that was allowed to get this far is one bit) */ - if ( huff !== 0 ) { - //table.op[next + huff] = 64; /* invalid code marker */ - //table.bits[next + huff] = len - drop; - //table.val[next + huff] = 0; - table[ next + huff ] = - ( ( len - drop ) << 24 ) | ( 64 << 16 ) | 0; - } - - /* set return parameters */ - //opts.table_index += used; - opts.bits = root; - return 0; - }; - }, - { '../utils/common': 1 }, - ], - 10: [ - function ( require, module, exports ) { - 'use strict'; - - // (C) 1995-2013 Jean-loup Gailly and Mark Adler - // (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin - // - // This software is provided 'as-is', without any express or implied - // warranty. In no event will the authors be held liable for any damages - // arising from the use of this software. - // - // Permission is granted to anyone to use this software for any purpose, - // including commercial applications, and to alter it and redistribute it - // freely, subject to the following restrictions: - // - // 1. The origin of this software must not be misrepresented; you must not - // claim that you wrote the original software. If you use this software - // in a product, an acknowledgment in the product documentation would be - // appreciated but is not required. - // 2. Altered source versions must be plainly marked as such, and must not be - // misrepresented as being the original software. - // 3. This notice may not be removed or altered from any source distribution. - - module.exports = { - 2: 'need dictionary' /* Z_NEED_DICT 2 */, - 1: 'stream end' /* Z_STREAM_END 1 */, - 0: '' /* Z_OK 0 */, - '-1': 'file error' /* Z_ERRNO (-1) */, - '-2': 'stream error' /* Z_STREAM_ERROR (-2) */, - '-3': 'data error' /* Z_DATA_ERROR (-3) */, - '-4': 'insufficient memory' /* Z_MEM_ERROR (-4) */, - '-5': 'buffer error' /* Z_BUF_ERROR (-5) */, - '-6': 'incompatible version' /* Z_VERSION_ERROR (-6) */, - }; - }, - {}, - ], - 11: [ - function ( require, module, exports ) { - 'use strict'; - - // (C) 1995-2013 Jean-loup Gailly and Mark Adler - // (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin - // - // This software is provided 'as-is', without any express or implied - // warranty. In no event will the authors be held liable for any damages - // arising from the use of this software. - // - // Permission is granted to anyone to use this software for any purpose, - // including commercial applications, and to alter it and redistribute it - // freely, subject to the following restrictions: - // - // 1. The origin of this software must not be misrepresented; you must not - // claim that you wrote the original software. If you use this software - // in a product, an acknowledgment in the product documentation would be - // appreciated but is not required. - // 2. Altered source versions must be plainly marked as such, and must not be - // misrepresented as being the original software. - // 3. This notice may not be removed or altered from any source distribution. - - function ZStream() { - /* next input byte */ - this.input = null; // JS specific, because we have no pointers - this.next_in = 0; - /* number of bytes available at input */ - this.avail_in = 0; - /* total number of input bytes read so far */ - this.total_in = 0; - /* next output byte should be put there */ - this.output = null; // JS specific, because we have no pointers - this.next_out = 0; - /* remaining free space at output */ - this.avail_out = 0; - /* total number of bytes output so far */ - this.total_out = 0; - /* last error message, NULL if no error */ - this.msg = '' /*Z_NULL*/; - /* not visible by applications */ - this.state = null; - /* best guess about the data type: binary or text */ - this.data_type = 2 /*Z_UNKNOWN*/; - /* adler32 value of the uncompressed data */ - this.adler = 0; - } - - module.exports = ZStream; - }, - {}, - ], - '/lib/inflate.js': [ - function ( require, module, exports ) { - 'use strict'; - - var zlib_inflate = require( './zlib/inflate' ); - var utils = require( './utils/common' ); - var strings = require( './utils/strings' ); - var c = require( './zlib/constants' ); - var msg = require( './zlib/messages' ); - var ZStream = require( './zlib/zstream' ); - var GZheader = require( './zlib/gzheader' ); - - var toString = Object.prototype.toString; - - /** - * class Inflate - * - * Generic JS-style wrapper for zlib calls. If you don't need - * streaming behaviour - use more simple functions: [[inflate]] - * and [[inflateRaw]]. - **/ - - /* internal - * inflate.chunks -> Array - * - * Chunks of output data, if [[Inflate#onData]] not overridden. - **/ - - /** - * Inflate.result -> Uint8Array|Array|String - * - * Uncompressed result, generated by default [[Inflate#onData]] - * and [[Inflate#onEnd]] handlers. Filled after you push last chunk - * (call [[Inflate#push]] with `Z_FINISH` / `true` param) or if you - * push a chunk with explicit flush (call [[Inflate#push]] with - * `Z_SYNC_FLUSH` param). - **/ - - /** - * Inflate.err -> Number - * - * Error code after inflate finished. 0 (Z_OK) on success. - * Should be checked if broken data possible. - **/ - - /** - * Inflate.msg -> String - * - * Error message, if [[Inflate.err]] != 0 - **/ - - /** - * new Inflate(options) - * - options (Object): zlib inflate options. - * - * Creates new inflator instance with specified params. Throws exception - * on bad params. Supported options: - * - * - `windowBits` - * - `dictionary` - * - * [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced) - * for more information on these. - * - * Additional options, for internal needs: - * - * - `chunkSize` - size of generated data chunks (16K by default) - * - `raw` (Boolean) - do raw inflate - * - `to` (String) - if equal to 'string', then result will be converted - * from utf8 to utf16 (javascript) string. When string output requested, - * chunk length can differ from `chunkSize`, depending on content. - * - * By default, when no options set, autodetect deflate/gzip data format via - * wrapper header. - * - * ##### Example: - * - * ```javascript - * var pako = require('pako') - * , chunk1 = Uint8Array([1,2,3,4,5,6,7,8,9]) - * , chunk2 = Uint8Array([10,11,12,13,14,15,16,17,18,19]); - * - * var inflate = new pako.Inflate({ level: 3}); - * - * inflate.push(chunk1, false); - * inflate.push(chunk2, true); // true -> last chunk - * - * if (inflate.err) { throw new Error(inflate.err); } - * - * console.log(inflate.result); - * ``` - **/ - function Inflate( options ) { - if ( ! ( this instanceof Inflate ) ) - return new Inflate( options ); - - this.options = utils.assign( - { - chunkSize: 16384, - windowBits: 0, - to: '', - }, - options || {} - ); - - var opt = this.options; - - // Force window size for `raw` data, if not set directly, - // because we have no header for autodetect. - if ( - opt.raw && - opt.windowBits >= 0 && - opt.windowBits < 16 - ) { - opt.windowBits = -opt.windowBits; - if ( opt.windowBits === 0 ) { - opt.windowBits = -15; - } - } - - // If `windowBits` not defined (and mode not raw) - set autodetect flag for gzip/deflate - if ( - opt.windowBits >= 0 && - opt.windowBits < 16 && - ! ( options && options.windowBits ) - ) { - opt.windowBits += 32; - } - - // Gzip header has no info about windows size, we can do autodetect only - // for deflate. So, if window size not set, force it to max when gzip possible - if ( opt.windowBits > 15 && opt.windowBits < 48 ) { - // bit 3 (16) -> gzipped data - // bit 4 (32) -> autodetect gzip/deflate - if ( ( opt.windowBits & 15 ) === 0 ) { - opt.windowBits |= 15; - } - } - - this.err = 0; // error code, if happens (0 = Z_OK) - this.msg = ''; // error message - this.ended = false; // used to avoid multiple onEnd() calls - this.chunks = []; // chunks of compressed data - - this.strm = new ZStream(); - this.strm.avail_out = 0; - - var status = zlib_inflate.inflateInit2( - this.strm, - opt.windowBits - ); - - if ( status !== c.Z_OK ) { - throw new Error( msg[ status ] ); - } - - this.header = new GZheader(); - - zlib_inflate.inflateGetHeader( this.strm, this.header ); - - // Setup dictionary - if ( opt.dictionary ) { - // Convert data if needed - if ( typeof opt.dictionary === 'string' ) { - opt.dictionary = strings.string2buf( - opt.dictionary - ); - } else if ( - toString.call( opt.dictionary ) === - '[object ArrayBuffer]' - ) { - opt.dictionary = new Uint8Array( - opt.dictionary - ); - } - if ( opt.raw ) { - //In raw mode we need to set the dictionary early - status = zlib_inflate.inflateSetDictionary( - this.strm, - opt.dictionary - ); - if ( status !== c.Z_OK ) { - throw new Error( msg[ status ] ); - } - } - } - } - - /** - * Inflate#push(data[, mode]) -> Boolean - * - data (Uint8Array|Array|ArrayBuffer|String): input data - * - mode (Number|Boolean): 0..6 for corresponding Z_NO_FLUSH..Z_TREE modes. - * See constants. Skipped or `false` means Z_NO_FLUSH, `true` means Z_FINISH. - * - * Sends input data to inflate pipe, generating [[Inflate#onData]] calls with - * new output chunks. Returns `true` on success. The last data block must have - * mode Z_FINISH (or `true`). That will flush internal pending buffers and call - * [[Inflate#onEnd]]. For interim explicit flushes (without ending the stream) you - * can use mode Z_SYNC_FLUSH, keeping the decompression context. - * - * On fail call [[Inflate#onEnd]] with error code and return false. - * - * We strongly recommend to use `Uint8Array` on input for best speed (output - * format is detected automatically). Also, don't skip last param and always - * use the same type in your code (boolean or number). That will improve JS speed. - * - * For regular `Array`-s make sure all elements are [0..255]. - * - * ##### Example - * - * ```javascript - * push(chunk, false); // push one of data chunks - * ... - * push(chunk, true); // push last chunk - * ``` - **/ - Inflate.prototype.push = function ( data, mode ) { - var strm = this.strm; - var chunkSize = this.options.chunkSize; - var dictionary = this.options.dictionary; - var status, _mode; - var next_out_utf8, tail, utf8str; - - // Flag to properly process Z_BUF_ERROR on testing inflate call - // when we check that all output data was flushed. - var allowBufError = false; - - if ( this.ended ) { - return false; - } - _mode = - mode === ~~mode - ? mode - : mode === true - ? c.Z_FINISH - : c.Z_NO_FLUSH; - - // Convert data if needed - if ( typeof data === 'string' ) { - // Only binary strings can be decompressed on practice - strm.input = strings.binstring2buf( data ); - } else if ( - toString.call( data ) === '[object ArrayBuffer]' - ) { - strm.input = new Uint8Array( data ); - } else { - strm.input = data; - } - - strm.next_in = 0; - strm.avail_in = strm.input.length; - - do { - if ( strm.avail_out === 0 ) { - strm.output = new utils.Buf8( chunkSize ); - strm.next_out = 0; - strm.avail_out = chunkSize; - } - - status = zlib_inflate.inflate( - strm, - c.Z_NO_FLUSH - ); /* no bad return value */ - - if ( status === c.Z_NEED_DICT && dictionary ) { - status = zlib_inflate.inflateSetDictionary( - this.strm, - dictionary - ); - } - - if ( - status === c.Z_BUF_ERROR && - allowBufError === true - ) { - status = c.Z_OK; - allowBufError = false; - } - - if ( - status !== c.Z_STREAM_END && - status !== c.Z_OK - ) { - this.onEnd( status ); - this.ended = true; - return false; - } - - if ( strm.next_out ) { - if ( - strm.avail_out === 0 || - status === c.Z_STREAM_END || - ( strm.avail_in === 0 && - ( _mode === c.Z_FINISH || - _mode === c.Z_SYNC_FLUSH ) ) - ) { - if ( this.options.to === 'string' ) { - next_out_utf8 = strings.utf8border( - strm.output, - strm.next_out - ); - - tail = strm.next_out - next_out_utf8; - utf8str = strings.buf2string( - strm.output, - next_out_utf8 - ); - - // move tail - strm.next_out = tail; - strm.avail_out = chunkSize - tail; - if ( tail ) { - utils.arraySet( - strm.output, - strm.output, - next_out_utf8, - tail, - 0 - ); - } - - this.onData( utf8str ); - } else { - this.onData( - utils.shrinkBuf( - strm.output, - strm.next_out - ) - ); - } - } - } - - // When no more input data, we should check that internal inflate buffers - // are flushed. The only way to do it when avail_out = 0 - run one more - // inflate pass. But if output data not exists, inflate return Z_BUF_ERROR. - // Here we set flag to process this error properly. - // - // NOTE. Deflate does not return error in this case and does not needs such - // logic. - if ( strm.avail_in === 0 && strm.avail_out === 0 ) { - allowBufError = true; - } - } while ( - ( strm.avail_in > 0 || strm.avail_out === 0 ) && - status !== c.Z_STREAM_END - ); - - if ( status === c.Z_STREAM_END ) { - _mode = c.Z_FINISH; - } - - // Finalize on the last chunk. - if ( _mode === c.Z_FINISH ) { - status = zlib_inflate.inflateEnd( this.strm ); - this.onEnd( status ); - this.ended = true; - return status === c.Z_OK; - } - - // callback interim results if Z_SYNC_FLUSH. - if ( _mode === c.Z_SYNC_FLUSH ) { - this.onEnd( c.Z_OK ); - strm.avail_out = 0; - return true; - } - - return true; - }; - - /** - * Inflate#onData(chunk) -> Void - * - chunk (Uint8Array|Array|String): output data. Type of array depends - * on js engine support. When string output requested, each chunk - * will be string. - * - * By default, stores data blocks in `chunks[]` property and glue - * those in `onEnd`. Override this handler, if you need another behaviour. - **/ - Inflate.prototype.onData = function ( chunk ) { - this.chunks.push( chunk ); - }; - - /** - * Inflate#onEnd(status) -> Void - * - status (Number): inflate status. 0 (Z_OK) on success, - * other if not. - * - * Called either after you tell inflate that the input stream is - * complete (Z_FINISH) or should be flushed (Z_SYNC_FLUSH) - * or if an error happened. By default - join collected chunks, - * free memory and fill `results` / `err` properties. - **/ - Inflate.prototype.onEnd = function ( status ) { - // On success - join - if ( status === c.Z_OK ) { - if ( this.options.to === 'string' ) { - // Glue & convert here, until we teach pako to send - // utf8 aligned strings to onData - this.result = this.chunks.join( '' ); - } else { - this.result = utils.flattenChunks( - this.chunks - ); - } - } - this.chunks = []; - this.err = status; - this.msg = this.strm.msg; - }; - - /** - * inflate(data[, options]) -> Uint8Array|Array|String - * - data (Uint8Array|Array|String): input data to decompress. - * - options (Object): zlib inflate options. - * - * Decompress `data` with inflate/ungzip and `options`. Autodetect - * format via wrapper header by default. That's why we don't provide - * separate `ungzip` method. - * - * Supported options are: - * - * - windowBits - * - * [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced) - * for more information. - * - * Sugar (options): - * - * - `raw` (Boolean) - say that we work with raw stream, if you don't wish to specify - * negative windowBits implicitly. - * - `to` (String) - if equal to 'string', then result will be converted - * from utf8 to utf16 (javascript) string. When string output requested, - * chunk length can differ from `chunkSize`, depending on content. - * - * - * ##### Example: - * - * ```javascript - * var pako = require('pako') - * , input = pako.deflate([1,2,3,4,5,6,7,8,9]) - * , output; - * - * try { - * output = pako.inflate(input); - * } catch (err) - * console.log(err); - * } - * ``` - **/ - function inflate( input, options ) { - var inflator = new Inflate( options ); - - inflator.push( input, true ); - - // That will never happens, if you don't cheat with options :) - if ( inflator.err ) { - throw inflator.msg || msg[ inflator.err ]; - } - - return inflator.result; - } - - /** - * inflateRaw(data[, options]) -> Uint8Array|Array|String - * - data (Uint8Array|Array|String): input data to decompress. - * - options (Object): zlib inflate options. - * - * The same as [[inflate]], but creates raw data, without wrapper - * (header and adler32 crc). - **/ - function inflateRaw( input, options ) { - options = options || {}; - options.raw = true; - return inflate( input, options ); - } - - /** - * ungzip(data[, options]) -> Uint8Array|Array|String - * - data (Uint8Array|Array|String): input data to decompress. - * - options (Object): zlib inflate options. - * - * Just shortcut to [[inflate]], because it autodetects format - * by header.content. Done for convenience. - **/ - - exports.Inflate = Inflate; - exports.inflate = inflate; - exports.inflateRaw = inflateRaw; - exports.ungzip = inflate; - }, - { - './utils/common': 1, - './utils/strings': 2, - './zlib/constants': 4, - './zlib/gzheader': 6, - './zlib/inflate': 8, - './zlib/messages': 10, - './zlib/zstream': 11, - }, - ], - }, - {}, - [] - )( '/lib/inflate.js' ); -} ); + if (huff !== 0) { + //table.op[next + huff] = 64; /* invalid code marker */ + //table.bits[next + huff] = len - drop; + //table.val[next + huff] = 0; + table[next + huff] = ((len - drop) << 24) | (64 << 16) |0; + } + + /* set return parameters */ + //opts.table_index += used; + opts.bits = root; + return 0; + }; + + },{"../utils/common":1}],10:[function(require,module,exports){ + 'use strict'; + + // (C) 1995-2013 Jean-loup Gailly and Mark Adler + // (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin + // + // This software is provided 'as-is', without any express or implied + // warranty. In no event will the authors be held liable for any damages + // arising from the use of this software. + // + // Permission is granted to anyone to use this software for any purpose, + // including commercial applications, and to alter it and redistribute it + // freely, subject to the following restrictions: + // + // 1. The origin of this software must not be misrepresented; you must not + // claim that you wrote the original software. If you use this software + // in a product, an acknowledgment in the product documentation would be + // appreciated but is not required. + // 2. Altered source versions must be plainly marked as such, and must not be + // misrepresented as being the original software. + // 3. This notice may not be removed or altered from any source distribution. + + module.exports = { + 2: 'need dictionary', /* Z_NEED_DICT 2 */ + 1: 'stream end', /* Z_STREAM_END 1 */ + 0: '', /* Z_OK 0 */ + '-1': 'file error', /* Z_ERRNO (-1) */ + '-2': 'stream error', /* Z_STREAM_ERROR (-2) */ + '-3': 'data error', /* Z_DATA_ERROR (-3) */ + '-4': 'insufficient memory', /* Z_MEM_ERROR (-4) */ + '-5': 'buffer error', /* Z_BUF_ERROR (-5) */ + '-6': 'incompatible version' /* Z_VERSION_ERROR (-6) */ + }; + + },{}],11:[function(require,module,exports){ + 'use strict'; + + // (C) 1995-2013 Jean-loup Gailly and Mark Adler + // (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin + // + // This software is provided 'as-is', without any express or implied + // warranty. In no event will the authors be held liable for any damages + // arising from the use of this software. + // + // Permission is granted to anyone to use this software for any purpose, + // including commercial applications, and to alter it and redistribute it + // freely, subject to the following restrictions: + // + // 1. The origin of this software must not be misrepresented; you must not + // claim that you wrote the original software. If you use this software + // in a product, an acknowledgment in the product documentation would be + // appreciated but is not required. + // 2. Altered source versions must be plainly marked as such, and must not be + // misrepresented as being the original software. + // 3. This notice may not be removed or altered from any source distribution. + + function ZStream() { + /* next input byte */ + this.input = null; // JS specific, because we have no pointers + this.next_in = 0; + /* number of bytes available at input */ + this.avail_in = 0; + /* total number of input bytes read so far */ + this.total_in = 0; + /* next output byte should be put there */ + this.output = null; // JS specific, because we have no pointers + this.next_out = 0; + /* remaining free space at output */ + this.avail_out = 0; + /* total number of bytes output so far */ + this.total_out = 0; + /* last error message, NULL if no error */ + this.msg = ''/*Z_NULL*/; + /* not visible by applications */ + this.state = null; + /* best guess about the data type: binary or text */ + this.data_type = 2/*Z_UNKNOWN*/; + /* adler32 value of the uncompressed data */ + this.adler = 0; + } + + module.exports = ZStream; + + },{}],"/lib/inflate.js":[function(require,module,exports){ + 'use strict'; + + + var zlib_inflate = require('./zlib/inflate'); + var utils = require('./utils/common'); + var strings = require('./utils/strings'); + var c = require('./zlib/constants'); + var msg = require('./zlib/messages'); + var ZStream = require('./zlib/zstream'); + var GZheader = require('./zlib/gzheader'); + + var toString = Object.prototype.toString; + + /** + * class Inflate + * + * Generic JS-style wrapper for zlib calls. If you don't need + * streaming behaviour - use more simple functions: [[inflate]] + * and [[inflateRaw]]. + **/ + + /* internal + * inflate.chunks -> Array + * + * Chunks of output data, if [[Inflate#onData]] not overridden. + **/ + + /** + * Inflate.result -> Uint8Array|Array|String + * + * Uncompressed result, generated by default [[Inflate#onData]] + * and [[Inflate#onEnd]] handlers. Filled after you push last chunk + * (call [[Inflate#push]] with `Z_FINISH` / `true` param) or if you + * push a chunk with explicit flush (call [[Inflate#push]] with + * `Z_SYNC_FLUSH` param). + **/ + + /** + * Inflate.err -> Number + * + * Error code after inflate finished. 0 (Z_OK) on success. + * Should be checked if broken data possible. + **/ + + /** + * Inflate.msg -> String + * + * Error message, if [[Inflate.err]] != 0 + **/ + + + /** + * new Inflate(options) + * - options (Object): zlib inflate options. + * + * Creates new inflator instance with specified params. Throws exception + * on bad params. Supported options: + * + * - `windowBits` + * - `dictionary` + * + * [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced) + * for more information on these. + * + * Additional options, for internal needs: + * + * - `chunkSize` - size of generated data chunks (16K by default) + * - `raw` (Boolean) - do raw inflate + * - `to` (String) - if equal to 'string', then result will be converted + * from utf8 to utf16 (javascript) string. When string output requested, + * chunk length can differ from `chunkSize`, depending on content. + * + * By default, when no options set, autodetect deflate/gzip data format via + * wrapper header. + * + * ##### Example: + * + * ```javascript + * var pako = require('pako') + * , chunk1 = Uint8Array([1,2,3,4,5,6,7,8,9]) + * , chunk2 = Uint8Array([10,11,12,13,14,15,16,17,18,19]); + * + * var inflate = new pako.Inflate({ level: 3}); + * + * inflate.push(chunk1, false); + * inflate.push(chunk2, true); // true -> last chunk + * + * if (inflate.err) { throw new Error(inflate.err); } + * + * console.log(inflate.result); + * ``` + **/ + function Inflate(options) { + if (!(this instanceof Inflate)) return new Inflate(options); + + this.options = utils.assign({ + chunkSize: 16384, + windowBits: 0, + to: '' + }, options || {}); + + var opt = this.options; + + // Force window size for `raw` data, if not set directly, + // because we have no header for autodetect. + if (opt.raw && (opt.windowBits >= 0) && (opt.windowBits < 16)) { + opt.windowBits = -opt.windowBits; + if (opt.windowBits === 0) { opt.windowBits = -15; } + } + + // If `windowBits` not defined (and mode not raw) - set autodetect flag for gzip/deflate + if ((opt.windowBits >= 0) && (opt.windowBits < 16) && + !(options && options.windowBits)) { + opt.windowBits += 32; + } + + // Gzip header has no info about windows size, we can do autodetect only + // for deflate. So, if window size not set, force it to max when gzip possible + if ((opt.windowBits > 15) && (opt.windowBits < 48)) { + // bit 3 (16) -> gzipped data + // bit 4 (32) -> autodetect gzip/deflate + if ((opt.windowBits & 15) === 0) { + opt.windowBits |= 15; + } + } + + this.err = 0; // error code, if happens (0 = Z_OK) + this.msg = ''; // error message + this.ended = false; // used to avoid multiple onEnd() calls + this.chunks = []; // chunks of compressed data + + this.strm = new ZStream(); + this.strm.avail_out = 0; + + var status = zlib_inflate.inflateInit2( + this.strm, + opt.windowBits + ); + + if (status !== c.Z_OK) { + throw new Error(msg[status]); + } + + this.header = new GZheader(); + + zlib_inflate.inflateGetHeader(this.strm, this.header); + + // Setup dictionary + if (opt.dictionary) { + // Convert data if needed + if (typeof opt.dictionary === 'string') { + opt.dictionary = strings.string2buf(opt.dictionary); + } else if (toString.call(opt.dictionary) === '[object ArrayBuffer]') { + opt.dictionary = new Uint8Array(opt.dictionary); + } + if (opt.raw) { //In raw mode we need to set the dictionary early + status = zlib_inflate.inflateSetDictionary(this.strm, opt.dictionary); + if (status !== c.Z_OK) { + throw new Error(msg[status]); + } + } + } + } + + /** + * Inflate#push(data[, mode]) -> Boolean + * - data (Uint8Array|Array|ArrayBuffer|String): input data + * - mode (Number|Boolean): 0..6 for corresponding Z_NO_FLUSH..Z_TREE modes. + * See constants. Skipped or `false` means Z_NO_FLUSH, `true` means Z_FINISH. + * + * Sends input data to inflate pipe, generating [[Inflate#onData]] calls with + * new output chunks. Returns `true` on success. The last data block must have + * mode Z_FINISH (or `true`). That will flush internal pending buffers and call + * [[Inflate#onEnd]]. For interim explicit flushes (without ending the stream) you + * can use mode Z_SYNC_FLUSH, keeping the decompression context. + * + * On fail call [[Inflate#onEnd]] with error code and return false. + * + * We strongly recommend to use `Uint8Array` on input for best speed (output + * format is detected automatically). Also, don't skip last param and always + * use the same type in your code (boolean or number). That will improve JS speed. + * + * For regular `Array`-s make sure all elements are [0..255]. + * + * ##### Example + * + * ```javascript + * push(chunk, false); // push one of data chunks + * ... + * push(chunk, true); // push last chunk + * ``` + **/ + Inflate.prototype.push = function (data, mode) { + var strm = this.strm; + var chunkSize = this.options.chunkSize; + var dictionary = this.options.dictionary; + var status, _mode; + var next_out_utf8, tail, utf8str; + + // Flag to properly process Z_BUF_ERROR on testing inflate call + // when we check that all output data was flushed. + var allowBufError = false; + + if (this.ended) { return false; } + _mode = (mode === ~~mode) ? mode : ((mode === true) ? c.Z_FINISH : c.Z_NO_FLUSH); + + // Convert data if needed + if (typeof data === 'string') { + // Only binary strings can be decompressed on practice + strm.input = strings.binstring2buf(data); + } else if (toString.call(data) === '[object ArrayBuffer]') { + strm.input = new Uint8Array(data); + } else { + strm.input = data; + } + + strm.next_in = 0; + strm.avail_in = strm.input.length; + + do { + if (strm.avail_out === 0) { + strm.output = new utils.Buf8(chunkSize); + strm.next_out = 0; + strm.avail_out = chunkSize; + } + + status = zlib_inflate.inflate(strm, c.Z_NO_FLUSH); /* no bad return value */ + + if (status === c.Z_NEED_DICT && dictionary) { + status = zlib_inflate.inflateSetDictionary(this.strm, dictionary); + } + + if (status === c.Z_BUF_ERROR && allowBufError === true) { + status = c.Z_OK; + allowBufError = false; + } + + if (status !== c.Z_STREAM_END && status !== c.Z_OK) { + this.onEnd(status); + this.ended = true; + return false; + } + + if (strm.next_out) { + if (strm.avail_out === 0 || status === c.Z_STREAM_END || (strm.avail_in === 0 && (_mode === c.Z_FINISH || _mode === c.Z_SYNC_FLUSH))) { + + if (this.options.to === 'string') { + + next_out_utf8 = strings.utf8border(strm.output, strm.next_out); + + tail = strm.next_out - next_out_utf8; + utf8str = strings.buf2string(strm.output, next_out_utf8); + + // move tail + strm.next_out = tail; + strm.avail_out = chunkSize - tail; + if (tail) { utils.arraySet(strm.output, strm.output, next_out_utf8, tail, 0); } + + this.onData(utf8str); + + } else { + this.onData(utils.shrinkBuf(strm.output, strm.next_out)); + } + } + } + + // When no more input data, we should check that internal inflate buffers + // are flushed. The only way to do it when avail_out = 0 - run one more + // inflate pass. But if output data not exists, inflate return Z_BUF_ERROR. + // Here we set flag to process this error properly. + // + // NOTE. Deflate does not return error in this case and does not needs such + // logic. + if (strm.avail_in === 0 && strm.avail_out === 0) { + allowBufError = true; + } + + } while ((strm.avail_in > 0 || strm.avail_out === 0) && status !== c.Z_STREAM_END); + + if (status === c.Z_STREAM_END) { + _mode = c.Z_FINISH; + } + + // Finalize on the last chunk. + if (_mode === c.Z_FINISH) { + status = zlib_inflate.inflateEnd(this.strm); + this.onEnd(status); + this.ended = true; + return status === c.Z_OK; + } + + // callback interim results if Z_SYNC_FLUSH. + if (_mode === c.Z_SYNC_FLUSH) { + this.onEnd(c.Z_OK); + strm.avail_out = 0; + return true; + } + + return true; + }; + + + /** + * Inflate#onData(chunk) -> Void + * - chunk (Uint8Array|Array|String): output data. Type of array depends + * on js engine support. When string output requested, each chunk + * will be string. + * + * By default, stores data blocks in `chunks[]` property and glue + * those in `onEnd`. Override this handler, if you need another behaviour. + **/ + Inflate.prototype.onData = function (chunk) { + this.chunks.push(chunk); + }; + + + /** + * Inflate#onEnd(status) -> Void + * - status (Number): inflate status. 0 (Z_OK) on success, + * other if not. + * + * Called either after you tell inflate that the input stream is + * complete (Z_FINISH) or should be flushed (Z_SYNC_FLUSH) + * or if an error happened. By default - join collected chunks, + * free memory and fill `results` / `err` properties. + **/ + Inflate.prototype.onEnd = function (status) { + // On success - join + if (status === c.Z_OK) { + if (this.options.to === 'string') { + // Glue & convert here, until we teach pako to send + // utf8 aligned strings to onData + this.result = this.chunks.join(''); + } else { + this.result = utils.flattenChunks(this.chunks); + } + } + this.chunks = []; + this.err = status; + this.msg = this.strm.msg; + }; + + + /** + * inflate(data[, options]) -> Uint8Array|Array|String + * - data (Uint8Array|Array|String): input data to decompress. + * - options (Object): zlib inflate options. + * + * Decompress `data` with inflate/ungzip and `options`. Autodetect + * format via wrapper header by default. That's why we don't provide + * separate `ungzip` method. + * + * Supported options are: + * + * - windowBits + * + * [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced) + * for more information. + * + * Sugar (options): + * + * - `raw` (Boolean) - say that we work with raw stream, if you don't wish to specify + * negative windowBits implicitly. + * - `to` (String) - if equal to 'string', then result will be converted + * from utf8 to utf16 (javascript) string. When string output requested, + * chunk length can differ from `chunkSize`, depending on content. + * + * + * ##### Example: + * + * ```javascript + * var pako = require('pako') + * , input = pako.deflate([1,2,3,4,5,6,7,8,9]) + * , output; + * + * try { + * output = pako.inflate(input); + * } catch (err) + * console.log(err); + * } + * ``` + **/ + function inflate(input, options) { + var inflator = new Inflate(options); + + inflator.push(input, true); + + // That will never happens, if you don't cheat with options :) + if (inflator.err) { throw inflator.msg || msg[inflator.err]; } + + return inflator.result; + } + + + /** + * inflateRaw(data[, options]) -> Uint8Array|Array|String + * - data (Uint8Array|Array|String): input data to decompress. + * - options (Object): zlib inflate options. + * + * The same as [[inflate]], but creates raw data, without wrapper + * (header and adler32 crc). + **/ + function inflateRaw(input, options) { + options = options || {}; + options.raw = true; + return inflate(input, options); + } + + + /** + * ungzip(data[, options]) -> Uint8Array|Array|String + * - data (Uint8Array|Array|String): input data to decompress. + * - options (Object): zlib inflate options. + * + * Just shortcut to [[inflate]], because it autodetects format + * by header.content. Done for convenience. + **/ + + + exports.Inflate = Inflate; + exports.inflate = inflate; + exports.inflateRaw = inflateRaw; + exports.ungzip = inflate; + + },{"./utils/common":1,"./utils/strings":2,"./zlib/constants":4,"./zlib/gzheader":6,"./zlib/inflate":8,"./zlib/messages":10,"./zlib/zstream":11}]},{},[])("/lib/inflate.js") + }); /* eslint-enable */ diff --git a/packages/edit-site/lib/lib-font.browser.js b/packages/edit-site/lib/lib-font.browser.js index 6d16f0e195e88..350c2396f3c39 100644 --- a/packages/edit-site/lib/lib-font.browser.js +++ b/packages/edit-site/lib/lib-font.browser.js @@ -1,8 +1,8 @@ /* eslint eslint-comments/no-unlimited-disable: 0 */ /* eslint-disable */ // import pako from 'pako'; -import unbrotli from './unbrotli'; -import GzipDecode from './inflate'; +import unbrotli from "./unbrotli"; +import GzipDecode from "./inflate"; let fetchFunction = globalThis.fetch; // if ( ! fetchFunction ) { diff --git a/packages/edit-site/lib/unbrotli.js b/packages/edit-site/lib/unbrotli.js index 74d14ded17dfe..ee474e657b7a2 100644 --- a/packages/edit-site/lib/unbrotli.js +++ b/packages/edit-site/lib/unbrotli.js @@ -1,67 +1,7 @@ /* eslint eslint-comments/no-unlimited-disable: 0 */ /* eslint-disable */ -( function ( f ) { - if ( typeof exports === 'object' && typeof module !== 'undefined' ) { - module.exports = f(); - } else if ( typeof define === 'function' && define.amd ) { - define( [], f ); - } else { - var g; - if ( typeof window !== 'undefined' ) { - g = window; - } else if ( typeof global !== 'undefined' ) { - g = global; - } else if ( typeof self !== 'undefined' ) { - g = self; - } else { - g = this; - } - g.unbrotli = f(); - } -} )( function () { - var define, module, exports; - return ( function () { - function r( e, n, t ) { - function o( i, f ) { - if ( ! n[ i ] ) { - if ( ! e[ i ] ) { - var c = 'function' == typeof require && require; - if ( ! f && c ) return c( i, ! 0 ); - if ( u ) return u( i, ! 0 ); - var a = new Error( "Cannot find module '" + i + "'" ); - throw ( ( a.code = 'MODULE_NOT_FOUND' ), a ); - } - var p = ( n[ i ] = { exports: {} } ); - e[ i ][ 0 ].call( - p.exports, - function ( r ) { - var n = e[ i ][ 1 ][ r ]; - return o( n || r ); - }, - p, - p.exports, - r, - e, - n, - t - ); - } - return n[ i ].exports; - } - for ( - var u = 'function' == typeof require && require, i = 0; - i < t.length; - i++ - ) - o( t[ i ] ); - return o; - } - return r; - } )()( - { - 1: [ - function ( require, module, exports ) { - /* Copyright 2013 Google Inc. All Rights Reserved. +(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.unbrotli = f()}})(function(){var define,module,exports;return (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i 0; - }; + return this.bit_end_pos_ > 0; +}; - /* Fills up the input ringbuffer by calling the input callback. +/* Fills up the input ringbuffer by calling the input callback. Does nothing if there are at least 32 bytes present after current position. @@ -129,82 +68,66 @@ copied to the ringbuffer, therefore it is safe to call this function after every 32 bytes of input is read. */ - BrotliBitReader.prototype.readMoreInput = function () { - if ( this.bit_end_pos_ > 256 ) { - return; - } else if ( this.eos_ ) { - if ( this.bit_pos_ > this.bit_end_pos_ ) - throw new Error( - 'Unexpected end of input ' + - this.bit_pos_ + - ' ' + - this.bit_end_pos_ - ); - } else { - var dst = this.buf_ptr_; - var bytes_read = this.input_.read( - this.buf_, - dst, - BROTLI_READ_SIZE - ); - if ( bytes_read < 0 ) { - throw new Error( 'Unexpected end of input' ); - } - - if ( bytes_read < BROTLI_READ_SIZE ) { - this.eos_ = 1; - /* Store 32 bytes of zero after the stream end. */ - for ( var p = 0; p < 32; p++ ) - this.buf_[ dst + bytes_read + p ] = 0; - } - - if ( dst === 0 ) { - /* Copy the head of the ringbuffer to the slack region. */ - for ( var p = 0; p < 32; p++ ) - this.buf_[ ( BROTLI_READ_SIZE << 1 ) + p ] = - this.buf_[ p ]; - - this.buf_ptr_ = BROTLI_READ_SIZE; - } else { - this.buf_ptr_ = 0; - } - - this.bit_end_pos_ += bytes_read << 3; - } - }; - - /* Guarantees that there are at least 24 bits in the buffer. */ - BrotliBitReader.prototype.fillBitWindow = function () { - while ( this.bit_pos_ >= 8 ) { - this.val_ >>>= 8; - this.val_ |= - this.buf_[ this.pos_ & BROTLI_IBUF_MASK ] << 24; - ++this.pos_; - this.bit_pos_ = ( this.bit_pos_ - 8 ) >>> 0; - this.bit_end_pos_ = ( this.bit_end_pos_ - 8 ) >>> 0; - } - }; - - /* Reads the specified number of bits from Read Buffer. */ - BrotliBitReader.prototype.readBits = function ( n_bits ) { - if ( 32 - this.bit_pos_ < n_bits ) { - this.fillBitWindow(); - } - - var val = - ( this.val_ >>> this.bit_pos_ ) & - kBitMask[ n_bits ]; - this.bit_pos_ += n_bits; - return val; - }; - - module.exports = BrotliBitReader; - }, - {}, - ], - 2: [ - function ( require, module, exports ) { - /* Copyright 2013 Google Inc. All Rights Reserved. +BrotliBitReader.prototype.readMoreInput = function() { + if (this.bit_end_pos_ > 256) { + return; + } else if (this.eos_) { + if (this.bit_pos_ > this.bit_end_pos_) + throw new Error('Unexpected end of input ' + this.bit_pos_ + ' ' + this.bit_end_pos_); + } else { + var dst = this.buf_ptr_; + var bytes_read = this.input_.read(this.buf_, dst, BROTLI_READ_SIZE); + if (bytes_read < 0) { + throw new Error('Unexpected end of input'); + } + + if (bytes_read < BROTLI_READ_SIZE) { + this.eos_ = 1; + /* Store 32 bytes of zero after the stream end. */ + for (var p = 0; p < 32; p++) + this.buf_[dst + bytes_read + p] = 0; + } + + if (dst === 0) { + /* Copy the head of the ringbuffer to the slack region. */ + for (var p = 0; p < 32; p++) + this.buf_[(BROTLI_READ_SIZE << 1) + p] = this.buf_[p]; + + this.buf_ptr_ = BROTLI_READ_SIZE; + } else { + this.buf_ptr_ = 0; + } + + this.bit_end_pos_ += bytes_read << 3; + } +}; + +/* Guarantees that there are at least 24 bits in the buffer. */ +BrotliBitReader.prototype.fillBitWindow = function() { + while (this.bit_pos_ >= 8) { + this.val_ >>>= 8; + this.val_ |= this.buf_[this.pos_ & BROTLI_IBUF_MASK] << 24; + ++this.pos_; + this.bit_pos_ = this.bit_pos_ - 8 >>> 0; + this.bit_end_pos_ = this.bit_end_pos_ - 8 >>> 0; + } +}; + +/* Reads the specified number of bits from Read Buffer. */ +BrotliBitReader.prototype.readBits = function(n_bits) { + if (32 - this.bit_pos_ < n_bits) { + this.fillBitWindow(); + } + + var val = ((this.val_ >>> this.bit_pos_) & kBitMask[n_bits]); + this.bit_pos_ += n_bits; + return val; +}; + +module.exports = BrotliBitReader; + +},{}],2:[function(require,module,exports){ +/* Copyright 2013 Google Inc. All Rights Reserved. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -310,154 +233,153 @@ where offset1 and offset2 are dependent on the context mode. */ - var CONTEXT_LSB6 = 0; - var CONTEXT_MSB6 = 1; - var CONTEXT_UTF8 = 2; - var CONTEXT_SIGNED = 3; - - /* Common context lookup table for all context modes. */ - exports.lookup = new Uint8Array( [ - /* CONTEXT_UTF8, last byte. */ - /* ASCII range. */ - 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 4, 0, 0, 4, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 12, 16, 12, - 12, 20, 12, 16, 24, 28, 12, 12, 32, 12, 36, 12, 44, 44, - 44, 44, 44, 44, 44, 44, 44, 44, 32, 32, 24, 40, 28, 12, - 12, 48, 52, 52, 52, 48, 52, 52, 52, 48, 52, 52, 52, 52, - 52, 48, 52, 52, 52, 52, 52, 48, 52, 52, 52, 52, 52, 24, - 12, 28, 12, 12, 12, 56, 60, 60, 60, 56, 60, 60, 60, 56, - 60, 60, 60, 60, 60, 56, 60, 60, 60, 60, 60, 56, 60, 60, - 60, 60, 60, 24, 12, 28, 12, 0, - /* UTF8 continuation byte range. */ - 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, - 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, - 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, - 1, 0, 1, 0, 1, 0, 1, /* UTF8 lead byte range. */ - 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, - 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, - 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, - 3, 2, 3, 2, 3, 2, 3, - /* CONTEXT_UTF8 second last byte. */ - /* ASCII range. */ - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, - 1, 1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 0, - /* UTF8 continuation byte range. */ - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, /* UTF8 lead byte range. */ - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - /* CONTEXT_SIGNED, second last byte. */ - 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, - 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, - 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, - 6, 6, 6, 6, 6, 6, 6, 6, 7, - /* CONTEXT_SIGNED, last byte, same as the above values shifted by 3 bits. */ - 0, - 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, - 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, - 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, - 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, - 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32, 32, 32, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, - 32, 32, 32, 32, 32, 40, 40, 40, 40, 40, 40, 40, 40, 40, - 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, - 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, - 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 48, 48, 48, - 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 56, - /* CONTEXT_LSB6, last byte. */ - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, - 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, - 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 0, 1, 2, - 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, - 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, - /* CONTEXT_MSB6, last byte. */ - 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, - 4, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, - 9, 9, 10, 10, 10, 10, 11, 11, 11, 11, 12, 12, 12, 12, - 13, 13, 13, 13, 14, 14, 14, 14, 15, 15, 15, 15, 16, 16, - 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 19, 19, 19, 19, - 20, 20, 20, 20, 21, 21, 21, 21, 22, 22, 22, 22, 23, 23, - 23, 23, 24, 24, 24, 24, 25, 25, 25, 25, 26, 26, 26, 26, - 27, 27, 27, 27, 28, 28, 28, 28, 29, 29, 29, 29, 30, 30, - 30, 30, 31, 31, 31, 31, 32, 32, 32, 32, 33, 33, 33, 33, - 34, 34, 34, 34, 35, 35, 35, 35, 36, 36, 36, 36, 37, 37, - 37, 37, 38, 38, 38, 38, 39, 39, 39, 39, 40, 40, 40, 40, - 41, 41, 41, 41, 42, 42, 42, 42, 43, 43, 43, 43, 44, 44, - 44, 44, 45, 45, 45, 45, 46, 46, 46, 46, 47, 47, 47, 47, - 48, 48, 48, 48, 49, 49, 49, 49, 50, 50, 50, 50, 51, 51, - 51, 51, 52, 52, 52, 52, 53, 53, 53, 53, 54, 54, 54, 54, - 55, 55, 55, 55, 56, 56, 56, 56, 57, 57, 57, 57, 58, 58, - 58, 58, 59, 59, 59, 59, 60, 60, 60, 60, 61, 61, 61, 61, - 62, 62, 62, 62, 63, 63, 63, 63, - /* CONTEXT_{M,L}SB6, second last byte, */ - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, - ] ); - - exports.lookupOffsets = new Uint16Array( [ - /* CONTEXT_LSB6 */ - 1024, 1536, /* CONTEXT_MSB6 */ - 1280, 1536, /* CONTEXT_UTF8 */ - 0, 256, /* CONTEXT_SIGNED */ - 768, 512, - ] ); - }, - {}, - ], - 3: [ - function ( require, module, exports ) { - /* Copyright 2013 Google Inc. All Rights Reserved. +var CONTEXT_LSB6 = 0; +var CONTEXT_MSB6 = 1; +var CONTEXT_UTF8 = 2; +var CONTEXT_SIGNED = 3; + +/* Common context lookup table for all context modes. */ +exports.lookup = new Uint8Array([ + /* CONTEXT_UTF8, last byte. */ + /* ASCII range. */ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 4, 0, 0, 4, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 8, 12, 16, 12, 12, 20, 12, 16, 24, 28, 12, 12, 32, 12, 36, 12, + 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 32, 32, 24, 40, 28, 12, + 12, 48, 52, 52, 52, 48, 52, 52, 52, 48, 52, 52, 52, 52, 52, 48, + 52, 52, 52, 52, 52, 48, 52, 52, 52, 52, 52, 24, 12, 28, 12, 12, + 12, 56, 60, 60, 60, 56, 60, 60, 60, 56, 60, 60, 60, 60, 60, 56, + 60, 60, 60, 60, 60, 56, 60, 60, 60, 60, 60, 24, 12, 28, 12, 0, + /* UTF8 continuation byte range. */ + 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, + 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, + 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, + 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, + /* UTF8 lead byte range. */ + 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, + 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, + 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, + 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, + /* CONTEXT_UTF8 second last byte. */ + /* ASCII range. */ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, + 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, + 1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 0, + /* UTF8 continuation byte range. */ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + /* UTF8 lead byte range. */ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + /* CONTEXT_SIGNED, second last byte. */ + 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, + /* CONTEXT_SIGNED, last byte, same as the above values shifted by 3 bits. */ + 0, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, + 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, + 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 56, + /* CONTEXT_LSB6, last byte. */ + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, + 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, + 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, + 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, + 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, + /* CONTEXT_MSB6, last byte. */ + 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, + 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, + 8, 8, 8, 8, 9, 9, 9, 9, 10, 10, 10, 10, 11, 11, 11, 11, + 12, 12, 12, 12, 13, 13, 13, 13, 14, 14, 14, 14, 15, 15, 15, 15, + 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 19, 19, 19, 19, + 20, 20, 20, 20, 21, 21, 21, 21, 22, 22, 22, 22, 23, 23, 23, 23, + 24, 24, 24, 24, 25, 25, 25, 25, 26, 26, 26, 26, 27, 27, 27, 27, + 28, 28, 28, 28, 29, 29, 29, 29, 30, 30, 30, 30, 31, 31, 31, 31, + 32, 32, 32, 32, 33, 33, 33, 33, 34, 34, 34, 34, 35, 35, 35, 35, + 36, 36, 36, 36, 37, 37, 37, 37, 38, 38, 38, 38, 39, 39, 39, 39, + 40, 40, 40, 40, 41, 41, 41, 41, 42, 42, 42, 42, 43, 43, 43, 43, + 44, 44, 44, 44, 45, 45, 45, 45, 46, 46, 46, 46, 47, 47, 47, 47, + 48, 48, 48, 48, 49, 49, 49, 49, 50, 50, 50, 50, 51, 51, 51, 51, + 52, 52, 52, 52, 53, 53, 53, 53, 54, 54, 54, 54, 55, 55, 55, 55, + 56, 56, 56, 56, 57, 57, 57, 57, 58, 58, 58, 58, 59, 59, 59, 59, + 60, 60, 60, 60, 61, 61, 61, 61, 62, 62, 62, 62, 63, 63, 63, 63, + /* CONTEXT_{M,L}SB6, second last byte, */ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, +]); + +exports.lookupOffsets = new Uint16Array([ + /* CONTEXT_LSB6 */ + 1024, 1536, + /* CONTEXT_MSB6 */ + 1280, 1536, + /* CONTEXT_UTF8 */ + 0, 256, + /* CONTEXT_SIGNED */ + 768, 512, +]); + +},{}],3:[function(require,module,exports){ +/* Copyright 2013 Google Inc. All Rights Reserved. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -472,1378 +394,952 @@ limitations under the License. */ - var BrotliInput = require( './streams' ).BrotliInput; - var BrotliOutput = require( './streams' ).BrotliOutput; - var BrotliBitReader = require( './bit_reader' ); - var BrotliDictionary = require( './dictionary' ); - var HuffmanCode = require( './huffman' ).HuffmanCode; - var BrotliBuildHuffmanTable = - require( './huffman' ).BrotliBuildHuffmanTable; - var Context = require( './context' ); - var Prefix = require( './prefix' ); - var Transform = require( './transform' ); - - var kDefaultCodeLength = 8; - var kCodeLengthRepeatCode = 16; - var kNumLiteralCodes = 256; - var kNumInsertAndCopyCodes = 704; - var kNumBlockLengthCodes = 26; - var kLiteralContextBits = 6; - var kDistanceContextBits = 2; - - var HUFFMAN_TABLE_BITS = 8; - var HUFFMAN_TABLE_MASK = 0xff; - /* Maximum possible Huffman table size for an alphabet size of 704, max code - * length 15 and root table bits 8. */ - var HUFFMAN_MAX_TABLE_SIZE = 1080; - - var CODE_LENGTH_CODES = 18; - var kCodeLengthCodeOrder = new Uint8Array( [ - 1, 2, 3, 4, 0, 5, 17, 6, 16, 7, 8, 9, 10, 11, 12, 13, - 14, 15, - ] ); - - var NUM_DISTANCE_SHORT_CODES = 16; - var kDistanceShortCodeIndexOffset = new Uint8Array( [ - 3, 2, 1, 0, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, - ] ); - - var kDistanceShortCodeValueOffset = new Int8Array( [ - 0, 0, 0, 0, -1, 1, -2, 2, -3, 3, -1, 1, -2, 2, -3, 3, - ] ); - - var kMaxHuffmanTableSize = new Uint16Array( [ - 256, 402, 436, 468, 500, 534, 566, 598, 630, 662, 694, - 726, 758, 790, 822, 854, 886, 920, 952, 984, 1016, 1048, - 1080, - ] ); - - function DecodeWindowBits( br ) { - var n; - if ( br.readBits( 1 ) === 0 ) { - return 16; - } - - n = br.readBits( 3 ); - if ( n > 0 ) { - return 17 + n; - } - - n = br.readBits( 3 ); - if ( n > 0 ) { - return 8 + n; - } - - return 17; - } - - /* Decodes a number in the range [0..255], by reading 1 - 11 bits. */ - function DecodeVarLenUint8( br ) { - if ( br.readBits( 1 ) ) { - var nbits = br.readBits( 3 ); - if ( nbits === 0 ) { - return 1; - } else { - return br.readBits( nbits ) + ( 1 << nbits ); - } - } - return 0; - } - - function MetaBlockLength() { - this.meta_block_length = 0; - this.input_end = 0; - this.is_uncompressed = 0; - this.is_metadata = false; - } - - function DecodeMetaBlockLength( br ) { - var out = new MetaBlockLength(); - var size_nibbles; - var size_bytes; - var i; - - out.input_end = br.readBits( 1 ); - if ( out.input_end && br.readBits( 1 ) ) { - return out; - } - - size_nibbles = br.readBits( 2 ) + 4; - if ( size_nibbles === 7 ) { - out.is_metadata = true; - - if ( br.readBits( 1 ) !== 0 ) - throw new Error( 'Invalid reserved bit' ); - - size_bytes = br.readBits( 2 ); - if ( size_bytes === 0 ) return out; - - for ( i = 0; i < size_bytes; i++ ) { - var next_byte = br.readBits( 8 ); - if ( - i + 1 === size_bytes && - size_bytes > 1 && - next_byte === 0 - ) - throw new Error( 'Invalid size byte' ); - - out.meta_block_length |= next_byte << ( i * 8 ); - } - } else { - for ( i = 0; i < size_nibbles; ++i ) { - var next_nibble = br.readBits( 4 ); - if ( - i + 1 === size_nibbles && - size_nibbles > 4 && - next_nibble === 0 - ) - throw new Error( 'Invalid size nibble' ); - - out.meta_block_length |= - next_nibble << ( i * 4 ); - } - } - - ++out.meta_block_length; - - if ( ! out.input_end && ! out.is_metadata ) { - out.is_uncompressed = br.readBits( 1 ); - } - - return out; - } - - /* Decodes the next Huffman code from bit-stream. */ - function ReadSymbol( table, index, br ) { - var start_index = index; - - var nbits; - br.fillBitWindow(); - index += - ( br.val_ >>> br.bit_pos_ ) & HUFFMAN_TABLE_MASK; - nbits = table[ index ].bits - HUFFMAN_TABLE_BITS; - if ( nbits > 0 ) { - br.bit_pos_ += HUFFMAN_TABLE_BITS; - index += table[ index ].value; - index += - ( br.val_ >>> br.bit_pos_ ) & - ( ( 1 << nbits ) - 1 ); - } - br.bit_pos_ += table[ index ].bits; - return table[ index ].value; - } - - function ReadHuffmanCodeLengths( - code_length_code_lengths, - num_symbols, - code_lengths, - br - ) { - var symbol = 0; - var prev_code_len = kDefaultCodeLength; - var repeat = 0; - var repeat_code_len = 0; - var space = 32768; - - var table = []; - for ( var i = 0; i < 32; i++ ) - table.push( new HuffmanCode( 0, 0 ) ); - - BrotliBuildHuffmanTable( - table, - 0, - 5, - code_length_code_lengths, - CODE_LENGTH_CODES - ); - - while ( symbol < num_symbols && space > 0 ) { - var p = 0; - var code_len; - - br.readMoreInput(); - br.fillBitWindow(); - p += ( br.val_ >>> br.bit_pos_ ) & 31; - br.bit_pos_ += table[ p ].bits; - code_len = table[ p ].value & 0xff; - if ( code_len < kCodeLengthRepeatCode ) { - repeat = 0; - code_lengths[ symbol++ ] = code_len; - if ( code_len !== 0 ) { - prev_code_len = code_len; - space -= 32768 >> code_len; - } - } else { - var extra_bits = code_len - 14; - var old_repeat; - var repeat_delta; - var new_len = 0; - if ( code_len === kCodeLengthRepeatCode ) { - new_len = prev_code_len; - } - if ( repeat_code_len !== new_len ) { - repeat = 0; - repeat_code_len = new_len; - } - old_repeat = repeat; - if ( repeat > 0 ) { - repeat -= 2; - repeat <<= extra_bits; - } - repeat += br.readBits( extra_bits ) + 3; - repeat_delta = repeat - old_repeat; - if ( symbol + repeat_delta > num_symbols ) { - throw new Error( - '[ReadHuffmanCodeLengths] symbol + repeat_delta > num_symbols' - ); - } - - for ( var x = 0; x < repeat_delta; x++ ) - code_lengths[ symbol + x ] = - repeat_code_len; - - symbol += repeat_delta; - - if ( repeat_code_len !== 0 ) { - space -= - repeat_delta << - ( 15 - repeat_code_len ); - } - } - } - if ( space !== 0 ) { - throw new Error( - '[ReadHuffmanCodeLengths] space = ' + space - ); - } - - for ( ; symbol < num_symbols; symbol++ ) - code_lengths[ symbol ] = 0; - } - - function ReadHuffmanCode( - alphabet_size, - tables, - table, - br - ) { - var table_size = 0; - var simple_code_or_skip; - var code_lengths = new Uint8Array( alphabet_size ); - - br.readMoreInput(); - - /* simple_code_or_skip is used as follows: +var BrotliInput = require('./streams').BrotliInput; +var BrotliOutput = require('./streams').BrotliOutput; +var BrotliBitReader = require('./bit_reader'); +var BrotliDictionary = require('./dictionary'); +var HuffmanCode = require('./huffman').HuffmanCode; +var BrotliBuildHuffmanTable = require('./huffman').BrotliBuildHuffmanTable; +var Context = require('./context'); +var Prefix = require('./prefix'); +var Transform = require('./transform'); + +var kDefaultCodeLength = 8; +var kCodeLengthRepeatCode = 16; +var kNumLiteralCodes = 256; +var kNumInsertAndCopyCodes = 704; +var kNumBlockLengthCodes = 26; +var kLiteralContextBits = 6; +var kDistanceContextBits = 2; + +var HUFFMAN_TABLE_BITS = 8; +var HUFFMAN_TABLE_MASK = 0xff; +/* Maximum possible Huffman table size for an alphabet size of 704, max code + * length 15 and root table bits 8. */ +var HUFFMAN_MAX_TABLE_SIZE = 1080; + +var CODE_LENGTH_CODES = 18; +var kCodeLengthCodeOrder = new Uint8Array([ + 1, 2, 3, 4, 0, 5, 17, 6, 16, 7, 8, 9, 10, 11, 12, 13, 14, 15, +]); + +var NUM_DISTANCE_SHORT_CODES = 16; +var kDistanceShortCodeIndexOffset = new Uint8Array([ + 3, 2, 1, 0, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2 +]); + +var kDistanceShortCodeValueOffset = new Int8Array([ + 0, 0, 0, 0, -1, 1, -2, 2, -3, 3, -1, 1, -2, 2, -3, 3 +]); + +var kMaxHuffmanTableSize = new Uint16Array([ + 256, 402, 436, 468, 500, 534, 566, 598, 630, 662, 694, 726, 758, 790, 822, + 854, 886, 920, 952, 984, 1016, 1048, 1080 +]); + +function DecodeWindowBits(br) { + var n; + if (br.readBits(1) === 0) { + return 16; + } + + n = br.readBits(3); + if (n > 0) { + return 17 + n; + } + + n = br.readBits(3); + if (n > 0) { + return 8 + n; + } + + return 17; +} + +/* Decodes a number in the range [0..255], by reading 1 - 11 bits. */ +function DecodeVarLenUint8(br) { + if (br.readBits(1)) { + var nbits = br.readBits(3); + if (nbits === 0) { + return 1; + } else { + return br.readBits(nbits) + (1 << nbits); + } + } + return 0; +} + +function MetaBlockLength() { + this.meta_block_length = 0; + this.input_end = 0; + this.is_uncompressed = 0; + this.is_metadata = false; +} + +function DecodeMetaBlockLength(br) { + var out = new MetaBlockLength; + var size_nibbles; + var size_bytes; + var i; + + out.input_end = br.readBits(1); + if (out.input_end && br.readBits(1)) { + return out; + } + + size_nibbles = br.readBits(2) + 4; + if (size_nibbles === 7) { + out.is_metadata = true; + + if (br.readBits(1) !== 0) + throw new Error('Invalid reserved bit'); + + size_bytes = br.readBits(2); + if (size_bytes === 0) + return out; + + for (i = 0; i < size_bytes; i++) { + var next_byte = br.readBits(8); + if (i + 1 === size_bytes && size_bytes > 1 && next_byte === 0) + throw new Error('Invalid size byte'); + + out.meta_block_length |= next_byte << (i * 8); + } + } else { + for (i = 0; i < size_nibbles; ++i) { + var next_nibble = br.readBits(4); + if (i + 1 === size_nibbles && size_nibbles > 4 && next_nibble === 0) + throw new Error('Invalid size nibble'); + + out.meta_block_length |= next_nibble << (i * 4); + } + } + + ++out.meta_block_length; + + if (!out.input_end && !out.is_metadata) { + out.is_uncompressed = br.readBits(1); + } + + return out; +} + +/* Decodes the next Huffman code from bit-stream. */ +function ReadSymbol(table, index, br) { + var start_index = index; + + var nbits; + br.fillBitWindow(); + index += (br.val_ >>> br.bit_pos_) & HUFFMAN_TABLE_MASK; + nbits = table[index].bits - HUFFMAN_TABLE_BITS; + if (nbits > 0) { + br.bit_pos_ += HUFFMAN_TABLE_BITS; + index += table[index].value; + index += (br.val_ >>> br.bit_pos_) & ((1 << nbits) - 1); + } + br.bit_pos_ += table[index].bits; + return table[index].value; +} + +function ReadHuffmanCodeLengths(code_length_code_lengths, num_symbols, code_lengths, br) { + var symbol = 0; + var prev_code_len = kDefaultCodeLength; + var repeat = 0; + var repeat_code_len = 0; + var space = 32768; + + var table = []; + for (var i = 0; i < 32; i++) + table.push(new HuffmanCode(0, 0)); + + BrotliBuildHuffmanTable(table, 0, 5, code_length_code_lengths, CODE_LENGTH_CODES); + + while (symbol < num_symbols && space > 0) { + var p = 0; + var code_len; + + br.readMoreInput(); + br.fillBitWindow(); + p += (br.val_ >>> br.bit_pos_) & 31; + br.bit_pos_ += table[p].bits; + code_len = table[p].value & 0xff; + if (code_len < kCodeLengthRepeatCode) { + repeat = 0; + code_lengths[symbol++] = code_len; + if (code_len !== 0) { + prev_code_len = code_len; + space -= 32768 >> code_len; + } + } else { + var extra_bits = code_len - 14; + var old_repeat; + var repeat_delta; + var new_len = 0; + if (code_len === kCodeLengthRepeatCode) { + new_len = prev_code_len; + } + if (repeat_code_len !== new_len) { + repeat = 0; + repeat_code_len = new_len; + } + old_repeat = repeat; + if (repeat > 0) { + repeat -= 2; + repeat <<= extra_bits; + } + repeat += br.readBits(extra_bits) + 3; + repeat_delta = repeat - old_repeat; + if (symbol + repeat_delta > num_symbols) { + throw new Error('[ReadHuffmanCodeLengths] symbol + repeat_delta > num_symbols'); + } + + for (var x = 0; x < repeat_delta; x++) + code_lengths[symbol + x] = repeat_code_len; + + symbol += repeat_delta; + + if (repeat_code_len !== 0) { + space -= repeat_delta << (15 - repeat_code_len); + } + } + } + if (space !== 0) { + throw new Error("[ReadHuffmanCodeLengths] space = " + space); + } + + for (; symbol < num_symbols; symbol++) + code_lengths[symbol] = 0; +} + +function ReadHuffmanCode(alphabet_size, tables, table, br) { + var table_size = 0; + var simple_code_or_skip; + var code_lengths = new Uint8Array(alphabet_size); + + br.readMoreInput(); + + /* simple_code_or_skip is used as follows: 1 for simple code; 0 for no skipping, 2 skips 2 code lengths, 3 skips 3 code lengths */ - simple_code_or_skip = br.readBits( 2 ); - if ( simple_code_or_skip === 1 ) { - /* Read symbols, codes & code lengths directly. */ - var i; - var max_bits_counter = alphabet_size - 1; - var max_bits = 0; - var symbols = new Int32Array( 4 ); - var num_symbols = br.readBits( 2 ) + 1; - while ( max_bits_counter ) { - max_bits_counter >>= 1; - ++max_bits; - } - - for ( i = 0; i < num_symbols; ++i ) { - symbols[ i ] = - br.readBits( max_bits ) % alphabet_size; - code_lengths[ symbols[ i ] ] = 2; - } - code_lengths[ symbols[ 0 ] ] = 1; - switch ( num_symbols ) { - case 1: - break; - case 3: - if ( - symbols[ 0 ] === symbols[ 1 ] || - symbols[ 0 ] === symbols[ 2 ] || - symbols[ 1 ] === symbols[ 2 ] - ) { - throw new Error( - '[ReadHuffmanCode] invalid symbols' - ); - } - break; - case 2: - if ( symbols[ 0 ] === symbols[ 1 ] ) { - throw new Error( - '[ReadHuffmanCode] invalid symbols' - ); - } - - code_lengths[ symbols[ 1 ] ] = 1; - break; - case 4: - if ( - symbols[ 0 ] === symbols[ 1 ] || - symbols[ 0 ] === symbols[ 2 ] || - symbols[ 0 ] === symbols[ 3 ] || - symbols[ 1 ] === symbols[ 2 ] || - symbols[ 1 ] === symbols[ 3 ] || - symbols[ 2 ] === symbols[ 3 ] - ) { - throw new Error( - '[ReadHuffmanCode] invalid symbols' - ); - } - - if ( br.readBits( 1 ) ) { - code_lengths[ symbols[ 2 ] ] = 3; - code_lengths[ symbols[ 3 ] ] = 3; - } else { - code_lengths[ symbols[ 0 ] ] = 2; - } - break; - } - } else { - /* Decode Huffman-coded code lengths. */ - var i; - var code_length_code_lengths = new Uint8Array( - CODE_LENGTH_CODES - ); - var space = 32; - var num_codes = 0; - /* Static Huffman code for the code length code lengths */ - var huff = [ - new HuffmanCode( 2, 0 ), - new HuffmanCode( 2, 4 ), - new HuffmanCode( 2, 3 ), - new HuffmanCode( 3, 2 ), - new HuffmanCode( 2, 0 ), - new HuffmanCode( 2, 4 ), - new HuffmanCode( 2, 3 ), - new HuffmanCode( 4, 1 ), - new HuffmanCode( 2, 0 ), - new HuffmanCode( 2, 4 ), - new HuffmanCode( 2, 3 ), - new HuffmanCode( 3, 2 ), - new HuffmanCode( 2, 0 ), - new HuffmanCode( 2, 4 ), - new HuffmanCode( 2, 3 ), - new HuffmanCode( 4, 5 ), - ]; - for ( - i = simple_code_or_skip; - i < CODE_LENGTH_CODES && space > 0; - ++i - ) { - var code_len_idx = kCodeLengthCodeOrder[ i ]; - var p = 0; - var v; - br.fillBitWindow(); - p += ( br.val_ >>> br.bit_pos_ ) & 15; - br.bit_pos_ += huff[ p ].bits; - v = huff[ p ].value; - code_length_code_lengths[ code_len_idx ] = v; - if ( v !== 0 ) { - space -= 32 >> v; - ++num_codes; - } - } - - if ( ! ( num_codes === 1 || space === 0 ) ) - throw new Error( - '[ReadHuffmanCode] invalid num_codes or space' - ); - - ReadHuffmanCodeLengths( - code_length_code_lengths, - alphabet_size, - code_lengths, - br - ); - } - - table_size = BrotliBuildHuffmanTable( - tables, - table, - HUFFMAN_TABLE_BITS, - code_lengths, - alphabet_size - ); - - if ( table_size === 0 ) { - throw new Error( - '[ReadHuffmanCode] BuildHuffmanTable failed: ' - ); - } - - return table_size; - } - - function ReadBlockLength( table, index, br ) { - var code; - var nbits; - code = ReadSymbol( table, index, br ); - nbits = Prefix.kBlockLengthPrefixCode[ code ].nbits; - return ( - Prefix.kBlockLengthPrefixCode[ code ].offset + - br.readBits( nbits ) - ); - } - - function TranslateShortCodes( code, ringbuffer, index ) { - var val; - if ( code < NUM_DISTANCE_SHORT_CODES ) { - index += kDistanceShortCodeIndexOffset[ code ]; - index &= 3; - val = - ringbuffer[ index ] + - kDistanceShortCodeValueOffset[ code ]; - } else { - val = code - NUM_DISTANCE_SHORT_CODES + 1; - } - return val; - } - - function MoveToFront( v, index ) { - var value = v[ index ]; - var i = index; - for ( ; i; --i ) v[ i ] = v[ i - 1 ]; - v[ 0 ] = value; - } - - function InverseMoveToFrontTransform( v, v_len ) { - var mtf = new Uint8Array( 256 ); - var i; - for ( i = 0; i < 256; ++i ) { - mtf[ i ] = i; - } - for ( i = 0; i < v_len; ++i ) { - var index = v[ i ]; - v[ i ] = mtf[ index ]; - if ( index ) MoveToFront( mtf, index ); - } - } - - /* Contains a collection of huffman trees with the same alphabet size. */ - function HuffmanTreeGroup( alphabet_size, num_htrees ) { - this.alphabet_size = alphabet_size; - this.num_htrees = num_htrees; - this.codes = new Array( - num_htrees + - num_htrees * - kMaxHuffmanTableSize[ - ( alphabet_size + 31 ) >>> 5 - ] - ); - this.htrees = new Uint32Array( num_htrees ); - } - - HuffmanTreeGroup.prototype.decode = function ( br ) { - var i; - var table_size; - var next = 0; - for ( i = 0; i < this.num_htrees; ++i ) { - this.htrees[ i ] = next; - table_size = ReadHuffmanCode( - this.alphabet_size, - this.codes, - next, - br - ); - next += table_size; - } - }; - - function DecodeContextMap( context_map_size, br ) { - var out = { num_htrees: null, context_map: null }; - var use_rle_for_zeros; - var max_run_length_prefix = 0; - var table; - var i; - - br.readMoreInput(); - var num_htrees = ( out.num_htrees = - DecodeVarLenUint8( br ) + 1 ); - - var context_map = ( out.context_map = new Uint8Array( - context_map_size - ) ); - if ( num_htrees <= 1 ) { - return out; - } - - use_rle_for_zeros = br.readBits( 1 ); - if ( use_rle_for_zeros ) { - max_run_length_prefix = br.readBits( 4 ) + 1; - } - - table = []; - for ( i = 0; i < HUFFMAN_MAX_TABLE_SIZE; i++ ) { - table[ i ] = new HuffmanCode( 0, 0 ); - } - - ReadHuffmanCode( - num_htrees + max_run_length_prefix, - table, - 0, - br - ); - - for ( i = 0; i < context_map_size; ) { - var code; - - br.readMoreInput(); - code = ReadSymbol( table, 0, br ); - if ( code === 0 ) { - context_map[ i ] = 0; - ++i; - } else if ( code <= max_run_length_prefix ) { - var reps = - 1 + ( 1 << code ) + br.readBits( code ); - while ( --reps ) { - if ( i >= context_map_size ) { - throw new Error( - '[DecodeContextMap] i >= context_map_size' - ); - } - context_map[ i ] = 0; - ++i; - } - } else { - context_map[ i ] = code - max_run_length_prefix; - ++i; - } - } - if ( br.readBits( 1 ) ) { - InverseMoveToFrontTransform( - context_map, - context_map_size - ); - } - - return out; - } - - function DecodeBlockType( - max_block_type, - trees, - tree_type, - block_types, - ringbuffers, - indexes, - br - ) { - var ringbuffer = tree_type * 2; - var index = tree_type; - var type_code = ReadSymbol( - trees, - tree_type * HUFFMAN_MAX_TABLE_SIZE, - br - ); - var block_type; - if ( type_code === 0 ) { - block_type = - ringbuffers[ - ringbuffer + ( indexes[ index ] & 1 ) - ]; - } else if ( type_code === 1 ) { - block_type = - ringbuffers[ - ringbuffer + - ( ( indexes[ index ] - 1 ) & 1 ) - ] + 1; - } else { - block_type = type_code - 2; - } - if ( block_type >= max_block_type ) { - block_type -= max_block_type; - } - block_types[ tree_type ] = block_type; - ringbuffers[ ringbuffer + ( indexes[ index ] & 1 ) ] = - block_type; - ++indexes[ index ]; - } - - function CopyUncompressedBlockToOutput( - output, - len, - pos, - ringbuffer, - ringbuffer_mask, - br - ) { - var rb_size = ringbuffer_mask + 1; - var rb_pos = pos & ringbuffer_mask; - var br_pos = br.pos_ & BrotliBitReader.IBUF_MASK; - var nbytes; - - /* For short lengths copy byte-by-byte */ - if ( - len < 8 || - br.bit_pos_ + ( len << 3 ) < br.bit_end_pos_ - ) { - while ( len-- > 0 ) { - br.readMoreInput(); - ringbuffer[ rb_pos++ ] = br.readBits( 8 ); - if ( rb_pos === rb_size ) { - output.write( ringbuffer, rb_size ); - rb_pos = 0; - } - } - return; - } - - if ( br.bit_end_pos_ < 32 ) { - throw new Error( - '[CopyUncompressedBlockToOutput] br.bit_end_pos_ < 32' - ); - } - - /* Copy remaining 0-4 bytes from br.val_ to ringbuffer. */ - while ( br.bit_pos_ < 32 ) { - ringbuffer[ rb_pos ] = br.val_ >>> br.bit_pos_; - br.bit_pos_ += 8; - ++rb_pos; - --len; - } - - /* Copy remaining bytes from br.buf_ to ringbuffer. */ - nbytes = ( br.bit_end_pos_ - br.bit_pos_ ) >> 3; - if ( br_pos + nbytes > BrotliBitReader.IBUF_MASK ) { - var tail = BrotliBitReader.IBUF_MASK + 1 - br_pos; - for ( var x = 0; x < tail; x++ ) - ringbuffer[ rb_pos + x ] = - br.buf_[ br_pos + x ]; - - nbytes -= tail; - rb_pos += tail; - len -= tail; - br_pos = 0; - } - - for ( var x = 0; x < nbytes; x++ ) - ringbuffer[ rb_pos + x ] = br.buf_[ br_pos + x ]; - - rb_pos += nbytes; - len -= nbytes; - - /* If we wrote past the logical end of the ringbuffer, copy the tail of the + simple_code_or_skip = br.readBits(2); + if (simple_code_or_skip === 1) { + /* Read symbols, codes & code lengths directly. */ + var i; + var max_bits_counter = alphabet_size - 1; + var max_bits = 0; + var symbols = new Int32Array(4); + var num_symbols = br.readBits(2) + 1; + while (max_bits_counter) { + max_bits_counter >>= 1; + ++max_bits; + } + + for (i = 0; i < num_symbols; ++i) { + symbols[i] = br.readBits(max_bits) % alphabet_size; + code_lengths[symbols[i]] = 2; + } + code_lengths[symbols[0]] = 1; + switch (num_symbols) { + case 1: + break; + case 3: + if ((symbols[0] === symbols[1]) || + (symbols[0] === symbols[2]) || + (symbols[1] === symbols[2])) { + throw new Error('[ReadHuffmanCode] invalid symbols'); + } + break; + case 2: + if (symbols[0] === symbols[1]) { + throw new Error('[ReadHuffmanCode] invalid symbols'); + } + + code_lengths[symbols[1]] = 1; + break; + case 4: + if ((symbols[0] === symbols[1]) || + (symbols[0] === symbols[2]) || + (symbols[0] === symbols[3]) || + (symbols[1] === symbols[2]) || + (symbols[1] === symbols[3]) || + (symbols[2] === symbols[3])) { + throw new Error('[ReadHuffmanCode] invalid symbols'); + } + + if (br.readBits(1)) { + code_lengths[symbols[2]] = 3; + code_lengths[symbols[3]] = 3; + } else { + code_lengths[symbols[0]] = 2; + } + break; + } + } else { /* Decode Huffman-coded code lengths. */ + var i; + var code_length_code_lengths = new Uint8Array(CODE_LENGTH_CODES); + var space = 32; + var num_codes = 0; + /* Static Huffman code for the code length code lengths */ + var huff = [ + new HuffmanCode(2, 0), new HuffmanCode(2, 4), new HuffmanCode(2, 3), new HuffmanCode(3, 2), + new HuffmanCode(2, 0), new HuffmanCode(2, 4), new HuffmanCode(2, 3), new HuffmanCode(4, 1), + new HuffmanCode(2, 0), new HuffmanCode(2, 4), new HuffmanCode(2, 3), new HuffmanCode(3, 2), + new HuffmanCode(2, 0), new HuffmanCode(2, 4), new HuffmanCode(2, 3), new HuffmanCode(4, 5) + ]; + for (i = simple_code_or_skip; i < CODE_LENGTH_CODES && space > 0; ++i) { + var code_len_idx = kCodeLengthCodeOrder[i]; + var p = 0; + var v; + br.fillBitWindow(); + p += (br.val_ >>> br.bit_pos_) & 15; + br.bit_pos_ += huff[p].bits; + v = huff[p].value; + code_length_code_lengths[code_len_idx] = v; + if (v !== 0) { + space -= (32 >> v); + ++num_codes; + } + } + + if (!(num_codes === 1 || space === 0)) + throw new Error('[ReadHuffmanCode] invalid num_codes or space'); + + ReadHuffmanCodeLengths(code_length_code_lengths, alphabet_size, code_lengths, br); + } + + table_size = BrotliBuildHuffmanTable(tables, table, HUFFMAN_TABLE_BITS, code_lengths, alphabet_size); + + if (table_size === 0) { + throw new Error("[ReadHuffmanCode] BuildHuffmanTable failed: "); + } + + return table_size; +} + +function ReadBlockLength(table, index, br) { + var code; + var nbits; + code = ReadSymbol(table, index, br); + nbits = Prefix.kBlockLengthPrefixCode[code].nbits; + return Prefix.kBlockLengthPrefixCode[code].offset + br.readBits(nbits); +} + +function TranslateShortCodes(code, ringbuffer, index) { + var val; + if (code < NUM_DISTANCE_SHORT_CODES) { + index += kDistanceShortCodeIndexOffset[code]; + index &= 3; + val = ringbuffer[index] + kDistanceShortCodeValueOffset[code]; + } else { + val = code - NUM_DISTANCE_SHORT_CODES + 1; + } + return val; +} + +function MoveToFront(v, index) { + var value = v[index]; + var i = index; + for (; i; --i) v[i] = v[i - 1]; + v[0] = value; +} + +function InverseMoveToFrontTransform(v, v_len) { + var mtf = new Uint8Array(256); + var i; + for (i = 0; i < 256; ++i) { + mtf[i] = i; + } + for (i = 0; i < v_len; ++i) { + var index = v[i]; + v[i] = mtf[index]; + if (index) MoveToFront(mtf, index); + } +} + +/* Contains a collection of huffman trees with the same alphabet size. */ +function HuffmanTreeGroup(alphabet_size, num_htrees) { + this.alphabet_size = alphabet_size; + this.num_htrees = num_htrees; + this.codes = new Array(num_htrees + num_htrees * kMaxHuffmanTableSize[(alphabet_size + 31) >>> 5]); + this.htrees = new Uint32Array(num_htrees); +} + +HuffmanTreeGroup.prototype.decode = function(br) { + var i; + var table_size; + var next = 0; + for (i = 0; i < this.num_htrees; ++i) { + this.htrees[i] = next; + table_size = ReadHuffmanCode(this.alphabet_size, this.codes, next, br); + next += table_size; + } +}; + +function DecodeContextMap(context_map_size, br) { + var out = { num_htrees: null, context_map: null }; + var use_rle_for_zeros; + var max_run_length_prefix = 0; + var table; + var i; + + br.readMoreInput(); + var num_htrees = out.num_htrees = DecodeVarLenUint8(br) + 1; + + var context_map = out.context_map = new Uint8Array(context_map_size); + if (num_htrees <= 1) { + return out; + } + + use_rle_for_zeros = br.readBits(1); + if (use_rle_for_zeros) { + max_run_length_prefix = br.readBits(4) + 1; + } + + table = []; + for (i = 0; i < HUFFMAN_MAX_TABLE_SIZE; i++) { + table[i] = new HuffmanCode(0, 0); + } + + ReadHuffmanCode(num_htrees + max_run_length_prefix, table, 0, br); + + for (i = 0; i < context_map_size;) { + var code; + + br.readMoreInput(); + code = ReadSymbol(table, 0, br); + if (code === 0) { + context_map[i] = 0; + ++i; + } else if (code <= max_run_length_prefix) { + var reps = 1 + (1 << code) + br.readBits(code); + while (--reps) { + if (i >= context_map_size) { + throw new Error("[DecodeContextMap] i >= context_map_size"); + } + context_map[i] = 0; + ++i; + } + } else { + context_map[i] = code - max_run_length_prefix; + ++i; + } + } + if (br.readBits(1)) { + InverseMoveToFrontTransform(context_map, context_map_size); + } + + return out; +} + +function DecodeBlockType(max_block_type, trees, tree_type, block_types, ringbuffers, indexes, br) { + var ringbuffer = tree_type * 2; + var index = tree_type; + var type_code = ReadSymbol(trees, tree_type * HUFFMAN_MAX_TABLE_SIZE, br); + var block_type; + if (type_code === 0) { + block_type = ringbuffers[ringbuffer + (indexes[index] & 1)]; + } else if (type_code === 1) { + block_type = ringbuffers[ringbuffer + ((indexes[index] - 1) & 1)] + 1; + } else { + block_type = type_code - 2; + } + if (block_type >= max_block_type) { + block_type -= max_block_type; + } + block_types[tree_type] = block_type; + ringbuffers[ringbuffer + (indexes[index] & 1)] = block_type; + ++indexes[index]; +} + +function CopyUncompressedBlockToOutput(output, len, pos, ringbuffer, ringbuffer_mask, br) { + var rb_size = ringbuffer_mask + 1; + var rb_pos = pos & ringbuffer_mask; + var br_pos = br.pos_ & BrotliBitReader.IBUF_MASK; + var nbytes; + + /* For short lengths copy byte-by-byte */ + if (len < 8 || br.bit_pos_ + (len << 3) < br.bit_end_pos_) { + while (len-- > 0) { + br.readMoreInput(); + ringbuffer[rb_pos++] = br.readBits(8); + if (rb_pos === rb_size) { + output.write(ringbuffer, rb_size); + rb_pos = 0; + } + } + return; + } + + if (br.bit_end_pos_ < 32) { + throw new Error('[CopyUncompressedBlockToOutput] br.bit_end_pos_ < 32'); + } + + /* Copy remaining 0-4 bytes from br.val_ to ringbuffer. */ + while (br.bit_pos_ < 32) { + ringbuffer[rb_pos] = (br.val_ >>> br.bit_pos_); + br.bit_pos_ += 8; + ++rb_pos; + --len; + } + + /* Copy remaining bytes from br.buf_ to ringbuffer. */ + nbytes = (br.bit_end_pos_ - br.bit_pos_) >> 3; + if (br_pos + nbytes > BrotliBitReader.IBUF_MASK) { + var tail = BrotliBitReader.IBUF_MASK + 1 - br_pos; + for (var x = 0; x < tail; x++) + ringbuffer[rb_pos + x] = br.buf_[br_pos + x]; + + nbytes -= tail; + rb_pos += tail; + len -= tail; + br_pos = 0; + } + + for (var x = 0; x < nbytes; x++) + ringbuffer[rb_pos + x] = br.buf_[br_pos + x]; + + rb_pos += nbytes; + len -= nbytes; + + /* If we wrote past the logical end of the ringbuffer, copy the tail of the ringbuffer to its beginning and flush the ringbuffer to the output. */ - if ( rb_pos >= rb_size ) { - output.write( ringbuffer, rb_size ); - rb_pos -= rb_size; - for ( var x = 0; x < rb_pos; x++ ) - ringbuffer[ x ] = ringbuffer[ rb_size + x ]; - } - - /* If we have more to copy than the remaining size of the ringbuffer, then we + if (rb_pos >= rb_size) { + output.write(ringbuffer, rb_size); + rb_pos -= rb_size; + for (var x = 0; x < rb_pos; x++) + ringbuffer[x] = ringbuffer[rb_size + x]; + } + + /* If we have more to copy than the remaining size of the ringbuffer, then we first fill the ringbuffer from the input and then flush the ringbuffer to the output */ - while ( rb_pos + len >= rb_size ) { - nbytes = rb_size - rb_pos; - if ( - br.input_.read( ringbuffer, rb_pos, nbytes ) < - nbytes - ) { - throw new Error( - '[CopyUncompressedBlockToOutput] not enough bytes' - ); - } - output.write( ringbuffer, rb_size ); - len -= nbytes; - rb_pos = 0; - } - - /* Copy straight from the input onto the ringbuffer. The ringbuffer will be + while (rb_pos + len >= rb_size) { + nbytes = rb_size - rb_pos; + if (br.input_.read(ringbuffer, rb_pos, nbytes) < nbytes) { + throw new Error('[CopyUncompressedBlockToOutput] not enough bytes'); + } + output.write(ringbuffer, rb_size); + len -= nbytes; + rb_pos = 0; + } + + /* Copy straight from the input onto the ringbuffer. The ringbuffer will be flushed to the output at a later time. */ - if ( br.input_.read( ringbuffer, rb_pos, len ) < len ) { - throw new Error( - '[CopyUncompressedBlockToOutput] not enough bytes' - ); - } + if (br.input_.read(ringbuffer, rb_pos, len) < len) { + throw new Error('[CopyUncompressedBlockToOutput] not enough bytes'); + } - /* Restore the state of the bit reader. */ - br.reset(); - } + /* Restore the state of the bit reader. */ + br.reset(); +} - /* Advances the bit reader position to the next byte boundary and verifies +/* Advances the bit reader position to the next byte boundary and verifies that any skipped bits are set to zero. */ - function JumpToByteBoundary( br ) { - var new_bit_pos = ( br.bit_pos_ + 7 ) & ~7; - var pad_bits = br.readBits( new_bit_pos - br.bit_pos_ ); - return pad_bits == 0; - } - - function BrotliDecompressedSize( buffer ) { - var input = new BrotliInput( buffer ); - var br = new BrotliBitReader( input ); - DecodeWindowBits( br ); - var out = DecodeMetaBlockLength( br ); - return out.meta_block_length; - } - - exports.BrotliDecompressedSize = BrotliDecompressedSize; - - function BrotliDecompressBuffer( buffer, output_size ) { - var input = new BrotliInput( buffer ); - - if ( output_size == null ) { - output_size = BrotliDecompressedSize( buffer ); - } - - var output_buffer = new Uint8Array( output_size ); - var output = new BrotliOutput( output_buffer ); - - BrotliDecompress( input, output ); - - if ( output.pos < output.buffer.length ) { - output.buffer = output.buffer.subarray( - 0, - output.pos - ); - } - - return output.buffer; - } - - exports.BrotliDecompressBuffer = BrotliDecompressBuffer; - - function BrotliDecompress( input, output ) { - var i; - var pos = 0; - var input_end = 0; - var window_bits = 0; - var max_backward_distance; - var max_distance = 0; - var ringbuffer_size; - var ringbuffer_mask; - var ringbuffer; - var ringbuffer_end; - /* This ring buffer holds a few past copy distances that will be used by */ - /* some special distance codes. */ - var dist_rb = [ 16, 15, 11, 4 ]; - var dist_rb_idx = 0; - /* The previous 2 bytes used for context. */ - var prev_byte1 = 0; - var prev_byte2 = 0; - var hgroup = [ - new HuffmanTreeGroup( 0, 0 ), - new HuffmanTreeGroup( 0, 0 ), - new HuffmanTreeGroup( 0, 0 ), - ]; - var block_type_trees; - var block_len_trees; - var br; - - /* We need the slack region for the following reasons: +function JumpToByteBoundary(br) { + var new_bit_pos = (br.bit_pos_ + 7) & ~7; + var pad_bits = br.readBits(new_bit_pos - br.bit_pos_); + return pad_bits == 0; +} + +function BrotliDecompressedSize(buffer) { + var input = new BrotliInput(buffer); + var br = new BrotliBitReader(input); + DecodeWindowBits(br); + var out = DecodeMetaBlockLength(br); + return out.meta_block_length; +} + +exports.BrotliDecompressedSize = BrotliDecompressedSize; + +function BrotliDecompressBuffer(buffer, output_size) { + var input = new BrotliInput(buffer); + + if (output_size == null) { + output_size = BrotliDecompressedSize(buffer); + } + + var output_buffer = new Uint8Array(output_size); + var output = new BrotliOutput(output_buffer); + + BrotliDecompress(input, output); + + if (output.pos < output.buffer.length) { + output.buffer = output.buffer.subarray(0, output.pos); + } + + return output.buffer; +} + +exports.BrotliDecompressBuffer = BrotliDecompressBuffer; + +function BrotliDecompress(input, output) { + var i; + var pos = 0; + var input_end = 0; + var window_bits = 0; + var max_backward_distance; + var max_distance = 0; + var ringbuffer_size; + var ringbuffer_mask; + var ringbuffer; + var ringbuffer_end; + /* This ring buffer holds a few past copy distances that will be used by */ + /* some special distance codes. */ + var dist_rb = [ 16, 15, 11, 4 ]; + var dist_rb_idx = 0; + /* The previous 2 bytes used for context. */ + var prev_byte1 = 0; + var prev_byte2 = 0; + var hgroup = [new HuffmanTreeGroup(0, 0), new HuffmanTreeGroup(0, 0), new HuffmanTreeGroup(0, 0)]; + var block_type_trees; + var block_len_trees; + var br; + + /* We need the slack region for the following reasons: - always doing two 8-byte copies for fast backward copying - transforms - flushing the input ringbuffer when decoding uncompressed blocks */ - var kRingBufferWriteAheadSlack = - 128 + BrotliBitReader.READ_SIZE; - - br = new BrotliBitReader( input ); - - /* Decode window size. */ - window_bits = DecodeWindowBits( br ); - max_backward_distance = ( 1 << window_bits ) - 16; - - ringbuffer_size = 1 << window_bits; - ringbuffer_mask = ringbuffer_size - 1; - ringbuffer = new Uint8Array( - ringbuffer_size + - kRingBufferWriteAheadSlack + - BrotliDictionary.maxDictionaryWordLength - ); - ringbuffer_end = ringbuffer_size; - - block_type_trees = []; - block_len_trees = []; - for ( var x = 0; x < 3 * HUFFMAN_MAX_TABLE_SIZE; x++ ) { - block_type_trees[ x ] = new HuffmanCode( 0, 0 ); - block_len_trees[ x ] = new HuffmanCode( 0, 0 ); - } - - while ( ! input_end ) { - var meta_block_remaining_len = 0; - var is_uncompressed; - var block_length = [ 1 << 28, 1 << 28, 1 << 28 ]; - var block_type = [ 0 ]; - var num_block_types = [ 1, 1, 1 ]; - var block_type_rb = [ 0, 1, 0, 1, 0, 1 ]; - var block_type_rb_index = [ 0 ]; - var distance_postfix_bits; - var num_direct_distance_codes; - var distance_postfix_mask; - var num_distance_codes; - var context_map = null; - var context_modes = null; - var num_literal_htrees; - var dist_context_map = null; - var num_dist_htrees; - var context_offset = 0; - var context_map_slice = null; - var literal_htree_index = 0; - var dist_context_offset = 0; - var dist_context_map_slice = null; - var dist_htree_index = 0; - var context_lookup_offset1 = 0; - var context_lookup_offset2 = 0; - var context_mode; - var htree_command; - - for ( i = 0; i < 3; ++i ) { - hgroup[ i ].codes = null; - hgroup[ i ].htrees = null; - } - - br.readMoreInput(); - - var _out = DecodeMetaBlockLength( br ); - meta_block_remaining_len = _out.meta_block_length; - if ( - pos + meta_block_remaining_len > - output.buffer.length - ) { - /* We need to grow the output buffer to fit the additional data. */ - var tmp = new Uint8Array( - pos + meta_block_remaining_len - ); - tmp.set( output.buffer ); - output.buffer = tmp; - } - input_end = _out.input_end; - is_uncompressed = _out.is_uncompressed; - - if ( _out.is_metadata ) { - JumpToByteBoundary( br ); - - for ( - ; - meta_block_remaining_len > 0; - --meta_block_remaining_len - ) { - br.readMoreInput(); - /* Read one byte and ignore it. */ - br.readBits( 8 ); - } - - continue; - } - - if ( meta_block_remaining_len === 0 ) { - continue; - } - - if ( is_uncompressed ) { - br.bit_pos_ = ( br.bit_pos_ + 7 ) & ~7; - CopyUncompressedBlockToOutput( - output, - meta_block_remaining_len, - pos, - ringbuffer, - ringbuffer_mask, - br - ); - pos += meta_block_remaining_len; - continue; - } - - for ( i = 0; i < 3; ++i ) { - num_block_types[ i ] = - DecodeVarLenUint8( br ) + 1; - if ( num_block_types[ i ] >= 2 ) { - ReadHuffmanCode( - num_block_types[ i ] + 2, - block_type_trees, - i * HUFFMAN_MAX_TABLE_SIZE, - br - ); - ReadHuffmanCode( - kNumBlockLengthCodes, - block_len_trees, - i * HUFFMAN_MAX_TABLE_SIZE, - br - ); - block_length[ i ] = ReadBlockLength( - block_len_trees, - i * HUFFMAN_MAX_TABLE_SIZE, - br - ); - block_type_rb_index[ i ] = 1; - } - } - - br.readMoreInput(); - - distance_postfix_bits = br.readBits( 2 ); - num_direct_distance_codes = - NUM_DISTANCE_SHORT_CODES + - ( br.readBits( 4 ) << distance_postfix_bits ); - distance_postfix_mask = - ( 1 << distance_postfix_bits ) - 1; - num_distance_codes = - num_direct_distance_codes + - ( 48 << distance_postfix_bits ); - context_modes = new Uint8Array( - num_block_types[ 0 ] - ); - - for ( i = 0; i < num_block_types[ 0 ]; ++i ) { - br.readMoreInput(); - context_modes[ i ] = br.readBits( 2 ) << 1; - } - - var _o1 = DecodeContextMap( - num_block_types[ 0 ] << kLiteralContextBits, - br - ); - num_literal_htrees = _o1.num_htrees; - context_map = _o1.context_map; - - var _o2 = DecodeContextMap( - num_block_types[ 2 ] << kDistanceContextBits, - br - ); - num_dist_htrees = _o2.num_htrees; - dist_context_map = _o2.context_map; - - hgroup[ 0 ] = new HuffmanTreeGroup( - kNumLiteralCodes, - num_literal_htrees - ); - hgroup[ 1 ] = new HuffmanTreeGroup( - kNumInsertAndCopyCodes, - num_block_types[ 1 ] - ); - hgroup[ 2 ] = new HuffmanTreeGroup( - num_distance_codes, - num_dist_htrees - ); - - for ( i = 0; i < 3; ++i ) { - hgroup[ i ].decode( br ); - } - - context_map_slice = 0; - dist_context_map_slice = 0; - context_mode = context_modes[ block_type[ 0 ] ]; - context_lookup_offset1 = - Context.lookupOffsets[ context_mode ]; - context_lookup_offset2 = - Context.lookupOffsets[ context_mode + 1 ]; - htree_command = hgroup[ 1 ].htrees[ 0 ]; - - while ( meta_block_remaining_len > 0 ) { - var cmd_code; - var range_idx; - var insert_code; - var copy_code; - var insert_length; - var copy_length; - var distance_code; - var distance; - var context; - var j; - var copy_dst; - - br.readMoreInput(); - - if ( block_length[ 1 ] === 0 ) { - DecodeBlockType( - num_block_types[ 1 ], - block_type_trees, - 1, - block_type, - block_type_rb, - block_type_rb_index, - br - ); - block_length[ 1 ] = ReadBlockLength( - block_len_trees, - HUFFMAN_MAX_TABLE_SIZE, - br - ); - htree_command = - hgroup[ 1 ].htrees[ block_type[ 1 ] ]; - } - --block_length[ 1 ]; - cmd_code = ReadSymbol( - hgroup[ 1 ].codes, - htree_command, - br - ); - range_idx = cmd_code >> 6; - if ( range_idx >= 2 ) { - range_idx -= 2; - distance_code = -1; - } else { - distance_code = 0; - } - insert_code = - Prefix.kInsertRangeLut[ range_idx ] + - ( ( cmd_code >> 3 ) & 7 ); - copy_code = - Prefix.kCopyRangeLut[ range_idx ] + - ( cmd_code & 7 ); - insert_length = - Prefix.kInsertLengthPrefixCode[ - insert_code - ].offset + - br.readBits( - Prefix.kInsertLengthPrefixCode[ - insert_code - ].nbits - ); - copy_length = - Prefix.kCopyLengthPrefixCode[ copy_code ] - .offset + - br.readBits( - Prefix.kCopyLengthPrefixCode[ - copy_code - ].nbits - ); - prev_byte1 = - ringbuffer[ ( pos - 1 ) & ringbuffer_mask ]; - prev_byte2 = - ringbuffer[ ( pos - 2 ) & ringbuffer_mask ]; - for ( j = 0; j < insert_length; ++j ) { - br.readMoreInput(); - - if ( block_length[ 0 ] === 0 ) { - DecodeBlockType( - num_block_types[ 0 ], - block_type_trees, - 0, - block_type, - block_type_rb, - block_type_rb_index, - br - ); - block_length[ 0 ] = ReadBlockLength( - block_len_trees, - 0, - br - ); - context_offset = - block_type[ 0 ] << - kLiteralContextBits; - context_map_slice = context_offset; - context_mode = - context_modes[ block_type[ 0 ] ]; - context_lookup_offset1 = - Context.lookupOffsets[ - context_mode - ]; - context_lookup_offset2 = - Context.lookupOffsets[ - context_mode + 1 - ]; - } - context = - Context.lookup[ - context_lookup_offset1 + prev_byte1 - ] | - Context.lookup[ - context_lookup_offset2 + prev_byte2 - ]; - literal_htree_index = - context_map[ - context_map_slice + context - ]; - --block_length[ 0 ]; - prev_byte2 = prev_byte1; - prev_byte1 = ReadSymbol( - hgroup[ 0 ].codes, - hgroup[ 0 ].htrees[ - literal_htree_index - ], - br - ); - ringbuffer[ pos & ringbuffer_mask ] = - prev_byte1; - if ( - ( pos & ringbuffer_mask ) === - ringbuffer_mask - ) { - output.write( - ringbuffer, - ringbuffer_size - ); - } - ++pos; - } - meta_block_remaining_len -= insert_length; - if ( meta_block_remaining_len <= 0 ) break; - - if ( distance_code < 0 ) { - var context; - - br.readMoreInput(); - if ( block_length[ 2 ] === 0 ) { - DecodeBlockType( - num_block_types[ 2 ], - block_type_trees, - 2, - block_type, - block_type_rb, - block_type_rb_index, - br - ); - block_length[ 2 ] = ReadBlockLength( - block_len_trees, - 2 * HUFFMAN_MAX_TABLE_SIZE, - br - ); - dist_context_offset = - block_type[ 2 ] << - kDistanceContextBits; - dist_context_map_slice = - dist_context_offset; - } - --block_length[ 2 ]; - context = - ( copy_length > 4 - ? 3 - : copy_length - 2 ) & 0xff; - dist_htree_index = - dist_context_map[ - dist_context_map_slice + context - ]; - distance_code = ReadSymbol( - hgroup[ 2 ].codes, - hgroup[ 2 ].htrees[ dist_htree_index ], - br - ); - if ( - distance_code >= - num_direct_distance_codes - ) { - var nbits; - var postfix; - var offset; - distance_code -= - num_direct_distance_codes; - postfix = - distance_code & - distance_postfix_mask; - distance_code >>= distance_postfix_bits; - nbits = ( distance_code >> 1 ) + 1; - offset = - ( ( 2 + ( distance_code & 1 ) ) << - nbits ) - - 4; - distance_code = - num_direct_distance_codes + - ( ( offset + - br.readBits( nbits ) ) << - distance_postfix_bits ) + - postfix; - } - } - - /* Convert the distance code to the actual distance by possibly looking */ - /* up past distnaces from the ringbuffer. */ - distance = TranslateShortCodes( - distance_code, - dist_rb, - dist_rb_idx - ); - if ( distance < 0 ) { - throw new Error( - '[BrotliDecompress] invalid distance' - ); - } - - if ( - pos < max_backward_distance && - max_distance !== max_backward_distance - ) { - max_distance = pos; - } else { - max_distance = max_backward_distance; - } - - copy_dst = pos & ringbuffer_mask; - - if ( distance > max_distance ) { - if ( - copy_length >= - BrotliDictionary.minDictionaryWordLength && - copy_length <= - BrotliDictionary.maxDictionaryWordLength - ) { - var offset = - BrotliDictionary.offsetsByLength[ - copy_length - ]; - var word_id = - distance - max_distance - 1; - var shift = - BrotliDictionary.sizeBitsByLength[ - copy_length - ]; - var mask = ( 1 << shift ) - 1; - var word_idx = word_id & mask; - var transform_idx = word_id >> shift; - offset += word_idx * copy_length; - if ( - transform_idx < - Transform.kNumTransforms - ) { - var len = - Transform.transformDictionaryWord( - ringbuffer, - copy_dst, - offset, - copy_length, - transform_idx - ); - copy_dst += len; - pos += len; - meta_block_remaining_len -= len; - if ( copy_dst >= ringbuffer_end ) { - output.write( - ringbuffer, - ringbuffer_size - ); - - for ( - var _x = 0; - _x < - copy_dst - ringbuffer_end; - _x++ - ) - ringbuffer[ _x ] = - ringbuffer[ - ringbuffer_end + _x - ]; - } - } else { - throw new Error( - 'Invalid backward reference. pos: ' + - pos + - ' distance: ' + - distance + - ' len: ' + - copy_length + - ' bytes left: ' + - meta_block_remaining_len - ); - } - } else { - throw new Error( - 'Invalid backward reference. pos: ' + - pos + - ' distance: ' + - distance + - ' len: ' + - copy_length + - ' bytes left: ' + - meta_block_remaining_len - ); - } - } else { - if ( distance_code > 0 ) { - dist_rb[ dist_rb_idx & 3 ] = distance; - ++dist_rb_idx; - } - - if ( - copy_length > meta_block_remaining_len - ) { - throw new Error( - 'Invalid backward reference. pos: ' + - pos + - ' distance: ' + - distance + - ' len: ' + - copy_length + - ' bytes left: ' + - meta_block_remaining_len - ); - } - - for ( j = 0; j < copy_length; ++j ) { - ringbuffer[ pos & ringbuffer_mask ] = - ringbuffer[ - ( pos - distance ) & - ringbuffer_mask - ]; - if ( - ( pos & ringbuffer_mask ) === - ringbuffer_mask - ) { - output.write( - ringbuffer, - ringbuffer_size - ); - } - ++pos; - --meta_block_remaining_len; - } - } - - /* When we get here, we must have inserted at least one literal and */ - /* made a copy of at least length two, therefore accessing the last 2 */ - /* bytes is valid. */ - prev_byte1 = - ringbuffer[ ( pos - 1 ) & ringbuffer_mask ]; - prev_byte2 = - ringbuffer[ ( pos - 2 ) & ringbuffer_mask ]; - } - - /* Protect pos from overflow, wrap it around at every GB of input data */ - pos &= 0x3fffffff; - } - - output.write( ringbuffer, pos & ringbuffer_mask ); - } - - exports.BrotliDecompress = BrotliDecompress; - - BrotliDictionary.init(); - }, - { - './bit_reader': 1, - './context': 2, - './dictionary': 6, - './huffman': 7, - './prefix': 9, - './streams': 10, - './transform': 11, - }, - ], - 4: [ - function ( require, module, exports ) { - var base64 = require( 'base64-js' ); - //var fs = require('fs'); - - /** - * The normal dictionary-data.js is quite large, which makes it - * unsuitable for browser usage. In order to make it smaller, - * we read dictionary.bin, which is a compressed version of - * the dictionary, and on initial load, Brotli decompresses - * it's own dictionary. 😜 - */ - exports.init = function () { - var BrotliDecompressBuffer = - require( './decode' ).BrotliDecompressBuffer; - var compressed = base64.toByteArray( - require( './dictionary.bin.js' ) - ); - return BrotliDecompressBuffer( compressed ); - }; - }, - { './decode': 3, './dictionary.bin.js': 5, 'base64-js': 8 }, - ], - 5: [ - function ( require, module, exports ) { - module.exports = - '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'; - }, - {}, - ], - 6: [ - function ( require, module, exports ) { - /* Copyright 2013 Google Inc. All Rights Reserved. + var kRingBufferWriteAheadSlack = 128 + BrotliBitReader.READ_SIZE; + + br = new BrotliBitReader(input); + + /* Decode window size. */ + window_bits = DecodeWindowBits(br); + max_backward_distance = (1 << window_bits) - 16; + + ringbuffer_size = 1 << window_bits; + ringbuffer_mask = ringbuffer_size - 1; + ringbuffer = new Uint8Array(ringbuffer_size + kRingBufferWriteAheadSlack + BrotliDictionary.maxDictionaryWordLength); + ringbuffer_end = ringbuffer_size; + + block_type_trees = []; + block_len_trees = []; + for (var x = 0; x < 3 * HUFFMAN_MAX_TABLE_SIZE; x++) { + block_type_trees[x] = new HuffmanCode(0, 0); + block_len_trees[x] = new HuffmanCode(0, 0); + } + + while (!input_end) { + var meta_block_remaining_len = 0; + var is_uncompressed; + var block_length = [ 1 << 28, 1 << 28, 1 << 28 ]; + var block_type = [ 0 ]; + var num_block_types = [ 1, 1, 1 ]; + var block_type_rb = [ 0, 1, 0, 1, 0, 1 ]; + var block_type_rb_index = [ 0 ]; + var distance_postfix_bits; + var num_direct_distance_codes; + var distance_postfix_mask; + var num_distance_codes; + var context_map = null; + var context_modes = null; + var num_literal_htrees; + var dist_context_map = null; + var num_dist_htrees; + var context_offset = 0; + var context_map_slice = null; + var literal_htree_index = 0; + var dist_context_offset = 0; + var dist_context_map_slice = null; + var dist_htree_index = 0; + var context_lookup_offset1 = 0; + var context_lookup_offset2 = 0; + var context_mode; + var htree_command; + + for (i = 0; i < 3; ++i) { + hgroup[i].codes = null; + hgroup[i].htrees = null; + } + + br.readMoreInput(); + + var _out = DecodeMetaBlockLength(br); + meta_block_remaining_len = _out.meta_block_length; + if (pos + meta_block_remaining_len > output.buffer.length) { + /* We need to grow the output buffer to fit the additional data. */ + var tmp = new Uint8Array( pos + meta_block_remaining_len ); + tmp.set( output.buffer ); + output.buffer = tmp; + } + input_end = _out.input_end; + is_uncompressed = _out.is_uncompressed; + + if (_out.is_metadata) { + JumpToByteBoundary(br); + + for (; meta_block_remaining_len > 0; --meta_block_remaining_len) { + br.readMoreInput(); + /* Read one byte and ignore it. */ + br.readBits(8); + } + + continue; + } + + if (meta_block_remaining_len === 0) { + continue; + } + + if (is_uncompressed) { + br.bit_pos_ = (br.bit_pos_ + 7) & ~7; + CopyUncompressedBlockToOutput(output, meta_block_remaining_len, pos, + ringbuffer, ringbuffer_mask, br); + pos += meta_block_remaining_len; + continue; + } + + for (i = 0; i < 3; ++i) { + num_block_types[i] = DecodeVarLenUint8(br) + 1; + if (num_block_types[i] >= 2) { + ReadHuffmanCode(num_block_types[i] + 2, block_type_trees, i * HUFFMAN_MAX_TABLE_SIZE, br); + ReadHuffmanCode(kNumBlockLengthCodes, block_len_trees, i * HUFFMAN_MAX_TABLE_SIZE, br); + block_length[i] = ReadBlockLength(block_len_trees, i * HUFFMAN_MAX_TABLE_SIZE, br); + block_type_rb_index[i] = 1; + } + } + + br.readMoreInput(); + + distance_postfix_bits = br.readBits(2); + num_direct_distance_codes = NUM_DISTANCE_SHORT_CODES + (br.readBits(4) << distance_postfix_bits); + distance_postfix_mask = (1 << distance_postfix_bits) - 1; + num_distance_codes = (num_direct_distance_codes + (48 << distance_postfix_bits)); + context_modes = new Uint8Array(num_block_types[0]); + + for (i = 0; i < num_block_types[0]; ++i) { + br.readMoreInput(); + context_modes[i] = (br.readBits(2) << 1); + } + + var _o1 = DecodeContextMap(num_block_types[0] << kLiteralContextBits, br); + num_literal_htrees = _o1.num_htrees; + context_map = _o1.context_map; + + var _o2 = DecodeContextMap(num_block_types[2] << kDistanceContextBits, br); + num_dist_htrees = _o2.num_htrees; + dist_context_map = _o2.context_map; + + hgroup[0] = new HuffmanTreeGroup(kNumLiteralCodes, num_literal_htrees); + hgroup[1] = new HuffmanTreeGroup(kNumInsertAndCopyCodes, num_block_types[1]); + hgroup[2] = new HuffmanTreeGroup(num_distance_codes, num_dist_htrees); + + for (i = 0; i < 3; ++i) { + hgroup[i].decode(br); + } + + context_map_slice = 0; + dist_context_map_slice = 0; + context_mode = context_modes[block_type[0]]; + context_lookup_offset1 = Context.lookupOffsets[context_mode]; + context_lookup_offset2 = Context.lookupOffsets[context_mode + 1]; + htree_command = hgroup[1].htrees[0]; + + while (meta_block_remaining_len > 0) { + var cmd_code; + var range_idx; + var insert_code; + var copy_code; + var insert_length; + var copy_length; + var distance_code; + var distance; + var context; + var j; + var copy_dst; + + br.readMoreInput(); + + if (block_length[1] === 0) { + DecodeBlockType(num_block_types[1], + block_type_trees, 1, block_type, block_type_rb, + block_type_rb_index, br); + block_length[1] = ReadBlockLength(block_len_trees, HUFFMAN_MAX_TABLE_SIZE, br); + htree_command = hgroup[1].htrees[block_type[1]]; + } + --block_length[1]; + cmd_code = ReadSymbol(hgroup[1].codes, htree_command, br); + range_idx = cmd_code >> 6; + if (range_idx >= 2) { + range_idx -= 2; + distance_code = -1; + } else { + distance_code = 0; + } + insert_code = Prefix.kInsertRangeLut[range_idx] + ((cmd_code >> 3) & 7); + copy_code = Prefix.kCopyRangeLut[range_idx] + (cmd_code & 7); + insert_length = Prefix.kInsertLengthPrefixCode[insert_code].offset + + br.readBits(Prefix.kInsertLengthPrefixCode[insert_code].nbits); + copy_length = Prefix.kCopyLengthPrefixCode[copy_code].offset + + br.readBits(Prefix.kCopyLengthPrefixCode[copy_code].nbits); + prev_byte1 = ringbuffer[pos-1 & ringbuffer_mask]; + prev_byte2 = ringbuffer[pos-2 & ringbuffer_mask]; + for (j = 0; j < insert_length; ++j) { + br.readMoreInput(); + + if (block_length[0] === 0) { + DecodeBlockType(num_block_types[0], + block_type_trees, 0, block_type, block_type_rb, + block_type_rb_index, br); + block_length[0] = ReadBlockLength(block_len_trees, 0, br); + context_offset = block_type[0] << kLiteralContextBits; + context_map_slice = context_offset; + context_mode = context_modes[block_type[0]]; + context_lookup_offset1 = Context.lookupOffsets[context_mode]; + context_lookup_offset2 = Context.lookupOffsets[context_mode + 1]; + } + context = (Context.lookup[context_lookup_offset1 + prev_byte1] | + Context.lookup[context_lookup_offset2 + prev_byte2]); + literal_htree_index = context_map[context_map_slice + context]; + --block_length[0]; + prev_byte2 = prev_byte1; + prev_byte1 = ReadSymbol(hgroup[0].codes, hgroup[0].htrees[literal_htree_index], br); + ringbuffer[pos & ringbuffer_mask] = prev_byte1; + if ((pos & ringbuffer_mask) === ringbuffer_mask) { + output.write(ringbuffer, ringbuffer_size); + } + ++pos; + } + meta_block_remaining_len -= insert_length; + if (meta_block_remaining_len <= 0) break; + + if (distance_code < 0) { + var context; + + br.readMoreInput(); + if (block_length[2] === 0) { + DecodeBlockType(num_block_types[2], + block_type_trees, 2, block_type, block_type_rb, + block_type_rb_index, br); + block_length[2] = ReadBlockLength(block_len_trees, 2 * HUFFMAN_MAX_TABLE_SIZE, br); + dist_context_offset = block_type[2] << kDistanceContextBits; + dist_context_map_slice = dist_context_offset; + } + --block_length[2]; + context = (copy_length > 4 ? 3 : copy_length - 2) & 0xff; + dist_htree_index = dist_context_map[dist_context_map_slice + context]; + distance_code = ReadSymbol(hgroup[2].codes, hgroup[2].htrees[dist_htree_index], br); + if (distance_code >= num_direct_distance_codes) { + var nbits; + var postfix; + var offset; + distance_code -= num_direct_distance_codes; + postfix = distance_code & distance_postfix_mask; + distance_code >>= distance_postfix_bits; + nbits = (distance_code >> 1) + 1; + offset = ((2 + (distance_code & 1)) << nbits) - 4; + distance_code = num_direct_distance_codes + + ((offset + br.readBits(nbits)) << + distance_postfix_bits) + postfix; + } + } + + /* Convert the distance code to the actual distance by possibly looking */ + /* up past distnaces from the ringbuffer. */ + distance = TranslateShortCodes(distance_code, dist_rb, dist_rb_idx); + if (distance < 0) { + throw new Error('[BrotliDecompress] invalid distance'); + } + + if (pos < max_backward_distance && + max_distance !== max_backward_distance) { + max_distance = pos; + } else { + max_distance = max_backward_distance; + } + + copy_dst = pos & ringbuffer_mask; + + if (distance > max_distance) { + if (copy_length >= BrotliDictionary.minDictionaryWordLength && + copy_length <= BrotliDictionary.maxDictionaryWordLength) { + var offset = BrotliDictionary.offsetsByLength[copy_length]; + var word_id = distance - max_distance - 1; + var shift = BrotliDictionary.sizeBitsByLength[copy_length]; + var mask = (1 << shift) - 1; + var word_idx = word_id & mask; + var transform_idx = word_id >> shift; + offset += word_idx * copy_length; + if (transform_idx < Transform.kNumTransforms) { + var len = Transform.transformDictionaryWord(ringbuffer, copy_dst, offset, copy_length, transform_idx); + copy_dst += len; + pos += len; + meta_block_remaining_len -= len; + if (copy_dst >= ringbuffer_end) { + output.write(ringbuffer, ringbuffer_size); + + for (var _x = 0; _x < (copy_dst - ringbuffer_end); _x++) + ringbuffer[_x] = ringbuffer[ringbuffer_end + _x]; + } + } else { + throw new Error("Invalid backward reference. pos: " + pos + " distance: " + distance + + " len: " + copy_length + " bytes left: " + meta_block_remaining_len); + } + } else { + throw new Error("Invalid backward reference. pos: " + pos + " distance: " + distance + + " len: " + copy_length + " bytes left: " + meta_block_remaining_len); + } + } else { + if (distance_code > 0) { + dist_rb[dist_rb_idx & 3] = distance; + ++dist_rb_idx; + } + + if (copy_length > meta_block_remaining_len) { + throw new Error("Invalid backward reference. pos: " + pos + " distance: " + distance + + " len: " + copy_length + " bytes left: " + meta_block_remaining_len); + } + + for (j = 0; j < copy_length; ++j) { + ringbuffer[pos & ringbuffer_mask] = ringbuffer[(pos - distance) & ringbuffer_mask]; + if ((pos & ringbuffer_mask) === ringbuffer_mask) { + output.write(ringbuffer, ringbuffer_size); + } + ++pos; + --meta_block_remaining_len; + } + } + + /* When we get here, we must have inserted at least one literal and */ + /* made a copy of at least length two, therefore accessing the last 2 */ + /* bytes is valid. */ + prev_byte1 = ringbuffer[(pos - 1) & ringbuffer_mask]; + prev_byte2 = ringbuffer[(pos - 2) & ringbuffer_mask]; + } + + /* Protect pos from overflow, wrap it around at every GB of input data */ + pos &= 0x3fffffff; + } + + output.write(ringbuffer, pos & ringbuffer_mask); +} + +exports.BrotliDecompress = BrotliDecompress; + +BrotliDictionary.init(); + +},{"./bit_reader":1,"./context":2,"./dictionary":6,"./huffman":7,"./prefix":9,"./streams":10,"./transform":11}],4:[function(require,module,exports){ +var base64 = require('base64-js'); +//var fs = require('fs'); + +/** + * The normal dictionary-data.js is quite large, which makes it + * unsuitable for browser usage. In order to make it smaller, + * we read dictionary.bin, which is a compressed version of + * the dictionary, and on initial load, Brotli decompresses + * it's own dictionary. 😜 + */ +exports.init = function() { + var BrotliDecompressBuffer = require('./decode').BrotliDecompressBuffer; + var compressed = base64.toByteArray(require('./dictionary.bin.js')); + return BrotliDecompressBuffer(compressed); +}; + +},{"./decode":3,"./dictionary.bin.js":5,"base64-js":8}],5:[function(require,module,exports){ +module.exports="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"; + +},{}],6:[function(require,module,exports){ +/* Copyright 2013 Google Inc. All Rights Reserved. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -1860,396 +1356,306 @@ Collection of static dictionary words. */ - var data = require( './dictionary-browser' ); - exports.init = function () { - exports.dictionary = data.init(); - }; - - exports.offsetsByLength = new Uint32Array( [ - 0, 0, 0, 0, 0, 4096, 9216, 21504, 35840, 44032, 53248, - 63488, 74752, 87040, 93696, 100864, 104704, 106752, - 108928, 113536, 115968, 118528, 119872, 121280, 122016, - ] ); - - exports.sizeBitsByLength = new Uint8Array( [ - 0, 0, 0, 0, 10, 10, 11, 11, 10, 10, 10, 10, 10, 9, 9, 8, - 7, 7, 8, 7, 7, 6, 6, 5, 5, - ] ); - - exports.minDictionaryWordLength = 4; - exports.maxDictionaryWordLength = 24; - }, - { './dictionary-browser': 4 }, - ], - 7: [ - function ( require, module, exports ) { - function HuffmanCode( bits, value ) { - this.bits = - bits; /* number of bits used for this symbol */ - this.value = value; /* symbol value or table offset */ - } - - exports.HuffmanCode = HuffmanCode; - - var MAX_LENGTH = 15; - - /* Returns reverse(reverse(key, len) + 1, len), where reverse(key, len) is the +var data = require('./dictionary-browser'); +exports.init = function() { + exports.dictionary = data.init(); +}; + +exports.offsetsByLength = new Uint32Array([ + 0, 0, 0, 0, 0, 4096, 9216, 21504, 35840, 44032, + 53248, 63488, 74752, 87040, 93696, 100864, 104704, 106752, 108928, 113536, + 115968, 118528, 119872, 121280, 122016, +]); + +exports.sizeBitsByLength = new Uint8Array([ + 0, 0, 0, 0, 10, 10, 11, 11, 10, 10, + 10, 10, 10, 9, 9, 8, 7, 7, 8, 7, + 7, 6, 6, 5, 5, +]); + +exports.minDictionaryWordLength = 4; +exports.maxDictionaryWordLength = 24; + +},{"./dictionary-browser":4}],7:[function(require,module,exports){ +function HuffmanCode(bits, value) { + this.bits = bits; /* number of bits used for this symbol */ + this.value = value; /* symbol value or table offset */ +} + +exports.HuffmanCode = HuffmanCode; + +var MAX_LENGTH = 15; + +/* Returns reverse(reverse(key, len) + 1, len), where reverse(key, len) is the bit-wise reversal of the len least significant bits of key. */ - function GetNextKey( key, len ) { - var step = 1 << ( len - 1 ); - while ( key & step ) { - step >>= 1; - } - return ( key & ( step - 1 ) ) + step; - } - - /* Stores code in table[0], table[step], table[2*step], ..., table[end] */ - /* Assumes that end is an integer multiple of step */ - function ReplicateValue( table, i, step, end, code ) { - do { - end -= step; - table[ i + end ] = new HuffmanCode( - code.bits, - code.value - ); - } while ( end > 0 ); - } - - /* Returns the table width of the next 2nd level table. count is the histogram +function GetNextKey(key, len) { + var step = 1 << (len - 1); + while (key & step) { + step >>= 1; + } + return (key & (step - 1)) + step; +} + +/* Stores code in table[0], table[step], table[2*step], ..., table[end] */ +/* Assumes that end is an integer multiple of step */ +function ReplicateValue(table, i, step, end, code) { + do { + end -= step; + table[i + end] = new HuffmanCode(code.bits, code.value); + } while (end > 0); +} + +/* Returns the table width of the next 2nd level table. count is the histogram of bit lengths for the remaining symbols, len is the code length of the next processed symbol */ - function NextTableBitSize( count, len, root_bits ) { - var left = 1 << ( len - root_bits ); - while ( len < MAX_LENGTH ) { - left -= count[ len ]; - if ( left <= 0 ) break; - ++len; - left <<= 1; - } - return len - root_bits; - } - - exports.BrotliBuildHuffmanTable = function ( - root_table, - table, - root_bits, - code_lengths, - code_lengths_size - ) { - var start_table = table; - var code; /* current table entry */ - var len; /* current code length */ - var symbol; /* symbol index in original or sorted table */ - var key; /* reversed prefix code */ - var step; /* step size to replicate values in current table */ - var low; /* low bits for current root entry */ - var mask; /* mask for low bits */ - var table_bits; /* key length of current table */ - var table_size; /* size of current table */ - var total_size; /* sum of root table size and 2nd level table sizes */ - var sorted; /* symbols sorted by code length */ - var count = new Int32Array( - MAX_LENGTH + 1 - ); /* number of codes of each length */ - var offset = new Int32Array( - MAX_LENGTH + 1 - ); /* offsets in sorted table for each length */ - - sorted = new Int32Array( code_lengths_size ); - - /* build histogram of code lengths */ - for ( - symbol = 0; - symbol < code_lengths_size; - symbol++ - ) { - count[ code_lengths[ symbol ] ]++; - } - - /* generate offsets into sorted symbol table by code length */ - offset[ 1 ] = 0; - for ( len = 1; len < MAX_LENGTH; len++ ) { - offset[ len + 1 ] = offset[ len ] + count[ len ]; - } - - /* sort symbols by length, by symbol order within each length */ - for ( - symbol = 0; - symbol < code_lengths_size; - symbol++ - ) { - if ( code_lengths[ symbol ] !== 0 ) { - sorted[ offset[ code_lengths[ symbol ] ]++ ] = - symbol; - } - } - - table_bits = root_bits; - table_size = 1 << table_bits; - total_size = table_size; - - /* special case code with only one value */ - if ( offset[ MAX_LENGTH ] === 1 ) { - for ( key = 0; key < total_size; ++key ) { - root_table[ table + key ] = new HuffmanCode( - 0, - sorted[ 0 ] & 0xffff - ); - } - - return total_size; - } - - /* fill in root table */ - key = 0; - symbol = 0; - for ( - len = 1, step = 2; - len <= root_bits; - ++len, step <<= 1 - ) { - for ( ; count[ len ] > 0; --count[ len ] ) { - code = new HuffmanCode( - len & 0xff, - sorted[ symbol++ ] & 0xffff - ); - ReplicateValue( - root_table, - table + key, - step, - table_size, - code - ); - key = GetNextKey( key, len ); - } - } - - /* fill in 2nd level tables and add pointers to root table */ - mask = total_size - 1; - low = -1; - for ( - len = root_bits + 1, step = 2; - len <= MAX_LENGTH; - ++len, step <<= 1 - ) { - for ( ; count[ len ] > 0; --count[ len ] ) { - if ( ( key & mask ) !== low ) { - table += table_size; - table_bits = NextTableBitSize( - count, - len, - root_bits - ); - table_size = 1 << table_bits; - total_size += table_size; - low = key & mask; - root_table[ start_table + low ] = - new HuffmanCode( - ( table_bits + root_bits ) & 0xff, - ( table - start_table - low ) & - 0xffff - ); - } - code = new HuffmanCode( - ( len - root_bits ) & 0xff, - sorted[ symbol++ ] & 0xffff - ); - ReplicateValue( - root_table, - table + ( key >> root_bits ), - step, - table_size, - code - ); - key = GetNextKey( key, len ); - } - } - - return total_size; - }; - }, - {}, - ], - 8: [ - function ( require, module, exports ) { - 'use strict'; - - exports.byteLength = byteLength; - exports.toByteArray = toByteArray; - exports.fromByteArray = fromByteArray; - - var lookup = []; - var revLookup = []; - var Arr = - typeof Uint8Array !== 'undefined' ? Uint8Array : Array; - - var code = - 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'; - for ( var i = 0, len = code.length; i < len; ++i ) { - lookup[ i ] = code[ i ]; - revLookup[ code.charCodeAt( i ) ] = i; - } - - // Support decoding URL-safe base64 strings, as Node.js does. - // See: https://en.wikipedia.org/wiki/Base64#URL_applications - revLookup[ '-'.charCodeAt( 0 ) ] = 62; - revLookup[ '_'.charCodeAt( 0 ) ] = 63; - - function getLens( b64 ) { - var len = b64.length; - - if ( len % 4 > 0 ) { - throw new Error( - 'Invalid string. Length must be a multiple of 4' - ); - } - - // Trim off extra bytes after placeholder bytes are found - // See: https://github.com/beatgammit/base64-js/issues/42 - var validLen = b64.indexOf( '=' ); - if ( validLen === -1 ) validLen = len; - - var placeHoldersLen = - validLen === len ? 0 : 4 - ( validLen % 4 ); - - return [ validLen, placeHoldersLen ]; - } - - // base64 is 4/3 + up to two characters of the original data - function byteLength( b64 ) { - var lens = getLens( b64 ); - var validLen = lens[ 0 ]; - var placeHoldersLen = lens[ 1 ]; - return ( - ( ( validLen + placeHoldersLen ) * 3 ) / 4 - - placeHoldersLen - ); - } - - function _byteLength( b64, validLen, placeHoldersLen ) { - return ( - ( ( validLen + placeHoldersLen ) * 3 ) / 4 - - placeHoldersLen - ); - } - - function toByteArray( b64 ) { - var tmp; - var lens = getLens( b64 ); - var validLen = lens[ 0 ]; - var placeHoldersLen = lens[ 1 ]; - - var arr = new Arr( - _byteLength( b64, validLen, placeHoldersLen ) - ); - - var curByte = 0; - - // if there are placeholders, only get up to the last complete 4 chars - var len = placeHoldersLen > 0 ? validLen - 4 : validLen; - - for ( var i = 0; i < len; i += 4 ) { - tmp = - ( revLookup[ b64.charCodeAt( i ) ] << 18 ) | - ( revLookup[ b64.charCodeAt( i + 1 ) ] << 12 ) | - ( revLookup[ b64.charCodeAt( i + 2 ) ] << 6 ) | - revLookup[ b64.charCodeAt( i + 3 ) ]; - arr[ curByte++ ] = ( tmp >> 16 ) & 0xff; - arr[ curByte++ ] = ( tmp >> 8 ) & 0xff; - arr[ curByte++ ] = tmp & 0xff; - } - - if ( placeHoldersLen === 2 ) { - tmp = - ( revLookup[ b64.charCodeAt( i ) ] << 2 ) | - ( revLookup[ b64.charCodeAt( i + 1 ) ] >> 4 ); - arr[ curByte++ ] = tmp & 0xff; - } - - if ( placeHoldersLen === 1 ) { - tmp = - ( revLookup[ b64.charCodeAt( i ) ] << 10 ) | - ( revLookup[ b64.charCodeAt( i + 1 ) ] << 4 ) | - ( revLookup[ b64.charCodeAt( i + 2 ) ] >> 2 ); - arr[ curByte++ ] = ( tmp >> 8 ) & 0xff; - arr[ curByte++ ] = tmp & 0xff; - } - - return arr; - } - - function tripletToBase64( num ) { - return ( - lookup[ ( num >> 18 ) & 0x3f ] + - lookup[ ( num >> 12 ) & 0x3f ] + - lookup[ ( num >> 6 ) & 0x3f ] + - lookup[ num & 0x3f ] - ); - } - - function encodeChunk( uint8, start, end ) { - var tmp; - var output = []; - for ( var i = start; i < end; i += 3 ) { - tmp = - ( ( uint8[ i ] << 16 ) & 0xff0000 ) + - ( ( uint8[ i + 1 ] << 8 ) & 0xff00 ) + - ( uint8[ i + 2 ] & 0xff ); - output.push( tripletToBase64( tmp ) ); - } - return output.join( '' ); - } - - function fromByteArray( uint8 ) { - var tmp; - var len = uint8.length; - var extraBytes = len % 3; // if we have 1 byte left, pad 2 bytes - var parts = []; - var maxChunkLength = 16383; // must be multiple of 3 - - // go through the array every three bytes, we'll deal with trailing stuff later - for ( - var i = 0, len2 = len - extraBytes; - i < len2; - i += maxChunkLength - ) { - parts.push( - encodeChunk( - uint8, - i, - i + maxChunkLength > len2 - ? len2 - : i + maxChunkLength - ) - ); - } - - // pad the end with zeros, but make sure to not forget the extra bytes - if ( extraBytes === 1 ) { - tmp = uint8[ len - 1 ]; - parts.push( - lookup[ tmp >> 2 ] + - lookup[ ( tmp << 4 ) & 0x3f ] + - '==' - ); - } else if ( extraBytes === 2 ) { - tmp = ( uint8[ len - 2 ] << 8 ) + uint8[ len - 1 ]; - parts.push( - lookup[ tmp >> 10 ] + - lookup[ ( tmp >> 4 ) & 0x3f ] + - lookup[ ( tmp << 2 ) & 0x3f ] + - '=' - ); - } - - return parts.join( '' ); - } - }, - {}, - ], - 9: [ - function ( require, module, exports ) { - /* Copyright 2013 Google Inc. All Rights Reserved. +function NextTableBitSize(count, len, root_bits) { + var left = 1 << (len - root_bits); + while (len < MAX_LENGTH) { + left -= count[len]; + if (left <= 0) break; + ++len; + left <<= 1; + } + return len - root_bits; +} + +exports.BrotliBuildHuffmanTable = function(root_table, table, root_bits, code_lengths, code_lengths_size) { + var start_table = table; + var code; /* current table entry */ + var len; /* current code length */ + var symbol; /* symbol index in original or sorted table */ + var key; /* reversed prefix code */ + var step; /* step size to replicate values in current table */ + var low; /* low bits for current root entry */ + var mask; /* mask for low bits */ + var table_bits; /* key length of current table */ + var table_size; /* size of current table */ + var total_size; /* sum of root table size and 2nd level table sizes */ + var sorted; /* symbols sorted by code length */ + var count = new Int32Array(MAX_LENGTH + 1); /* number of codes of each length */ + var offset = new Int32Array(MAX_LENGTH + 1); /* offsets in sorted table for each length */ + + sorted = new Int32Array(code_lengths_size); + + /* build histogram of code lengths */ + for (symbol = 0; symbol < code_lengths_size; symbol++) { + count[code_lengths[symbol]]++; + } + + /* generate offsets into sorted symbol table by code length */ + offset[1] = 0; + for (len = 1; len < MAX_LENGTH; len++) { + offset[len + 1] = offset[len] + count[len]; + } + + /* sort symbols by length, by symbol order within each length */ + for (symbol = 0; symbol < code_lengths_size; symbol++) { + if (code_lengths[symbol] !== 0) { + sorted[offset[code_lengths[symbol]]++] = symbol; + } + } + + table_bits = root_bits; + table_size = 1 << table_bits; + total_size = table_size; + + /* special case code with only one value */ + if (offset[MAX_LENGTH] === 1) { + for (key = 0; key < total_size; ++key) { + root_table[table + key] = new HuffmanCode(0, sorted[0] & 0xffff); + } + + return total_size; + } + + /* fill in root table */ + key = 0; + symbol = 0; + for (len = 1, step = 2; len <= root_bits; ++len, step <<= 1) { + for (; count[len] > 0; --count[len]) { + code = new HuffmanCode(len & 0xff, sorted[symbol++] & 0xffff); + ReplicateValue(root_table, table + key, step, table_size, code); + key = GetNextKey(key, len); + } + } + + /* fill in 2nd level tables and add pointers to root table */ + mask = total_size - 1; + low = -1; + for (len = root_bits + 1, step = 2; len <= MAX_LENGTH; ++len, step <<= 1) { + for (; count[len] > 0; --count[len]) { + if ((key & mask) !== low) { + table += table_size; + table_bits = NextTableBitSize(count, len, root_bits); + table_size = 1 << table_bits; + total_size += table_size; + low = key & mask; + root_table[start_table + low] = new HuffmanCode((table_bits + root_bits) & 0xff, ((table - start_table) - low) & 0xffff); + } + code = new HuffmanCode((len - root_bits) & 0xff, sorted[symbol++] & 0xffff); + ReplicateValue(root_table, table + (key >> root_bits), step, table_size, code); + key = GetNextKey(key, len); + } + } + + return total_size; +} + +},{}],8:[function(require,module,exports){ +'use strict' + +exports.byteLength = byteLength +exports.toByteArray = toByteArray +exports.fromByteArray = fromByteArray + +var lookup = [] +var revLookup = [] +var Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array + +var code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/' +for (var i = 0, len = code.length; i < len; ++i) { + lookup[i] = code[i] + revLookup[code.charCodeAt(i)] = i +} + +// Support decoding URL-safe base64 strings, as Node.js does. +// See: https://en.wikipedia.org/wiki/Base64#URL_applications +revLookup['-'.charCodeAt(0)] = 62 +revLookup['_'.charCodeAt(0)] = 63 + +function getLens (b64) { + var len = b64.length + + if (len % 4 > 0) { + throw new Error('Invalid string. Length must be a multiple of 4') + } + + // Trim off extra bytes after placeholder bytes are found + // See: https://github.com/beatgammit/base64-js/issues/42 + var validLen = b64.indexOf('=') + if (validLen === -1) validLen = len + + var placeHoldersLen = validLen === len + ? 0 + : 4 - (validLen % 4) + + return [validLen, placeHoldersLen] +} + +// base64 is 4/3 + up to two characters of the original data +function byteLength (b64) { + var lens = getLens(b64) + var validLen = lens[0] + var placeHoldersLen = lens[1] + return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen +} + +function _byteLength (b64, validLen, placeHoldersLen) { + return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen +} + +function toByteArray (b64) { + var tmp + var lens = getLens(b64) + var validLen = lens[0] + var placeHoldersLen = lens[1] + + var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen)) + + var curByte = 0 + + // if there are placeholders, only get up to the last complete 4 chars + var len = placeHoldersLen > 0 + ? validLen - 4 + : validLen + + for (var i = 0; i < len; i += 4) { + tmp = + (revLookup[b64.charCodeAt(i)] << 18) | + (revLookup[b64.charCodeAt(i + 1)] << 12) | + (revLookup[b64.charCodeAt(i + 2)] << 6) | + revLookup[b64.charCodeAt(i + 3)] + arr[curByte++] = (tmp >> 16) & 0xFF + arr[curByte++] = (tmp >> 8) & 0xFF + arr[curByte++] = tmp & 0xFF + } + + if (placeHoldersLen === 2) { + tmp = + (revLookup[b64.charCodeAt(i)] << 2) | + (revLookup[b64.charCodeAt(i + 1)] >> 4) + arr[curByte++] = tmp & 0xFF + } + + if (placeHoldersLen === 1) { + tmp = + (revLookup[b64.charCodeAt(i)] << 10) | + (revLookup[b64.charCodeAt(i + 1)] << 4) | + (revLookup[b64.charCodeAt(i + 2)] >> 2) + arr[curByte++] = (tmp >> 8) & 0xFF + arr[curByte++] = tmp & 0xFF + } + + return arr +} + +function tripletToBase64 (num) { + return lookup[num >> 18 & 0x3F] + + lookup[num >> 12 & 0x3F] + + lookup[num >> 6 & 0x3F] + + lookup[num & 0x3F] +} + +function encodeChunk (uint8, start, end) { + var tmp + var output = [] + for (var i = start; i < end; i += 3) { + tmp = + ((uint8[i] << 16) & 0xFF0000) + + ((uint8[i + 1] << 8) & 0xFF00) + + (uint8[i + 2] & 0xFF) + output.push(tripletToBase64(tmp)) + } + return output.join('') +} + +function fromByteArray (uint8) { + var tmp + var len = uint8.length + var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes + var parts = [] + var maxChunkLength = 16383 // must be multiple of 3 + + // go through the array every three bytes, we'll deal with trailing stuff later + for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) { + parts.push(encodeChunk( + uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength) + )) + } + + // pad the end with zeros, but make sure to not forget the extra bytes + if (extraBytes === 1) { + tmp = uint8[len - 1] + parts.push( + lookup[tmp >> 2] + + lookup[(tmp << 4) & 0x3F] + + '==' + ) + } else if (extraBytes === 2) { + tmp = (uint8[len - 2] << 8) + uint8[len - 1] + parts.push( + lookup[tmp >> 10] + + lookup[(tmp >> 4) & 0x3F] + + lookup[(tmp << 2) & 0x3F] + + '=' + ) + } + + return parts.join('') +} + +},{}],9:[function(require,module,exports){ +/* Copyright 2013 Google Inc. All Rights Reserved. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -2267,146 +1673,87 @@ decoding of the block lengths, literal insertion lengths and copy lengths. */ - /* Represents the range of values belonging to a prefix code: */ - /* [offset, offset + 2^nbits) */ - function PrefixCodeRange( offset, nbits ) { - this.offset = offset; - this.nbits = nbits; - } - - exports.kBlockLengthPrefixCode = [ - new PrefixCodeRange( 1, 2 ), - new PrefixCodeRange( 5, 2 ), - new PrefixCodeRange( 9, 2 ), - new PrefixCodeRange( 13, 2 ), - new PrefixCodeRange( 17, 3 ), - new PrefixCodeRange( 25, 3 ), - new PrefixCodeRange( 33, 3 ), - new PrefixCodeRange( 41, 3 ), - new PrefixCodeRange( 49, 4 ), - new PrefixCodeRange( 65, 4 ), - new PrefixCodeRange( 81, 4 ), - new PrefixCodeRange( 97, 4 ), - new PrefixCodeRange( 113, 5 ), - new PrefixCodeRange( 145, 5 ), - new PrefixCodeRange( 177, 5 ), - new PrefixCodeRange( 209, 5 ), - new PrefixCodeRange( 241, 6 ), - new PrefixCodeRange( 305, 6 ), - new PrefixCodeRange( 369, 7 ), - new PrefixCodeRange( 497, 8 ), - new PrefixCodeRange( 753, 9 ), - new PrefixCodeRange( 1265, 10 ), - new PrefixCodeRange( 2289, 11 ), - new PrefixCodeRange( 4337, 12 ), - new PrefixCodeRange( 8433, 13 ), - new PrefixCodeRange( 16625, 24 ), - ]; - - exports.kInsertLengthPrefixCode = [ - new PrefixCodeRange( 0, 0 ), - new PrefixCodeRange( 1, 0 ), - new PrefixCodeRange( 2, 0 ), - new PrefixCodeRange( 3, 0 ), - new PrefixCodeRange( 4, 0 ), - new PrefixCodeRange( 5, 0 ), - new PrefixCodeRange( 6, 1 ), - new PrefixCodeRange( 8, 1 ), - new PrefixCodeRange( 10, 2 ), - new PrefixCodeRange( 14, 2 ), - new PrefixCodeRange( 18, 3 ), - new PrefixCodeRange( 26, 3 ), - new PrefixCodeRange( 34, 4 ), - new PrefixCodeRange( 50, 4 ), - new PrefixCodeRange( 66, 5 ), - new PrefixCodeRange( 98, 5 ), - new PrefixCodeRange( 130, 6 ), - new PrefixCodeRange( 194, 7 ), - new PrefixCodeRange( 322, 8 ), - new PrefixCodeRange( 578, 9 ), - new PrefixCodeRange( 1090, 10 ), - new PrefixCodeRange( 2114, 12 ), - new PrefixCodeRange( 6210, 14 ), - new PrefixCodeRange( 22594, 24 ), - ]; - - exports.kCopyLengthPrefixCode = [ - new PrefixCodeRange( 2, 0 ), - new PrefixCodeRange( 3, 0 ), - new PrefixCodeRange( 4, 0 ), - new PrefixCodeRange( 5, 0 ), - new PrefixCodeRange( 6, 0 ), - new PrefixCodeRange( 7, 0 ), - new PrefixCodeRange( 8, 0 ), - new PrefixCodeRange( 9, 0 ), - new PrefixCodeRange( 10, 1 ), - new PrefixCodeRange( 12, 1 ), - new PrefixCodeRange( 14, 2 ), - new PrefixCodeRange( 18, 2 ), - new PrefixCodeRange( 22, 3 ), - new PrefixCodeRange( 30, 3 ), - new PrefixCodeRange( 38, 4 ), - new PrefixCodeRange( 54, 4 ), - new PrefixCodeRange( 70, 5 ), - new PrefixCodeRange( 102, 5 ), - new PrefixCodeRange( 134, 6 ), - new PrefixCodeRange( 198, 7 ), - new PrefixCodeRange( 326, 8 ), - new PrefixCodeRange( 582, 9 ), - new PrefixCodeRange( 1094, 10 ), - new PrefixCodeRange( 2118, 24 ), - ]; - - exports.kInsertRangeLut = [ 0, 0, 8, 8, 0, 16, 8, 16, 16 ]; - - exports.kCopyRangeLut = [ 0, 8, 0, 8, 16, 0, 16, 8, 16 ]; - }, - {}, - ], - 10: [ - function ( require, module, exports ) { - function BrotliInput( buffer ) { - this.buffer = buffer; - this.pos = 0; - } - - BrotliInput.prototype.read = function ( buf, i, count ) { - if ( this.pos + count > this.buffer.length ) { - count = this.buffer.length - this.pos; - } - - for ( var p = 0; p < count; p++ ) - buf[ i + p ] = this.buffer[ this.pos + p ]; - - this.pos += count; - return count; - }; - - exports.BrotliInput = BrotliInput; - - function BrotliOutput( buf ) { - this.buffer = buf; - this.pos = 0; - } - - BrotliOutput.prototype.write = function ( buf, count ) { - if ( this.pos + count > this.buffer.length ) - throw new Error( - 'Output buffer is not large enough' - ); - - this.buffer.set( buf.subarray( 0, count ), this.pos ); - this.pos += count; - return count; - }; - - exports.BrotliOutput = BrotliOutput; - }, - {}, - ], - 11: [ - function ( require, module, exports ) { - /* Copyright 2013 Google Inc. All Rights Reserved. +/* Represents the range of values belonging to a prefix code: */ +/* [offset, offset + 2^nbits) */ +function PrefixCodeRange(offset, nbits) { + this.offset = offset; + this.nbits = nbits; +} + +exports.kBlockLengthPrefixCode = [ + new PrefixCodeRange(1, 2), new PrefixCodeRange(5, 2), new PrefixCodeRange(9, 2), new PrefixCodeRange(13, 2), + new PrefixCodeRange(17, 3), new PrefixCodeRange(25, 3), new PrefixCodeRange(33, 3), new PrefixCodeRange(41, 3), + new PrefixCodeRange(49, 4), new PrefixCodeRange(65, 4), new PrefixCodeRange(81, 4), new PrefixCodeRange(97, 4), + new PrefixCodeRange(113, 5), new PrefixCodeRange(145, 5), new PrefixCodeRange(177, 5), new PrefixCodeRange(209, 5), + new PrefixCodeRange(241, 6), new PrefixCodeRange(305, 6), new PrefixCodeRange(369, 7), new PrefixCodeRange(497, 8), + new PrefixCodeRange(753, 9), new PrefixCodeRange(1265, 10), new PrefixCodeRange(2289, 11), new PrefixCodeRange(4337, 12), + new PrefixCodeRange(8433, 13), new PrefixCodeRange(16625, 24) +]; + +exports.kInsertLengthPrefixCode = [ + new PrefixCodeRange(0, 0), new PrefixCodeRange(1, 0), new PrefixCodeRange(2, 0), new PrefixCodeRange(3, 0), + new PrefixCodeRange(4, 0), new PrefixCodeRange(5, 0), new PrefixCodeRange(6, 1), new PrefixCodeRange(8, 1), + new PrefixCodeRange(10, 2), new PrefixCodeRange(14, 2), new PrefixCodeRange(18, 3), new PrefixCodeRange(26, 3), + new PrefixCodeRange(34, 4), new PrefixCodeRange(50, 4), new PrefixCodeRange(66, 5), new PrefixCodeRange(98, 5), + new PrefixCodeRange(130, 6), new PrefixCodeRange(194, 7), new PrefixCodeRange(322, 8), new PrefixCodeRange(578, 9), + new PrefixCodeRange(1090, 10), new PrefixCodeRange(2114, 12), new PrefixCodeRange(6210, 14), new PrefixCodeRange(22594, 24), +]; + +exports.kCopyLengthPrefixCode = [ + new PrefixCodeRange(2, 0), new PrefixCodeRange(3, 0), new PrefixCodeRange(4, 0), new PrefixCodeRange(5, 0), + new PrefixCodeRange(6, 0), new PrefixCodeRange(7, 0), new PrefixCodeRange(8, 0), new PrefixCodeRange(9, 0), + new PrefixCodeRange(10, 1), new PrefixCodeRange(12, 1), new PrefixCodeRange(14, 2), new PrefixCodeRange(18, 2), + new PrefixCodeRange(22, 3), new PrefixCodeRange(30, 3), new PrefixCodeRange(38, 4), new PrefixCodeRange(54, 4), + new PrefixCodeRange(70, 5), new PrefixCodeRange(102, 5), new PrefixCodeRange(134, 6), new PrefixCodeRange(198, 7), + new PrefixCodeRange(326, 8), new PrefixCodeRange(582, 9), new PrefixCodeRange(1094, 10), new PrefixCodeRange(2118, 24), +]; + +exports.kInsertRangeLut = [ + 0, 0, 8, 8, 0, 16, 8, 16, 16, +]; + +exports.kCopyRangeLut = [ + 0, 8, 0, 8, 16, 0, 16, 8, 16, +]; + +},{}],10:[function(require,module,exports){ +function BrotliInput(buffer) { + this.buffer = buffer; + this.pos = 0; +} + +BrotliInput.prototype.read = function(buf, i, count) { + if (this.pos + count > this.buffer.length) { + count = this.buffer.length - this.pos; + } + + for (var p = 0; p < count; p++) + buf[i + p] = this.buffer[this.pos + p]; + + this.pos += count; + return count; +} + +exports.BrotliInput = BrotliInput; + +function BrotliOutput(buf) { + this.buffer = buf; + this.pos = 0; +} + +BrotliOutput.prototype.write = function(buf, count) { + if (this.pos + count > this.buffer.length) + throw new Error('Output buffer is not large enough'); + + this.buffer.set(buf.subarray(0, count), this.pos); + this.pos += count; + return count; +}; + +exports.BrotliOutput = BrotliOutput; + +},{}],11:[function(require,module,exports){ +/* Copyright 2013 Google Inc. All Rights Reserved. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -2423,257 +1770,240 @@ Transformations on dictionary words. */ - var BrotliDictionary = require( './dictionary' ); - - var kIdentity = 0; - var kOmitLast1 = 1; - var kOmitLast2 = 2; - var kOmitLast3 = 3; - var kOmitLast4 = 4; - var kOmitLast5 = 5; - var kOmitLast6 = 6; - var kOmitLast7 = 7; - var kOmitLast8 = 8; - var kOmitLast9 = 9; - var kUppercaseFirst = 10; - var kUppercaseAll = 11; - var kOmitFirst1 = 12; - var kOmitFirst2 = 13; - var kOmitFirst3 = 14; - var kOmitFirst4 = 15; - var kOmitFirst5 = 16; - var kOmitFirst6 = 17; - var kOmitFirst7 = 18; - var kOmitFirst8 = 19; - var kOmitFirst9 = 20; - - function Transform( prefix, transform, suffix ) { - this.prefix = new Uint8Array( prefix.length ); - this.transform = transform; - this.suffix = new Uint8Array( suffix.length ); - - for ( var i = 0; i < prefix.length; i++ ) - this.prefix[ i ] = prefix.charCodeAt( i ); - - for ( var i = 0; i < suffix.length; i++ ) - this.suffix[ i ] = suffix.charCodeAt( i ); - } - - var kTransforms = [ - new Transform( '', kIdentity, '' ), - new Transform( '', kIdentity, ' ' ), - new Transform( ' ', kIdentity, ' ' ), - new Transform( '', kOmitFirst1, '' ), - new Transform( '', kUppercaseFirst, ' ' ), - new Transform( '', kIdentity, ' the ' ), - new Transform( ' ', kIdentity, '' ), - new Transform( 's ', kIdentity, ' ' ), - new Transform( '', kIdentity, ' of ' ), - new Transform( '', kUppercaseFirst, '' ), - new Transform( '', kIdentity, ' and ' ), - new Transform( '', kOmitFirst2, '' ), - new Transform( '', kOmitLast1, '' ), - new Transform( ', ', kIdentity, ' ' ), - new Transform( '', kIdentity, ', ' ), - new Transform( ' ', kUppercaseFirst, ' ' ), - new Transform( '', kIdentity, ' in ' ), - new Transform( '', kIdentity, ' to ' ), - new Transform( 'e ', kIdentity, ' ' ), - new Transform( '', kIdentity, '"' ), - new Transform( '', kIdentity, '.' ), - new Transform( '', kIdentity, '">' ), - new Transform( '', kIdentity, '\n' ), - new Transform( '', kOmitLast3, '' ), - new Transform( '', kIdentity, ']' ), - new Transform( '', kIdentity, ' for ' ), - new Transform( '', kOmitFirst3, '' ), - new Transform( '', kOmitLast2, '' ), - new Transform( '', kIdentity, ' a ' ), - new Transform( '', kIdentity, ' that ' ), - new Transform( ' ', kUppercaseFirst, '' ), - new Transform( '', kIdentity, '. ' ), - new Transform( '.', kIdentity, '' ), - new Transform( ' ', kIdentity, ', ' ), - new Transform( '', kOmitFirst4, '' ), - new Transform( '', kIdentity, ' with ' ), - new Transform( '', kIdentity, "'" ), - new Transform( '', kIdentity, ' from ' ), - new Transform( '', kIdentity, ' by ' ), - new Transform( '', kOmitFirst5, '' ), - new Transform( '', kOmitFirst6, '' ), - new Transform( ' the ', kIdentity, '' ), - new Transform( '', kOmitLast4, '' ), - new Transform( '', kIdentity, '. The ' ), - new Transform( '', kUppercaseAll, '' ), - new Transform( '', kIdentity, ' on ' ), - new Transform( '', kIdentity, ' as ' ), - new Transform( '', kIdentity, ' is ' ), - new Transform( '', kOmitLast7, '' ), - new Transform( '', kOmitLast1, 'ing ' ), - new Transform( '', kIdentity, '\n\t' ), - new Transform( '', kIdentity, ':' ), - new Transform( ' ', kIdentity, '. ' ), - new Transform( '', kIdentity, 'ed ' ), - new Transform( '', kOmitFirst9, '' ), - new Transform( '', kOmitFirst7, '' ), - new Transform( '', kOmitLast6, '' ), - new Transform( '', kIdentity, '(' ), - new Transform( '', kUppercaseFirst, ', ' ), - new Transform( '', kOmitLast8, '' ), - new Transform( '', kIdentity, ' at ' ), - new Transform( '', kIdentity, 'ly ' ), - new Transform( ' the ', kIdentity, ' of ' ), - new Transform( '', kOmitLast5, '' ), - new Transform( '', kOmitLast9, '' ), - new Transform( ' ', kUppercaseFirst, ', ' ), - new Transform( '', kUppercaseFirst, '"' ), - new Transform( '.', kIdentity, '(' ), - new Transform( '', kUppercaseAll, ' ' ), - new Transform( '', kUppercaseFirst, '">' ), - new Transform( '', kIdentity, '="' ), - new Transform( ' ', kIdentity, '.' ), - new Transform( '.com/', kIdentity, '' ), - new Transform( ' the ', kIdentity, ' of the ' ), - new Transform( '', kUppercaseFirst, "'" ), - new Transform( '', kIdentity, '. This ' ), - new Transform( '', kIdentity, ',' ), - new Transform( '.', kIdentity, ' ' ), - new Transform( '', kUppercaseFirst, '(' ), - new Transform( '', kUppercaseFirst, '.' ), - new Transform( '', kIdentity, ' not ' ), - new Transform( ' ', kIdentity, '="' ), - new Transform( '', kIdentity, 'er ' ), - new Transform( ' ', kUppercaseAll, ' ' ), - new Transform( '', kIdentity, 'al ' ), - new Transform( ' ', kUppercaseAll, '' ), - new Transform( '', kIdentity, "='" ), - new Transform( '', kUppercaseAll, '"' ), - new Transform( '', kUppercaseFirst, '. ' ), - new Transform( ' ', kIdentity, '(' ), - new Transform( '', kIdentity, 'ful ' ), - new Transform( ' ', kUppercaseFirst, '. ' ), - new Transform( '', kIdentity, 'ive ' ), - new Transform( '', kIdentity, 'less ' ), - new Transform( '', kUppercaseAll, "'" ), - new Transform( '', kIdentity, 'est ' ), - new Transform( ' ', kUppercaseFirst, '.' ), - new Transform( '', kUppercaseAll, '">' ), - new Transform( ' ', kIdentity, "='" ), - new Transform( '', kUppercaseFirst, ',' ), - new Transform( '', kIdentity, 'ize ' ), - new Transform( '', kUppercaseAll, '.' ), - new Transform( '\xc2\xa0', kIdentity, '' ), - new Transform( ' ', kIdentity, ',' ), - new Transform( '', kUppercaseFirst, '="' ), - new Transform( '', kUppercaseAll, '="' ), - new Transform( '', kIdentity, 'ous ' ), - new Transform( '', kUppercaseAll, ', ' ), - new Transform( '', kUppercaseFirst, "='" ), - new Transform( ' ', kUppercaseFirst, ',' ), - new Transform( ' ', kUppercaseAll, '="' ), - new Transform( ' ', kUppercaseAll, ', ' ), - new Transform( '', kUppercaseAll, ',' ), - new Transform( '', kUppercaseAll, '(' ), - new Transform( '', kUppercaseAll, '. ' ), - new Transform( ' ', kUppercaseAll, '.' ), - new Transform( '', kUppercaseAll, "='" ), - new Transform( ' ', kUppercaseAll, '. ' ), - new Transform( ' ', kUppercaseFirst, '="' ), - new Transform( ' ', kUppercaseAll, "='" ), - new Transform( ' ', kUppercaseFirst, "='" ), - ]; - - exports.kTransforms = kTransforms; - exports.kNumTransforms = kTransforms.length; - - function ToUpperCase( p, i ) { - if ( p[ i ] < 0xc0 ) { - if ( p[ i ] >= 97 && p[ i ] <= 122 ) { - p[ i ] ^= 32; - } - return 1; - } - - /* An overly simplified uppercasing model for utf-8. */ - if ( p[ i ] < 0xe0 ) { - p[ i + 1 ] ^= 32; - return 2; - } - - /* An arbitrary transform for three byte characters. */ - p[ i + 2 ] ^= 5; - return 3; - } - - exports.transformDictionaryWord = function ( - dst, - idx, - word, - len, - transform - ) { - var prefix = kTransforms[ transform ].prefix; - var suffix = kTransforms[ transform ].suffix; - var t = kTransforms[ transform ].transform; - var skip = - t < kOmitFirst1 ? 0 : t - ( kOmitFirst1 - 1 ); - var i = 0; - var start_idx = idx; - var uppercase; - - if ( skip > len ) { - skip = len; - } - - var prefix_pos = 0; - while ( prefix_pos < prefix.length ) { - dst[ idx++ ] = prefix[ prefix_pos++ ]; - } - - word += skip; - len -= skip; - - if ( t <= kOmitLast9 ) { - len -= t; - } - - for ( i = 0; i < len; i++ ) { - dst[ idx++ ] = - BrotliDictionary.dictionary[ word + i ]; - } - - uppercase = idx - len; - - if ( t === kUppercaseFirst ) { - ToUpperCase( dst, uppercase ); - } else if ( t === kUppercaseAll ) { - while ( len > 0 ) { - var step = ToUpperCase( dst, uppercase ); - uppercase += step; - len -= step; - } - } - - var suffix_pos = 0; - while ( suffix_pos < suffix.length ) { - dst[ idx++ ] = suffix[ suffix_pos++ ]; - } - - return idx - start_idx; - }; - }, - { './dictionary': 6 }, - ], - 12: [ - function ( require, module, exports ) { - module.exports = - require( './dec/decode' ).BrotliDecompressBuffer; - }, - { './dec/decode': 3 }, - ], - }, - {}, - [ 12 ] - )( 12 ); -} ); +var BrotliDictionary = require('./dictionary'); + +var kIdentity = 0; +var kOmitLast1 = 1; +var kOmitLast2 = 2; +var kOmitLast3 = 3; +var kOmitLast4 = 4; +var kOmitLast5 = 5; +var kOmitLast6 = 6; +var kOmitLast7 = 7; +var kOmitLast8 = 8; +var kOmitLast9 = 9; +var kUppercaseFirst = 10; +var kUppercaseAll = 11; +var kOmitFirst1 = 12; +var kOmitFirst2 = 13; +var kOmitFirst3 = 14; +var kOmitFirst4 = 15; +var kOmitFirst5 = 16; +var kOmitFirst6 = 17; +var kOmitFirst7 = 18; +var kOmitFirst8 = 19; +var kOmitFirst9 = 20; + +function Transform(prefix, transform, suffix) { + this.prefix = new Uint8Array(prefix.length); + this.transform = transform; + this.suffix = new Uint8Array(suffix.length); + + for (var i = 0; i < prefix.length; i++) + this.prefix[i] = prefix.charCodeAt(i); + + for (var i = 0; i < suffix.length; i++) + this.suffix[i] = suffix.charCodeAt(i); +} + +var kTransforms = [ + new Transform( "", kIdentity, "" ), + new Transform( "", kIdentity, " " ), + new Transform( " ", kIdentity, " " ), + new Transform( "", kOmitFirst1, "" ), + new Transform( "", kUppercaseFirst, " " ), + new Transform( "", kIdentity, " the " ), + new Transform( " ", kIdentity, "" ), + new Transform( "s ", kIdentity, " " ), + new Transform( "", kIdentity, " of " ), + new Transform( "", kUppercaseFirst, "" ), + new Transform( "", kIdentity, " and " ), + new Transform( "", kOmitFirst2, "" ), + new Transform( "", kOmitLast1, "" ), + new Transform( ", ", kIdentity, " " ), + new Transform( "", kIdentity, ", " ), + new Transform( " ", kUppercaseFirst, " " ), + new Transform( "", kIdentity, " in " ), + new Transform( "", kIdentity, " to " ), + new Transform( "e ", kIdentity, " " ), + new Transform( "", kIdentity, "\"" ), + new Transform( "", kIdentity, "." ), + new Transform( "", kIdentity, "\">" ), + new Transform( "", kIdentity, "\n" ), + new Transform( "", kOmitLast3, "" ), + new Transform( "", kIdentity, "]" ), + new Transform( "", kIdentity, " for " ), + new Transform( "", kOmitFirst3, "" ), + new Transform( "", kOmitLast2, "" ), + new Transform( "", kIdentity, " a " ), + new Transform( "", kIdentity, " that " ), + new Transform( " ", kUppercaseFirst, "" ), + new Transform( "", kIdentity, ". " ), + new Transform( ".", kIdentity, "" ), + new Transform( " ", kIdentity, ", " ), + new Transform( "", kOmitFirst4, "" ), + new Transform( "", kIdentity, " with " ), + new Transform( "", kIdentity, "'" ), + new Transform( "", kIdentity, " from " ), + new Transform( "", kIdentity, " by " ), + new Transform( "", kOmitFirst5, "" ), + new Transform( "", kOmitFirst6, "" ), + new Transform( " the ", kIdentity, "" ), + new Transform( "", kOmitLast4, "" ), + new Transform( "", kIdentity, ". The " ), + new Transform( "", kUppercaseAll, "" ), + new Transform( "", kIdentity, " on " ), + new Transform( "", kIdentity, " as " ), + new Transform( "", kIdentity, " is " ), + new Transform( "", kOmitLast7, "" ), + new Transform( "", kOmitLast1, "ing " ), + new Transform( "", kIdentity, "\n\t" ), + new Transform( "", kIdentity, ":" ), + new Transform( " ", kIdentity, ". " ), + new Transform( "", kIdentity, "ed " ), + new Transform( "", kOmitFirst9, "" ), + new Transform( "", kOmitFirst7, "" ), + new Transform( "", kOmitLast6, "" ), + new Transform( "", kIdentity, "(" ), + new Transform( "", kUppercaseFirst, ", " ), + new Transform( "", kOmitLast8, "" ), + new Transform( "", kIdentity, " at " ), + new Transform( "", kIdentity, "ly " ), + new Transform( " the ", kIdentity, " of " ), + new Transform( "", kOmitLast5, "" ), + new Transform( "", kOmitLast9, "" ), + new Transform( " ", kUppercaseFirst, ", " ), + new Transform( "", kUppercaseFirst, "\"" ), + new Transform( ".", kIdentity, "(" ), + new Transform( "", kUppercaseAll, " " ), + new Transform( "", kUppercaseFirst, "\">" ), + new Transform( "", kIdentity, "=\"" ), + new Transform( " ", kIdentity, "." ), + new Transform( ".com/", kIdentity, "" ), + new Transform( " the ", kIdentity, " of the " ), + new Transform( "", kUppercaseFirst, "'" ), + new Transform( "", kIdentity, ". This " ), + new Transform( "", kIdentity, "," ), + new Transform( ".", kIdentity, " " ), + new Transform( "", kUppercaseFirst, "(" ), + new Transform( "", kUppercaseFirst, "." ), + new Transform( "", kIdentity, " not " ), + new Transform( " ", kIdentity, "=\"" ), + new Transform( "", kIdentity, "er " ), + new Transform( " ", kUppercaseAll, " " ), + new Transform( "", kIdentity, "al " ), + new Transform( " ", kUppercaseAll, "" ), + new Transform( "", kIdentity, "='" ), + new Transform( "", kUppercaseAll, "\"" ), + new Transform( "", kUppercaseFirst, ". " ), + new Transform( " ", kIdentity, "(" ), + new Transform( "", kIdentity, "ful " ), + new Transform( " ", kUppercaseFirst, ". " ), + new Transform( "", kIdentity, "ive " ), + new Transform( "", kIdentity, "less " ), + new Transform( "", kUppercaseAll, "'" ), + new Transform( "", kIdentity, "est " ), + new Transform( " ", kUppercaseFirst, "." ), + new Transform( "", kUppercaseAll, "\">" ), + new Transform( " ", kIdentity, "='" ), + new Transform( "", kUppercaseFirst, "," ), + new Transform( "", kIdentity, "ize " ), + new Transform( "", kUppercaseAll, "." ), + new Transform( "\xc2\xa0", kIdentity, "" ), + new Transform( " ", kIdentity, "," ), + new Transform( "", kUppercaseFirst, "=\"" ), + new Transform( "", kUppercaseAll, "=\"" ), + new Transform( "", kIdentity, "ous " ), + new Transform( "", kUppercaseAll, ", " ), + new Transform( "", kUppercaseFirst, "='" ), + new Transform( " ", kUppercaseFirst, "," ), + new Transform( " ", kUppercaseAll, "=\"" ), + new Transform( " ", kUppercaseAll, ", " ), + new Transform( "", kUppercaseAll, "," ), + new Transform( "", kUppercaseAll, "(" ), + new Transform( "", kUppercaseAll, ". " ), + new Transform( " ", kUppercaseAll, "." ), + new Transform( "", kUppercaseAll, "='" ), + new Transform( " ", kUppercaseAll, ". " ), + new Transform( " ", kUppercaseFirst, "=\"" ), + new Transform( " ", kUppercaseAll, "='" ), + new Transform( " ", kUppercaseFirst, "='" ) +]; + +exports.kTransforms = kTransforms; +exports.kNumTransforms = kTransforms.length; + +function ToUpperCase(p, i) { + if (p[i] < 0xc0) { + if (p[i] >= 97 && p[i] <= 122) { + p[i] ^= 32; + } + return 1; + } + + /* An overly simplified uppercasing model for utf-8. */ + if (p[i] < 0xe0) { + p[i + 1] ^= 32; + return 2; + } + + /* An arbitrary transform for three byte characters. */ + p[i + 2] ^= 5; + return 3; +} + +exports.transformDictionaryWord = function(dst, idx, word, len, transform) { + var prefix = kTransforms[transform].prefix; + var suffix = kTransforms[transform].suffix; + var t = kTransforms[transform].transform; + var skip = t < kOmitFirst1 ? 0 : t - (kOmitFirst1 - 1); + var i = 0; + var start_idx = idx; + var uppercase; + + if (skip > len) { + skip = len; + } + + var prefix_pos = 0; + while (prefix_pos < prefix.length) { + dst[idx++] = prefix[prefix_pos++]; + } + + word += skip; + len -= skip; + + if (t <= kOmitLast9) { + len -= t; + } + + for (i = 0; i < len; i++) { + dst[idx++] = BrotliDictionary.dictionary[word + i]; + } + + uppercase = idx - len; + + if (t === kUppercaseFirst) { + ToUpperCase(dst, uppercase); + } else if (t === kUppercaseAll) { + while (len > 0) { + var step = ToUpperCase(dst, uppercase); + uppercase += step; + len -= step; + } + } + + var suffix_pos = 0; + while (suffix_pos < suffix.length) { + dst[idx++] = suffix[suffix_pos++]; + } + + return idx - start_idx; +} + +},{"./dictionary":6}],12:[function(require,module,exports){ +module.exports = require('./dec/decode').BrotliDecompressBuffer; + +},{"./dec/decode":3}]},{},[12])(12) +}); /* eslint-enable */ From 47cc9794a3f42de926b2fed7fc53eaa6004dd88a Mon Sep 17 00:00:00 2001 From: Sarah Norris Date: Thu, 7 Sep 2023 13:27:47 +0100 Subject: [PATCH 068/108] Fix linter errors --- .../edit-site/src/components/global-styles/font-families.js | 2 +- .../components/global-styles/font-library-modal/font-variant.js | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/font-families.js b/packages/edit-site/src/components/global-styles/font-families.js index d58fb6d956a3c..7d8afa6b3b22c 100644 --- a/packages/edit-site/src/components/global-styles/font-families.js +++ b/packages/edit-site/src/components/global-styles/font-families.js @@ -9,7 +9,7 @@ import { Button, Tooltip, } from '@wordpress/components'; -import { plus, typography } from '@wordpress/icons'; +import { typography } from '@wordpress/icons'; import { useContext } from '@wordpress/element'; /** diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/font-variant.js b/packages/edit-site/src/components/global-styles/font-library-modal/font-variant.js index 83b995177bf1a..cd6dcbdd5a3d4 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/font-variant.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/font-variant.js @@ -1,7 +1,6 @@ /** * WordPress dependencies */ -import { __ } from '@wordpress/i18n'; import { __experimentalText as Text, __experimentalVStack as VStack, From 3f86b1004fcd92b1e32db937c4843ca4aa6b2463 Mon Sep 17 00:00:00 2001 From: Sarah Norris Date: Thu, 7 Sep 2023 13:49:18 +0100 Subject: [PATCH 069/108] Undo e2e test linter fixes Not related to this PR --- test/e2e/specs/editor/blocks/classic.spec.js | 2 +- test/e2e/specs/editor/blocks/links.spec.js | 2 +- .../blocks/navigation-list-view.spec.js | 4 ++-- .../e2e/specs/editor/blocks/paragraph.spec.js | 10 +++++----- .../various/autocomplete-and-mentions.spec.js | 4 ++-- .../editor/various/block-deletion.spec.js | 2 +- .../editor/various/block-locking.spec.js | 8 +++++--- .../editor/various/inserting-blocks.spec.js | 8 ++++---- .../specs/editor/various/list-view.spec.js | 6 +++--- .../e2e/specs/editor/various/popovers.spec.js | 4 ++-- test/e2e/specs/editor/various/preview.spec.js | 2 +- .../various/shortcut-focus-toolbar.spec.js | 20 +++++++++++++------ test/e2e/specs/editor/various/undo.spec.js | 2 +- .../interactivity/directive-init.spec.ts | 4 ++-- .../interactivity/directive-slots.spec.ts | 2 +- test/e2e/specs/site-editor/list-view.spec.js | 4 ++-- test/e2e/specs/site-editor/style-book.spec.js | 12 +++++------ .../specs/site-editor/template-part.spec.js | 4 ++-- .../specs/site-editor/template-revert.spec.js | 2 +- .../specs/widgets/customizing-widgets.spec.js | 20 +++++++++---------- 20 files changed, 66 insertions(+), 56 deletions(-) diff --git a/test/e2e/specs/editor/blocks/classic.spec.js b/test/e2e/specs/editor/blocks/classic.spec.js index 30f6051fab29b..4403706444a7e 100644 --- a/test/e2e/specs/editor/blocks/classic.spec.js +++ b/test/e2e/specs/editor/blocks/classic.spec.js @@ -76,7 +76,7 @@ test.describe( 'Classic', () => { const createGallery = page.getByRole( 'button', { name: 'Create a new gallery', } ); - await expect( createGallery ).toBeEnabled(); + await expect( createGallery ).not.toBeDisabled(); await createGallery.click(); await page.click( 'role=button[name="Insert gallery"i]' ); diff --git a/test/e2e/specs/editor/blocks/links.spec.js b/test/e2e/specs/editor/blocks/links.spec.js index 55d126314d1fc..83efef0bce2f0 100644 --- a/test/e2e/specs/editor/blocks/links.spec.js +++ b/test/e2e/specs/editor/blocks/links.spec.js @@ -231,7 +231,7 @@ test.describe( 'Links', () => { // Check that the Advanced settings are still closed. // This verifies that the editor preference was persisted. - await expect( page.getByLabel( 'Open in new tab' ) ).toBeHidden(); + await expect( page.getByLabel( 'Open in new tab' ) ).not.toBeVisible(); } ); test( 'can toggle link settings and save', async ( { diff --git a/test/e2e/specs/editor/blocks/navigation-list-view.spec.js b/test/e2e/specs/editor/blocks/navigation-list-view.spec.js index 2ba43fe78151e..77039281faded 100644 --- a/test/e2e/specs/editor/blocks/navigation-list-view.spec.js +++ b/test/e2e/specs/editor/blocks/navigation-list-view.spec.js @@ -274,7 +274,7 @@ test.describe( 'Navigation block - List view editing', () => { hasText: 'Block 2 of 2, Level 1', // proxy for filtering by description. } ) .getByText( 'Top Level Item 2' ) - ).toBeHidden(); + ).not.toBeVisible(); } ); test( `can edit menu items`, async ( { page, editor, requestUtils } ) => { @@ -525,7 +525,7 @@ test.describe( 'Navigation block - List view editing', () => { // Check that despite being the last inserted block, the Link UI is not displayed // in this scenario because it was not **just** inserted into the List View (i.e. // we have unmounted the list view and then remounted it). - await expect( linkControl.getSearchInput() ).toBeHidden(); + await expect( linkControl.getSearchInput() ).not.toBeVisible(); } ); } ); diff --git a/test/e2e/specs/editor/blocks/paragraph.spec.js b/test/e2e/specs/editor/blocks/paragraph.spec.js index 7eb47cdc7e344..1c35f6ddc8958 100644 --- a/test/e2e/specs/editor/blocks/paragraph.spec.js +++ b/test/e2e/specs/editor/blocks/paragraph.spec.js @@ -87,7 +87,7 @@ test.describe( 'Paragraph', () => { ); await expect( draggingUtils.dropZone ).toBeVisible(); - await expect( draggingUtils.insertionIndicator ).toBeHidden(); + await expect( draggingUtils.insertionIndicator ).not.toBeVisible(); await drop( editor.canvas.locator( '[data-type="core/paragraph"]' ) @@ -129,7 +129,7 @@ test.describe( 'Paragraph', () => { await draggingUtils.dragOver( boundingBox.x, boundingBox.y ); await expect( draggingUtils.dropZone ).toBeVisible(); - await expect( draggingUtils.insertionIndicator ).toBeHidden(); + await expect( draggingUtils.insertionIndicator ).not.toBeVisible(); await page.mouse.up(); @@ -157,7 +157,7 @@ test.describe( 'Paragraph', () => { await draggingUtils.dragOver( boundingBox.x, boundingBox.y ); await expect( draggingUtils.dropZone ).toBeVisible(); - await expect( draggingUtils.insertionIndicator ).toBeHidden(); + await expect( draggingUtils.insertionIndicator ).not.toBeVisible(); await page.mouse.up(); @@ -264,7 +264,7 @@ test.describe( 'Paragraph', () => { headingBox.x, headingBox.y + headingBox.height - 1 ); - await expect( draggingUtils.dropZone ).toBeHidden(); + await expect( draggingUtils.dropZone ).not.toBeVisible(); await expect( draggingUtils.insertionIndicator ).toBeVisible(); @@ -310,7 +310,7 @@ test.describe( 'Paragraph', () => { headingBox.x, headingBox.y + 1 ); - await expect( draggingUtils.dropZone ).toBeHidden(); + await expect( draggingUtils.dropZone ).not.toBeVisible(); await expect( draggingUtils.insertionIndicator ).toBeVisible(); diff --git a/test/e2e/specs/editor/various/autocomplete-and-mentions.spec.js b/test/e2e/specs/editor/various/autocomplete-and-mentions.spec.js index 3cfc838fcadf2..53b2940fe6c75 100644 --- a/test/e2e/specs/editor/various/autocomplete-and-mentions.spec.js +++ b/test/e2e/specs/editor/various/autocomplete-and-mentions.spec.js @@ -452,7 +452,7 @@ test.describe( 'Autocomplete (@firefox, @webkit)', () => { await page.keyboard.press( 'ArrowLeft' ); await expect( page.locator( 'role=option', { hasText: 'Frodo Baggins' } ) - ).toBeHidden(); + ).not.toBeVisible(); } ); test( 'should hide UI when selection changes (by mouse)', async ( { @@ -473,7 +473,7 @@ test.describe( 'Autocomplete (@firefox, @webkit)', () => { await editor.canvas.click( '[data-type="core/paragraph"] strong' ); await expect( page.locator( 'role=option', { hasText: 'Frodo Baggins' } ) - ).toBeHidden(); + ).not.toBeVisible(); } ); test( 'should allow speaking number of initial results', async ( { diff --git a/test/e2e/specs/editor/various/block-deletion.spec.js b/test/e2e/specs/editor/various/block-deletion.spec.js index 084cd008cdc44..9fcacae05b63f 100644 --- a/test/e2e/specs/editor/various/block-deletion.spec.js +++ b/test/e2e/specs/editor/various/block-deletion.spec.js @@ -377,7 +377,7 @@ test.describe( 'Block deletion', () => { await expect.poll( editor.getBlocks ).toHaveLength( 0 ); await expect( editor.canvas.getByRole( 'document', { name: 'Empty block' } ) - ).toBeHidden(); + ).not.toBeVisible(); // Ensure that the block appender button is visible. await expect( diff --git a/test/e2e/specs/editor/various/block-locking.spec.js b/test/e2e/specs/editor/various/block-locking.spec.js index 481c476ac065b..c374c4ee2b0b5 100644 --- a/test/e2e/specs/editor/various/block-locking.spec.js +++ b/test/e2e/specs/editor/various/block-locking.spec.js @@ -19,7 +19,7 @@ test.describe( 'Block Locking', () => { await expect( page.locator( 'role=menuitem[name="Delete"]' ) - ).toBeHidden(); + ).not.toBeVisible(); } ); test( 'can disable movement', async ( { editor, page } ) => { @@ -38,12 +38,14 @@ test.describe( 'Block Locking', () => { await editor.clickBlockToolbarButton( 'Options' ); // Drag handle is hidden. - await expect( page.locator( 'role=button[name="Drag"]' ) ).toBeHidden(); + await expect( + page.locator( 'role=button[name="Drag"]' ) + ).not.toBeVisible(); // Movers are hidden. No need to check for both. await expect( page.locator( 'role=button[name="Move up"]' ) - ).toBeHidden(); + ).not.toBeVisible(); } ); test( 'can lock everything', async ( { editor, page } ) => { diff --git a/test/e2e/specs/editor/various/inserting-blocks.spec.js b/test/e2e/specs/editor/various/inserting-blocks.spec.js index cfef686ef5c87..822257e67deff 100644 --- a/test/e2e/specs/editor/various/inserting-blocks.spec.js +++ b/test/e2e/specs/editor/various/inserting-blocks.spec.js @@ -155,8 +155,8 @@ test.describe( 'Inserting blocks (@firefox, @webkit)', () => { await page.keyboard.press( 'Escape' ); - await expect( insertingBlocksUtils.indicator ).toBeHidden(); - await expect( insertingBlocksUtils.draggableChip ).toBeHidden(); + await expect( insertingBlocksUtils.indicator ).not.toBeVisible(); + await expect( insertingBlocksUtils.draggableChip ).not.toBeVisible(); await page.mouse.up(); @@ -294,8 +294,8 @@ test.describe( 'Inserting blocks (@firefox, @webkit)', () => { await page.keyboard.press( 'Escape' ); - await expect( insertingBlocksUtils.indicator ).toBeHidden(); - await expect( insertingBlocksUtils.draggableChip ).toBeHidden(); + await expect( insertingBlocksUtils.indicator ).not.toBeVisible(); + await expect( insertingBlocksUtils.draggableChip ).not.toBeVisible(); await page.mouse.up(); diff --git a/test/e2e/specs/editor/various/list-view.spec.js b/test/e2e/specs/editor/various/list-view.spec.js index 3cfcebb064d7f..130bd9b7952fd 100644 --- a/test/e2e/specs/editor/various/list-view.spec.js +++ b/test/e2e/specs/editor/various/list-view.spec.js @@ -331,7 +331,7 @@ test.describe( 'List View', () => { ).toBeFocused(); // List View should be closed. - await expect( listView ).toBeHidden(); + await expect( listView ).not.toBeVisible(); // Open List View. await pageUtils.pressKeys( 'access+o' ); @@ -352,7 +352,7 @@ test.describe( 'List View', () => { // Close List View and ensure it's closed. await pageUtils.pressKeys( 'access+o' ); - await expect( listView ).toBeHidden(); + await expect( listView ).not.toBeVisible(); // Open List View. await pageUtils.pressKeys( 'access+o' ); @@ -377,7 +377,7 @@ test.describe( 'List View', () => { // Close List View and ensure it's closed. await pageUtils.pressKeys( 'access+o' ); - await expect( listView ).toBeHidden(); + await expect( listView ).not.toBeVisible(); } ); test( 'should place focus on the currently selected block in the canvas', async ( { diff --git a/test/e2e/specs/editor/various/popovers.spec.js b/test/e2e/specs/editor/various/popovers.spec.js index 149e188db46f2..3191db464e223 100644 --- a/test/e2e/specs/editor/various/popovers.spec.js +++ b/test/e2e/specs/editor/various/popovers.spec.js @@ -14,14 +14,14 @@ test.describe( 'popovers', () => { const moreMenuToggleButton = page.locator( 'role=button[name="Options"i]' ); - await expect( moreMenu ).toBeHidden(); + await expect( moreMenu ).not.toBeVisible(); // Toggle opened. await moreMenuToggleButton.click(); await expect( moreMenu ).toBeVisible(); // Toggle closed. await moreMenuToggleButton.click(); - await expect( moreMenu ).toBeHidden(); + await expect( moreMenu ).not.toBeVisible(); } ); } ); } ); diff --git a/test/e2e/specs/editor/various/preview.spec.js b/test/e2e/specs/editor/various/preview.spec.js index a3fa4544f39f8..cc97d5741c4c1 100644 --- a/test/e2e/specs/editor/various/preview.spec.js +++ b/test/e2e/specs/editor/various/preview.spec.js @@ -297,7 +297,7 @@ test.describe( 'Preview with private custom post type', () => { await expect( page.locator( 'role=menuitem[name="Preview in new tab"i]' ) - ).toBeHidden(); + ).not.toBeVisible(); } ); } ); diff --git a/test/e2e/specs/editor/various/shortcut-focus-toolbar.spec.js b/test/e2e/specs/editor/various/shortcut-focus-toolbar.spec.js index 0223821613f55..9361da403c6d9 100644 --- a/test/e2e/specs/editor/various/shortcut-focus-toolbar.spec.js +++ b/test/e2e/specs/editor/various/shortcut-focus-toolbar.spec.js @@ -35,7 +35,7 @@ test.describe( 'Focus toolbar shortcut (alt + F10)', () => { ); await toolbarUtils.moveToToolbarShortcut(); await expect( toolbarUtils.blockToolbarParagraphButton ).toBeFocused(); - await expect( toolbarUtils.documentToolbarTooltip ).toBeHidden(); + await expect( toolbarUtils.documentToolbarTooltip ).not.toBeVisible(); // Test: Focus block toolbar from block content when block toolbar is visible await editor.insertBlock( { name: 'core/paragraph' } ); @@ -47,7 +47,7 @@ test.describe( 'Focus toolbar shortcut (alt + F10)', () => { await editor.showBlockToolbar(); await toolbarUtils.moveToToolbarShortcut(); await expect( toolbarUtils.blockToolbarParagraphButton ).toBeFocused(); - await expect( toolbarUtils.documentToolbarTooltip ).toBeHidden(); + await expect( toolbarUtils.documentToolbarTooltip ).not.toBeVisible(); } ); test( 'Focuses correct toolbar in default view options in select mode', async ( { @@ -169,7 +169,9 @@ test.describe( 'Focus toolbar shortcut (alt + F10)', () => { await expect( toolbarUtils.blockToolbarParagraphButton ).toBeFocused(); - await expect( toolbarUtils.documentToolbarTooltip ).toBeHidden(); + await expect( + toolbarUtils.documentToolbarTooltip + ).not.toBeVisible(); // Test: Focus the block toolbar from paragraph block with content await editor.insertBlock( { name: 'core/paragraph' } ); @@ -180,7 +182,9 @@ test.describe( 'Focus toolbar shortcut (alt + F10)', () => { await expect( toolbarUtils.blockToolbarParagraphButton ).toBeFocused(); - await expect( toolbarUtils.documentToolbarTooltip ).toBeHidden(); + await expect( + toolbarUtils.documentToolbarTooltip + ).not.toBeVisible(); } ); test( 'Focuses the correct toolbar in select mode', async ( { @@ -200,7 +204,9 @@ test.describe( 'Focus toolbar shortcut (alt + F10)', () => { await expect( toolbarUtils.blockToolbarParagraphButton ).toBeFocused(); - await expect( toolbarUtils.documentToolbarTooltip ).toBeHidden(); + await expect( + toolbarUtils.documentToolbarTooltip + ).not.toBeVisible(); // Test: Focus the block toolbar from paragraph in select mode await editor.insertBlock( { name: 'core/paragraph' } ); @@ -212,7 +218,9 @@ test.describe( 'Focus toolbar shortcut (alt + F10)', () => { await expect( toolbarUtils.blockToolbarParagraphButton ).toBeFocused(); - await expect( toolbarUtils.documentToolbarTooltip ).toBeHidden(); + await expect( + toolbarUtils.documentToolbarTooltip + ).not.toBeVisible(); } ); } ); } ); diff --git a/test/e2e/specs/editor/various/undo.spec.js b/test/e2e/specs/editor/various/undo.spec.js index dfdbef60ffaa9..17d365a340680 100644 --- a/test/e2e/specs/editor/various/undo.spec.js +++ b/test/e2e/specs/editor/various/undo.spec.js @@ -453,7 +453,7 @@ test.describe( 'undo', () => { await expect.poll( editor.getEditedPostContent ).toBe( '' ); await expect( page.locator( 'role=button[name="Redo"]' ) - ).toBeEnabled(); + ).not.toBeDisabled(); await page.click( 'role=button[name="Redo"]' ); await expect.poll( editor.getBlocks ).toMatchObject( [ diff --git a/test/e2e/specs/interactivity/directive-init.spec.ts b/test/e2e/specs/interactivity/directive-init.spec.ts index e18341a48fa3f..aa81ab1ea61db 100644 --- a/test/e2e/specs/interactivity/directive-init.spec.ts +++ b/test/e2e/specs/interactivity/directive-init.spec.ts @@ -53,7 +53,7 @@ test.describe( 'data-wp-init', () => { await toggle.click(); - await expect( show ).toBeHidden(); + await expect( show ).not.toBeVisible(); await expect( isMounted ).toHaveText( 'false' ); } ); @@ -65,7 +65,7 @@ test.describe( 'data-wp-init', () => { await toggle.click(); - await expect( show ).toBeHidden(); + await expect( show ).not.toBeVisible(); await expect( isMounted ).toHaveText( 'false' ); await toggle.click(); diff --git a/test/e2e/specs/interactivity/directive-slots.spec.ts b/test/e2e/specs/interactivity/directive-slots.spec.ts index 195af52fdb1bd..0a3c47ffa6c05 100644 --- a/test/e2e/specs/interactivity/directive-slots.spec.ts +++ b/test/e2e/specs/interactivity/directive-slots.spec.ts @@ -109,7 +109,7 @@ test.describe( 'data-wp-slot', () => { await expect( fillContainer ).toBeEmpty(); await expect( slot5 ).toBeHidden(); - await expect( slots.getByTestId( 'fill' ) ).toBeVisible(); + await expect( slots.getByTestId( 'fill' ) ).not.toBeVisible(); await expect( slots.locator( 'css= > *' ) ).toHaveText( [ '[1]', '[2]', diff --git a/test/e2e/specs/site-editor/list-view.spec.js b/test/e2e/specs/site-editor/list-view.spec.js index c25193ba5e60f..94bac47d0ecf5 100644 --- a/test/e2e/specs/site-editor/list-view.spec.js +++ b/test/e2e/specs/site-editor/list-view.spec.js @@ -105,7 +105,7 @@ test.describe( 'Site Editor List View', () => { // Since focus is now inside the list view, the shortcut should close // the sidebar. await pageUtils.pressKeys( 'access+o' ); - await expect( listView ).toBeHidden(); + await expect( listView ).not.toBeVisible(); // Focus should now be on the Open Navigation button since that is // where we opened the list view sidebar. This is not a perfect @@ -130,7 +130,7 @@ test.describe( 'Site Editor List View', () => { } ) ).toBeFocused(); await pageUtils.pressKeys( 'access+o' ); - await expect( listView ).toBeHidden(); + await expect( listView ).not.toBeVisible(); await expect( openNavigationButton ).toBeFocused(); } ); } ); diff --git a/test/e2e/specs/site-editor/style-book.spec.js b/test/e2e/specs/site-editor/style-book.spec.js index b713b9a12e851..eeaa1270f3ff9 100644 --- a/test/e2e/specs/site-editor/style-book.spec.js +++ b/test/e2e/specs/site-editor/style-book.spec.js @@ -30,16 +30,16 @@ test.describe( 'Style Book', () => { test( 'should disable toolbar buttons when open', async ( { page } ) => { await expect( page.locator( 'role=button[name="Toggle block inserter"i]' ) - ).toBeHidden(); + ).not.toBeVisible(); await expect( page.locator( 'role=button[name="Tools"i]' ) - ).toBeHidden(); + ).not.toBeVisible(); await expect( page.locator( 'role=button[name="Undo"i]' ) - ).toBeHidden(); + ).not.toBeVisible(); await expect( page.locator( 'role=button[name="Redo"i]' ) - ).toBeHidden(); + ).not.toBeVisible(); await expect( page.locator( 'role=button[name="View"i]' ) ).toBeDisabled(); @@ -139,7 +139,7 @@ test.describe( 'Style Book', () => { await expect( styleBookRegion, 'should close when close button is clicked' - ).toBeHidden(); + ).not.toBeVisible(); // Open Style Book again. await page.getByRole( 'button', { name: 'Style Book' } ).click(); @@ -153,7 +153,7 @@ test.describe( 'Style Book', () => { await expect( styleBookRegion, 'should close when Escape key is pressed' - ).toBeHidden(); + ).not.toBeVisible(); } ); } ); diff --git a/test/e2e/specs/site-editor/template-part.spec.js b/test/e2e/specs/site-editor/template-part.spec.js index 5096c7e2d3a16..cd81a616b1fee 100644 --- a/test/e2e/specs/site-editor/template-part.spec.js +++ b/test/e2e/specs/site-editor/template-part.spec.js @@ -215,7 +215,7 @@ test.describe( 'Template Part', () => { // There should be a paragraph but no header template part. await expect( paragraph ).toBeVisible(); - await expect( templatePartWithParagraph ).toBeHidden(); + await expect( templatePartWithParagraph ).not.toBeVisible(); } ); test( 'shows changes in a template when a template part it contains is modified', async ( { @@ -355,7 +355,7 @@ test.describe( 'Template Part', () => { // Verify that the widget area import button is not there. await expect( page.getByRole( 'combobox', { name: 'Import widget area' } ) - ).toBeHidden(); + ).not.toBeVisible(); } ); test( 'Keeps focus in place on undo in template parts', async ( { diff --git a/test/e2e/specs/site-editor/template-revert.spec.js b/test/e2e/specs/site-editor/template-revert.spec.js index ffa02903ce0bb..c8edc034901a2 100644 --- a/test/e2e/specs/site-editor/template-revert.spec.js +++ b/test/e2e/specs/site-editor/template-revert.spec.js @@ -55,7 +55,7 @@ test.describe( 'Template Revert', () => { page.locator( 'role=region[name="Editor settings"i] >> role=button[name="Actions"i]' ) - ).toBeHidden(); + ).not.toBeVisible(); } ); test( 'should show the original content after revert', async ( { diff --git a/test/e2e/specs/widgets/customizing-widgets.spec.js b/test/e2e/specs/widgets/customizing-widgets.spec.js index f3e42c482c72b..07f701ff97a24 100644 --- a/test/e2e/specs/widgets/customizing-widgets.spec.js +++ b/test/e2e/specs/widgets/customizing-widgets.spec.js @@ -147,7 +147,7 @@ test.describe( 'Widgets Customizer', () => { // Go back to the widgets editor. await backButton.click(); await expect( widgetsFooter1Heading ).toBeVisible(); - await expect( inspectorHeading ).toBeHidden(); + await expect( inspectorHeading ).not.toBeVisible(); await editor.clickBlockToolbarButton( 'Options' ); await showMoreSettingsButton.click(); @@ -161,7 +161,7 @@ test.describe( 'Widgets Customizer', () => { // Go back to the widgets editor. await expect( widgetsFooter1Heading ).toBeVisible(); - await expect( inspectorHeading ).toBeHidden(); + await expect( inspectorHeading ).not.toBeVisible(); } ); test( 'should handle the inserter outer section', async ( { @@ -207,7 +207,7 @@ test.describe( 'Widgets Customizer', () => { await expect( publishSettings ).toBeVisible(); // Expect the inserter outer section to be closed. - await expect( inserterHeading ).toBeHidden(); + await expect( inserterHeading ).not.toBeVisible(); // Focus the block and start typing to hide the block toolbar. // Shouldn't be needed if we automatically hide the toolbar on blur. @@ -220,13 +220,13 @@ test.describe( 'Widgets Customizer', () => { await expect( inserterHeading ).toBeVisible(); // Expect the Publish Settings section to be closed. - await expect( publishSettings ).toBeHidden(); + await expect( publishSettings ).not.toBeVisible(); // Back to the widget areas panel. await page.click( 'role=button[name=/Back$/] >> visible=true' ); // Expect the inserter outer section to be closed. - await expect( inserterHeading ).toBeHidden(); + await expect( inserterHeading ).not.toBeVisible(); } ); test( 'should move focus to the block', async ( { @@ -315,7 +315,7 @@ test.describe( 'Widgets Customizer', () => { await page.click( 'role=heading[name="Customizing ▸ Widgets Footer #1"i][level=3]' ); - await expect( blockToolbar ).toBeHidden(); + await expect( blockToolbar ).not.toBeVisible(); await paragraphBlock.focus(); await editor.showBlockToolbar(); @@ -324,7 +324,7 @@ test.describe( 'Widgets Customizer', () => { // Expect clicking on the preview iframe should clear the selection. { await page.click( '#customize-preview' ); - await expect( blockToolbar ).toBeHidden(); + await expect( blockToolbar ).not.toBeVisible(); await paragraphBlock.focus(); await editor.showBlockToolbar(); @@ -339,7 +339,7 @@ test.describe( 'Widgets Customizer', () => { const { x, y, width, height } = await editorContainer.boundingBox(); // Simulate Clicking on the empty space at the end of the editor. await page.mouse.click( x + width / 2, y + height + 10 ); - await expect( blockToolbar ).toBeHidden(); + await expect( blockToolbar ).not.toBeVisible(); } } ); @@ -462,7 +462,7 @@ test.describe( 'Widgets Customizer', () => { // Expect pressing the Escape key to close the dropdown, // but not close the editor. await page.keyboard.press( 'Escape' ); - await expect( optionsMenu ).toBeHidden(); + await expect( optionsMenu ).not.toBeVisible(); await expect( paragraphBlock ).toBeVisible(); await paragraphBlock.focus(); @@ -530,7 +530,7 @@ test.describe( 'Widgets Customizer', () => { // integrate the G sidebar inside the customizer. await expect( page.locator( 'role=heading[name=/Block Settings/][level=3]' ) - ).toBeHidden(); + ).not.toBeVisible(); } ); test( 'should stay in block settings after making a change in that area', async ( { From 7225cc99ea311550e7e9ab0726bbccfdb4e291aa Mon Sep 17 00:00:00 2001 From: Sarah Norris Date: Thu, 7 Sep 2023 13:51:27 +0100 Subject: [PATCH 070/108] Remove more e2e test changes --- test/e2e/specs/interactivity/directive-slots.spec.ts | 4 ++-- test/e2e/specs/widgets/customizing-widgets.spec.js | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/test/e2e/specs/interactivity/directive-slots.spec.ts b/test/e2e/specs/interactivity/directive-slots.spec.ts index 0a3c47ffa6c05..d93e50f767215 100644 --- a/test/e2e/specs/interactivity/directive-slots.spec.ts +++ b/test/e2e/specs/interactivity/directive-slots.spec.ts @@ -108,8 +108,8 @@ test.describe( 'data-wp-slot', () => { await page.getByTestId( 'slot-5-button' ).click(); await expect( fillContainer ).toBeEmpty(); - await expect( slot5 ).toBeHidden(); - await expect( slots.getByTestId( 'fill' ) ).not.toBeVisible(); + await expect( slot5 ).not.toBeVisible(); + await expect( slots.getByTestId( 'fill' ) ).toBeVisible(); await expect( slots.locator( 'css= > *' ) ).toHaveText( [ '[1]', '[2]', diff --git a/test/e2e/specs/widgets/customizing-widgets.spec.js b/test/e2e/specs/widgets/customizing-widgets.spec.js index 07f701ff97a24..8b2a585dc4e66 100644 --- a/test/e2e/specs/widgets/customizing-widgets.spec.js +++ b/test/e2e/specs/widgets/customizing-widgets.spec.js @@ -220,7 +220,7 @@ test.describe( 'Widgets Customizer', () => { await expect( inserterHeading ).toBeVisible(); // Expect the Publish Settings section to be closed. - await expect( publishSettings ).not.toBeVisible(); + await expect( publishSettings ).toBeHidden(); // Back to the widget areas panel. await page.click( 'role=button[name=/Back$/] >> visible=true' ); From 5f8e9559b63da27cfab3201706ef2beb09b9c40b Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Thu, 7 Sep 2023 11:53:05 -0300 Subject: [PATCH 071/108] fixing error persisting activation changes --- .../src/components/global-styles/font-library-modal/context.js | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/context.js b/packages/edit-site/src/components/global-styles/font-library-modal/context.js index e177af769f02a..28a11e6692c6b 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/context.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/context.js @@ -346,6 +346,7 @@ function FontLibraryProvider( { children } ) { } } setFontFamilies( { + ...fontFamilies, [ font.source ]: newCustomFonts, } ); }; From 8745fd41e599dfe0a85f329c64a257631c492831 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Thu, 7 Sep 2023 13:15:42 -0300 Subject: [PATCH 072/108] improving font previews --- .../global-styles/font-family-item.js | 5 +- .../font-library-modal/font-card.js | 5 +- .../font-library-modal/utils/index.js | 60 +++++++++++++++++++ 3 files changed, 68 insertions(+), 2 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/font-family-item.js b/packages/edit-site/src/components/global-styles/font-family-item.js index 0ce6d65954656..357e332eb35f9 100644 --- a/packages/edit-site/src/components/global-styles/font-family-item.js +++ b/packages/edit-site/src/components/global-styles/font-family-item.js @@ -13,6 +13,7 @@ import { useContext } from '@wordpress/element'; * Internal dependencies */ import { FontLibraryContext } from './font-library-modal/context'; +import { getPreviewStyle } from './font-library-modal/utils'; function FontFamilyItem( { font } ) { const { handleSetLibraryFontSelected, toggleModal } = @@ -24,11 +25,13 @@ function FontFamilyItem( { font } ) { handleSetLibraryFontSelected( font ); toggleModal( 'installed-fonts' ); }; + + const previewStyle = getPreviewStyle( font ); return ( - + { font.name } diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/font-card.js b/packages/edit-site/src/components/global-styles/font-library-modal/font-card.js index dade2dcc93583..1564948bcf50c 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/font-card.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/font-card.js @@ -13,6 +13,7 @@ import { * Internal dependencies */ import FontDemo from './font-demo'; +import { getPreviewStyle } from './utils'; function FontCard( { font, onClick, actionHandler, variantsText } ) { const fakeFontFace = { @@ -30,6 +31,8 @@ function FontCard( { font, onClick, actionHandler, variantsText } ) { ) || font.fontFace[ 0 ] : fakeFontFace; + const demoStyle = getPreviewStyle( font ); + const variantsCount = font.fontFace?.length || 1; const style = { @@ -43,7 +46,7 @@ function FontCard( { font, onClick, actionHandler, variantsText } ) { className="font-library-modal__font-card" > - + diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js index 0014a5a82f9ad..73dbc5ea7af0c 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js @@ -95,3 +95,63 @@ export function getDisplaySrcFromFontFace( input, urlPrefix ) { } return src; } + +function findNearest( input, numbers ) { + // If the numbers array is empty, return null + if ( numbers.length === 0 ) { + return null; + } + // Sort the array based on the absolute difference with the input + numbers.sort( ( a, b ) => Math.abs( input - a ) - Math.abs( input - b ) ); + // Return the first element (which will be the nearest) from the sorted array + return numbers[ 0 ]; +} + +function extractFontWeights( fontFaces ) { + let result = []; + + fontFaces.forEach( ( face ) => { + const weights = String( face.fontWeight ).split( ' ' ); + + if ( weights.length === 2 ) { + const start = parseInt( weights[ 0 ] ); + const end = parseInt( weights[ 1 ] ); + + for ( let i = start; i <= end; i += 100 ) { + result.push( i ); + } + } else if ( weights.length === 1 ) { + result.push( parseInt( weights[ 0 ] ) ); + } + } ); + + return result; +} + +export function getPreviewStyle( family ) { + const style = { fontFamily: family.fontFamily }; + + if ( ! Array.isArray( family.fontFace ) ) { + style.fontWeight = '400'; + style.fontStyle = 'normal'; + } + + if ( family.fontFace ) { + //get all the font faces with normal style + const normalFaces = family.fontFace.filter( + ( face ) => face.fontStyle.toLowerCase() === 'normal' + ); + if ( normalFaces.length > 0 ) { + style.fontStyle = 'normal'; + const normalWeights = extractFontWeights( normalFaces ); + const nearestWeight = findNearest( 400, normalWeights ); + style.fontWeight = String( nearestWeight ) || '400'; + } else { + style.fontStyle = family.fontFace[ 0 ].fontStyle || 'normal'; + style.fontWeight = + String( family.fontFace[ 0 ].fontWeight ) || '400'; + } + } + + return style; +} From 23a3608ba93cdddd8108c6a2ef9481bae5898ba2 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Thu, 7 Sep 2023 13:16:26 -0300 Subject: [PATCH 073/108] adding unit tests for getPreviewStyle util --- .../utils/test/getPreviewStyle.spec.js | 120 ++++++++++++++++++ 1 file changed, 120 insertions(+) create mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/utils/test/getPreviewStyle.spec.js diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/getPreviewStyle.spec.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/getPreviewStyle.spec.js new file mode 100644 index 0000000000000..84a45a229c9ff --- /dev/null +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/getPreviewStyle.spec.js @@ -0,0 +1,120 @@ +import { getPreviewStyle } from '../index'; + +describe( 'getPreviewStyle', () => { + it( 'should return default fontStyle and fontWeight if fontFace is not provided', () => { + const family = { fontFamily: 'Rosario' }; + const result = getPreviewStyle( family ); + const expected = { + fontFamily: 'Rosario', + fontWeight: '400', + fontStyle: 'normal', + }; + expect( result ).toEqual( expected ); + } ); + + it( 'should return fontStyle as "normal" if fontFace contains "normal" style', () => { + const family = { + fontFamily: 'Rosario', + fontFace: [ + { fontStyle: 'italic', fontWeight: '500' }, + { fontStyle: 'normal', fontWeight: '600' }, + ], + }; + const result = getPreviewStyle( family ); + const expected = { + fontFamily: 'Rosario', + fontStyle: 'normal', + fontWeight: '600', + }; + expect( result ).toEqual( expected ); + } ); + + it( 'should return fontStyle as "itaic" if fontFace does not contain "normal" style', () => { + const family = { + fontFamily: 'Rosario', + fontFace: [ + { fontStyle: 'italic', fontWeight: '500' }, + { fontStyle: 'italic', fontWeight: '600' }, + ], + }; + const result = getPreviewStyle( family ); + const expected = { + fontFamily: 'Rosario', + fontStyle: 'italic', + fontWeight: '500', + }; + expect( result ).toEqual( expected ); + } ); + + + it( 'should return fontWeight as string', () => { + const family = { + fontFamily: 'Rosario', + fontFace: [ + { fontStyle: 'italic', fontWeight: '500' }, + { fontStyle: 'normal', fontWeight: '700' }, + ], + }; + const result = getPreviewStyle( family ); + const expected = { + fontFamily: 'Rosario', + fontStyle: 'normal', + fontWeight: '700', + }; + expect( result ).toEqual( expected ); + } ); + + + it( 'should return fontWeight as "400" if fontFace contains "normal" style with "400" weight', () => { + const family = { + fontFamily: 'Rosario', + fontFace: [ + { fontStyle: 'italic', fontWeight: '500' }, + { fontStyle: 'normal', fontWeight: '400' }, + ], + }; + const result = getPreviewStyle( family ); + const expected = { + fontFamily: 'Rosario', + fontStyle: 'normal', + fontWeight: '400', + }; + expect( result ).toEqual( expected ); + } ); + + it( 'should return the fontWeight of the nearest "normal" style if no "400" weight is found', () => { + const family = { + fontFamily: 'Rosario', + fontFace: [ + { fontStyle: 'normal', fontWeight: '800' }, + { fontStyle: 'italic', fontWeight: '500' }, + { fontStyle: 'normal', fontWeight: '600' }, + ], + }; + const result = getPreviewStyle( family ); + const expected = { + fontFamily: 'Rosario', + fontStyle: 'normal', + fontWeight: '600', + }; + expect( result ).toEqual( expected ); + } ); + + it( 'should return 400 or the the nearest "normal" style if it using a variable weight font', () => { + const family = { + fontFamily: 'Rosario', + fontFace: [ + { fontStyle: 'normal', fontWeight: '100' }, + { fontStyle: 'normal', fontWeight: '200 900' }, + { fontStyle: 'italic', fontWeight: '200 900' }, + ], + }; + const result = getPreviewStyle( family ); + const expected = { + fontFamily: 'Rosario', + fontStyle: 'normal', + fontWeight: '400', + }; + expect( result ).toEqual( expected ); + } ); +} ); From 304921f98f82c9ac648b6736f980adc7cd8efc41 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Thu, 7 Sep 2023 13:26:21 -0300 Subject: [PATCH 074/108] lint fix --- .../global-styles/font-family-item.js | 6 ++---- .../font-library-modal/font-card.js | 6 +++++- .../font-library-modal/utils/index.js | 2 +- .../utils/test/getPreviewStyle.spec.js | 17 +++++++++-------- 4 files changed, 17 insertions(+), 14 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/font-family-item.js b/packages/edit-site/src/components/global-styles/font-family-item.js index 357e332eb35f9..fdd7012bc0137 100644 --- a/packages/edit-site/src/components/global-styles/font-family-item.js +++ b/packages/edit-site/src/components/global-styles/font-family-item.js @@ -25,15 +25,13 @@ function FontFamilyItem( { font } ) { handleSetLibraryFontSelected( font ); toggleModal( 'installed-fonts' ); }; - + const previewStyle = getPreviewStyle( font ); return ( - - { font.name } - + { font.name } { variantsCount }{ ' ' } { _n( 'variant', 'variants', variantsCount ) } diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/font-card.js b/packages/edit-site/src/components/global-styles/font-library-modal/font-card.js index 1564948bcf50c..41203d745cc4d 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/font-card.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/font-card.js @@ -46,7 +46,11 @@ function FontCard( { font, onClick, actionHandler, variantsText } ) { className="font-library-modal__font-card" > - + diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js index 73dbc5ea7af0c..95717f0eacf6e 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js @@ -108,7 +108,7 @@ function findNearest( input, numbers ) { } function extractFontWeights( fontFaces ) { - let result = []; + const result = []; fontFaces.forEach( ( face ) => { const weights = String( face.fontWeight ).split( ' ' ); diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/getPreviewStyle.spec.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/getPreviewStyle.spec.js index 84a45a229c9ff..88cd91d352a80 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/getPreviewStyle.spec.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/getPreviewStyle.spec.js @@ -1,3 +1,6 @@ +/** + * Internal dependencies + */ import { getPreviewStyle } from '../index'; describe( 'getPreviewStyle', () => { @@ -29,7 +32,7 @@ describe( 'getPreviewStyle', () => { expect( result ).toEqual( expected ); } ); - it( 'should return fontStyle as "itaic" if fontFace does not contain "normal" style', () => { + it( 'should return fontStyle as "itaic" if fontFace does not contain "normal" style', () => { const family = { fontFamily: 'Rosario', fontFace: [ @@ -46,8 +49,7 @@ describe( 'getPreviewStyle', () => { expect( result ).toEqual( expected ); } ); - - it( 'should return fontWeight as string', () => { + it( 'should return fontWeight as string', () => { const family = { fontFamily: 'Rosario', fontFace: [ @@ -64,7 +66,6 @@ describe( 'getPreviewStyle', () => { expect( result ).toEqual( expected ); } ); - it( 'should return fontWeight as "400" if fontFace contains "normal" style with "400" weight', () => { const family = { fontFamily: 'Rosario', @@ -86,7 +87,7 @@ describe( 'getPreviewStyle', () => { const family = { fontFamily: 'Rosario', fontFace: [ - { fontStyle: 'normal', fontWeight: '800' }, + { fontStyle: 'normal', fontWeight: '800' }, { fontStyle: 'italic', fontWeight: '500' }, { fontStyle: 'normal', fontWeight: '600' }, ], @@ -100,12 +101,12 @@ describe( 'getPreviewStyle', () => { expect( result ).toEqual( expected ); } ); - it( 'should return 400 or the the nearest "normal" style if it using a variable weight font', () => { + it( 'should return 400 or the the nearest "normal" style if it using a variable weight font', () => { const family = { fontFamily: 'Rosario', fontFace: [ - { fontStyle: 'normal', fontWeight: '100' }, - { fontStyle: 'normal', fontWeight: '200 900' }, + { fontStyle: 'normal', fontWeight: '100' }, + { fontStyle: 'normal', fontWeight: '200 900' }, { fontStyle: 'italic', fontWeight: '200 900' }, ], }; From f649f8b1125f92825e29db6a8c8a89b2fd248155 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Thu, 7 Sep 2023 13:40:34 -0300 Subject: [PATCH 075/108] fix accepted file extensions not working properly on firefox --- .../global-styles/font-library-modal/local-fonts.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js b/packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js index 9d55338d6ee65..964f7cb655930 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js @@ -167,7 +167,9 @@ function LocalFonts() { `.${ ext }` + ).join( ',' ) } multiple={ true } onChange={ onFilesUpload } render={ ( { openFileDialog } ) => ( From 1800e50f7f33d57c9a015a67d4c8838c6aafd4b6 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Thu, 7 Sep 2023 13:43:41 -0300 Subject: [PATCH 076/108] sort font faces by weight --- .../global-styles/font-library-modal/library-font-details.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/library-font-details.js b/packages/edit-site/src/components/global-styles/font-library-modal/library-font-details.js index 2988372c478f5..c1c6b5ea0b059 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/library-font-details.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/library-font-details.js @@ -21,7 +21,9 @@ function LibraryFontDetails( { } ) { const fontFaces = font.fontFace && font.fontFace.length - ? font.fontFace + ? font.fontFace.sort( ( a, b ) => + a.fontWeight > b.fontWeight ? 1 : -1 + ) : [ { fontFamily: font.fontFamily, From 77b620128c5818ea1860b35d623384e069e0fbcf Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Thu, 7 Sep 2023 14:58:57 -0300 Subject: [PATCH 077/108] move the code of toggleActivatedFont to a another file to reduce their size and make it easier to read --- .../font-library-modal/context.js | 77 ++-------------- .../font-library-modal/utils/toggleFont.js | 90 +++++++++++++++++++ 2 files changed, 96 insertions(+), 71 deletions(-) create mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/utils/toggleFont.js diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/context.js b/packages/edit-site/src/components/global-styles/font-library-modal/context.js index 28a11e6692c6b..8d481df97b121 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/context.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/context.js @@ -24,6 +24,7 @@ import { loadFontFaceInBrowser, getDisplaySrcFromFontFace, } from './utils'; +import { toggleFont } from './utils/toggleFont'; export const FontLibraryContext = createContext( {} ); @@ -275,79 +276,13 @@ function FontLibraryProvider( { children } ) { const toggleActivateFont = ( font, face ) => { // If the user doesn't have custom fonts defined, include as custom fonts all the theme fonts // We want to save as active all the theme fonts at the beginning - const initialCustomFonts = fontFamilies[ font.source ] || []; - const activatedFont = initialCustomFonts.find( - ( f ) => f.slug === font.slug - ); - let newCustomFonts; - - // Entire font family - if ( ! face ) { - if ( ! activatedFont ) { - // If the font is not active, activate the entire font family - newCustomFonts = [ ...initialCustomFonts, font ]; - } else { - // If the font is already active, deactivate the entire font family - newCustomFonts = initialCustomFonts.filter( - ( f ) => f.slug !== font.slug - ); - } - } else { - //single font variant - let newFontFaces; - - // If the font family is active - if ( activatedFont ) { - const activatedFontFace = ( activatedFont.fontFace || [] ).find( - ( f ) => - f.fontWeight === face.fontWeight && - f.fontStyle === face.fontStyle - ); - // If the font variant is active - if ( activatedFontFace ) { - // Deactivate the font variant - newFontFaces = activatedFont.fontFace.filter( - ( f ) => - ! ( - f.fontWeight === face.fontWeight && - f.fontStyle === face.fontStyle - ) - ); - // If there are no more font faces, deactivate the font family - if ( newFontFaces?.length === 0 ) { - newCustomFonts = initialCustomFonts.filter( - ( f ) => f.slug !== font.slug - ); - } else { - // set the newFontFaces in the newCustomFonts - newCustomFonts = initialCustomFonts.map( ( f ) => - f.slug === font.slug - ? { ...f, fontFace: newFontFaces } - : f - ); - } - } else { - // Activate the font variant - newFontFaces = [ ...activatedFont.fontFace, face ]; - // set the newFontFaces in the newCustomFonts - newCustomFonts = initialCustomFonts.map( ( f ) => - f.slug === font.slug - ? { ...f, fontFace: newFontFaces } - : f - ); - } - } else { - // If the font family is not active, activate the font family with the font variant - newFontFaces = [ face ]; - newCustomFonts = [ - ...initialCustomFonts, - { ...font, fontFace: newFontFaces }, - ]; - } - } + const initialFonts = fontFamilies[ font.source ] || []; + // Toggles the received font family or font face + const newFonts = toggleFont( font, face, initialFonts ); + // Updates the font families activated in global settings: setFontFamilies( { ...fontFamilies, - [ font.source ]: newCustomFonts, + [ font.source ]: newFonts, } ); }; diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/toggleFont.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/toggleFont.js new file mode 100644 index 0000000000000..4daf8e7a17392 --- /dev/null +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/toggleFont.js @@ -0,0 +1,90 @@ +/** + * Toggles the activation of a given font or font variant within a list of custom fonts. + * + * - If only the font is provided (without face), the entire font family's activation is toggled. + * - If both font and face are provided, the activation of the specific font variant is toggled. + * + * @param {Object} font - The font to be toggled. + * @param {string} font.slug - The unique identifier for the font. + * @param {Array} [font.fontFace] - The list of font variants (faces) associated with the font. + * + * @param {Object} [face] - The specific font variant to be toggled. + * @param {string} face.fontWeight - The weight of the font variant. + * @param {string} face.fontStyle - The style of the font variant. + * + * @param {Array} initialfonts - The initial list of custom fonts. + * + * @return {Array} - The updated list of custom fonts with the font/font variant toggled. + * + * @example + * const customFonts = [ + * { slug: 'roboto', fontFace: [{ fontWeight: '400', fontStyle: 'normal' }] } + * ]; + * + * toggleFont({ slug: 'roboto' }, null, customFonts); + * // This will remove 'roboto' from customFonts + * + * toggleFont({ slug: 'roboto' }, { fontWeight: '400', fontStyle: 'normal' }, customFonts); + * // This will remove the specified face from 'roboto' in customFonts + * + * toggleFont({ slug: 'roboto' }, { fontWeight: '500', fontStyle: 'normal' }, customFonts); + * // This will add the specified face to 'roboto' in customFonts + */ +export function toggleFont( font, face, initialfonts ) { + // Helper to check if a font is activated based on its slug + const isFontActivated = ( f ) => f.slug === font.slug; + + // Helper to get the activated font from a list of fonts + const getActivatedFont = ( fonts ) => fonts.find( isFontActivated ); + + // Toggle the activation status of an entire font family + const toggleEntireFontFamily = ( activatedFont ) => { + if ( ! activatedFont ) { + // If the font is not active, activate the entire font family + return [ ...initialfonts, font ]; + } + // If the font is already active, deactivate the entire font family + return initialfonts.filter( ( f ) => ! isFontActivated( f ) ); + }; + + // Toggle the activation status of a specific font variant + const toggleFontVariant = ( activatedFont ) => { + const isFaceActivated = ( f ) => + f.fontWeight === face.fontWeight && f.fontStyle === face.fontStyle; + + if ( ! activatedFont ) { + // If the font family is not active, activate the font family with the font variant + return [ ...initialfonts, { ...font, fontFace: [ face ] } ]; + } + + let newFontFaces = activatedFont.fontFace || []; + + if ( newFontFaces.find( isFaceActivated ) ) { + // If the font variant is active, deactivate it + newFontFaces = newFontFaces.filter( + ( f ) => ! isFaceActivated( f ) + ); + } else { + // If the font variant is not active, activate it + newFontFaces = [ ...newFontFaces, face ]; + } + + // If there are no more font faces, deactivate the font family + if ( newFontFaces.length === 0 ) { + return initialfonts.filter( ( f ) => ! isFontActivated( f ) ); + } + + // Return updated fonts list with toggled font variant + return initialfonts.map( ( f ) => + isFontActivated( f ) ? { ...f, fontFace: newFontFaces } : f + ); + }; + + const activatedFont = getActivatedFont( initialfonts ); + + if ( ! face ) { + return toggleEntireFontFamily( activatedFont ); + } + + return toggleFontVariant( activatedFont ); +} From 4828788e137527d760d1821c43df6caeb1cff868 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Thu, 7 Sep 2023 14:59:41 -0300 Subject: [PATCH 078/108] adding tests for toggleFont --- .../utils/test/toggleFont.spec.js | 138 ++++++++++++++++++ 1 file changed, 138 insertions(+) create mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/utils/test/toggleFont.spec.js diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/toggleFont.spec.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/toggleFont.spec.js new file mode 100644 index 0000000000000..078033267f8c8 --- /dev/null +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/toggleFont.spec.js @@ -0,0 +1,138 @@ +import { toggleFont } from '../toggleFont'; + +describe( 'toggleFont function', () => { + const initialCustomFonts = [ + { + slug: 'font1', + fontFace: [ + { fontWeight: '400', fontStyle: 'normal' }, + { fontWeight: '700', fontStyle: 'italic' }, + ], + }, + ]; + + const newFont = { slug: 'font2', fontFace: [] }; + + // Basic Toggles + describe( 'Basic Toggles', () => { + it( 'should toggle the entire font family on/off', () => { + let updatedFonts = toggleFont( newFont, null, initialCustomFonts ); + expect( updatedFonts ).toEqual( [ + ...initialCustomFonts, + newFont, + ] ); + + updatedFonts = toggleFont( newFont, null, updatedFonts ); + expect( updatedFonts ).toEqual( initialCustomFonts ); + } ); + + it( 'should toggle a specific font face of an activated font family', () => { + const face = { fontWeight: '400', fontStyle: 'normal' }; + let updatedFonts = toggleFont( + initialCustomFonts[ 0 ], + face, + initialCustomFonts + ); + expect( updatedFonts[ 0 ].fontFace ).toEqual( [ + { fontWeight: '700', fontStyle: 'italic' }, + ] ); + + updatedFonts = toggleFont( + initialCustomFonts[ 0 ], + face, + updatedFonts + ); + expect( updatedFonts[ 0 ].fontFace ).toEqual( [ + { fontWeight: '700', fontStyle: 'italic' }, + { fontWeight: '400', fontStyle: 'normal' }, + ] ); + } ); + + it( 'should toggle a specific font face of a non-activated font family', () => { + const face = { fontWeight: '500', fontStyle: 'normal' }; + const updatedFonts = toggleFont( + newFont, + face, + initialCustomFonts + ); + expect( updatedFonts ).toEqual( [ + ...initialCustomFonts, + { ...newFont, fontFace: [ face ] }, + ] ); + } ); + } ); + + // Edge Cases + describe( 'Edge Cases', () => { + it( 'should handle empty initial fonts', () => { + const updatedFonts = toggleFont( newFont, null, [] ); + expect( updatedFonts ).toEqual( [ newFont ] ); + } ); + + it( 'should deactivate font family when all font faces are deactivated', () => { + const face1 = { fontWeight: '400', fontStyle: 'normal' }; + const face2 = { fontWeight: '700', fontStyle: 'italic' }; + let updatedFonts = toggleFont( + initialCustomFonts[ 0 ], + face1, + initialCustomFonts + ); + updatedFonts = toggleFont( + initialCustomFonts[ 0 ], + face2, + updatedFonts + ); + + expect( updatedFonts ).toEqual( [] ); + } ); + + it( 'should not duplicate an already activated font face', () => { + const face = { fontWeight: '400', fontStyle: 'normal' }; + const updatedFonts = toggleFont( + initialCustomFonts[ 0 ], + face, + initialCustomFonts + ); + const furtherUpdatedFonts = toggleFont( + initialCustomFonts[ 0 ], + face, + updatedFonts + ); + + expect( furtherUpdatedFonts ).toHaveLength( 1 ); + // Sort the font faces by fontWeight to ensure the order is consistent for the toEqual assertion. + expect( + furtherUpdatedFonts[ 0 ].fontFace.sort( + ( a, b ) => a.fontWeight - b.fontWeight + ) + ).toEqual( initialCustomFonts[ 0 ].fontFace ); + } ); + + it( 'should handle undefined or null fontFace gracefully', () => { + const fontWithoutFaces = { slug: 'font3' }; // no fontFace defined + const face = { fontWeight: '500', fontStyle: 'normal' }; + const updatedFonts = toggleFont( + fontWithoutFaces, + face, + initialCustomFonts + ); + expect( updatedFonts ).toEqual( [ + ...initialCustomFonts, + { ...fontWithoutFaces, fontFace: [ face ] }, + ] ); + } ); + + it( 'should handle fonts with the same slug but different properties', () => { + const differentFontWithSameSlug = { + slug: 'font1', + displayName: 'Different Font with Same Slug', + }; + const updatedFonts = toggleFont( + differentFontWithSameSlug, + null, + initialCustomFonts + ); + expect( updatedFonts ).toEqual( [] ); + } ); + } ); +} ); From cf1f38e519d27bb787341ba472fb0fc1704cb3e5 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Thu, 7 Sep 2023 15:38:31 -0300 Subject: [PATCH 079/108] lint --- .../font-library-modal/utils/toggleFont.js | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/toggleFont.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/toggleFont.js index 4daf8e7a17392..26cd0af9fea8e 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/utils/toggleFont.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/toggleFont.js @@ -4,15 +4,15 @@ * - If only the font is provided (without face), the entire font family's activation is toggled. * - If both font and face are provided, the activation of the specific font variant is toggled. * - * @param {Object} font - The font to be toggled. - * @param {string} font.slug - The unique identifier for the font. - * @param {Array} [font.fontFace] - The list of font variants (faces) associated with the font. + * @param {Object} font - The font to be toggled. + * @param {string} font.slug - The unique identifier for the font. + * @param {Array} [font.fontFace] - The list of font variants (faces) associated with the font. * - * @param {Object} [face] - The specific font variant to be toggled. - * @param {string} face.fontWeight - The weight of the font variant. - * @param {string} face.fontStyle - The style of the font variant. + * @param {Object} [face] - The specific font variant to be toggled. + * @param {string} face.fontWeight - The weight of the font variant. + * @param {string} face.fontStyle - The style of the font variant. * - * @param {Array} initialfonts - The initial list of custom fonts. + * @param {Array} initialfonts - The initial list of custom fonts. * * @return {Array} - The updated list of custom fonts with the font/font variant toggled. * @@ -42,9 +42,9 @@ export function toggleFont( font, face, initialfonts ) { if ( ! activatedFont ) { // If the font is not active, activate the entire font family return [ ...initialfonts, font ]; - } - // If the font is already active, deactivate the entire font family - return initialfonts.filter( ( f ) => ! isFontActivated( f ) ); + } + // If the font is already active, deactivate the entire font family + return initialfonts.filter( ( f ) => ! isFontActivated( f ) ); }; // Toggle the activation status of a specific font variant From b3e2c4edc7fcd315a5f8fe40974fbaceb8fc9d7f Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Thu, 7 Sep 2023 15:45:29 -0300 Subject: [PATCH 080/108] avoid resetting theme font families when activating or deactivating font famiies when install or uninstall --- .../src/components/global-styles/font-library-modal/context.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/context.js b/packages/edit-site/src/components/global-styles/font-library-modal/context.js index 8d481df97b121..3feaadec81310 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/context.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/context.js @@ -257,6 +257,7 @@ function FontLibraryProvider( { children } ) { ( f ) => f.slug !== font.slug ); setFontFamilies( { + ...fontFamilies, [ font.source ]: newCustomFonts, } ); }; @@ -269,6 +270,7 @@ function FontLibraryProvider( { children } ) { ); // Activate the fonts by set the new custom fonts array. setFontFamilies( { + ...fontFamilies, custom: newCustomFonts, } ); }; From c54fda0f95f1f3559510fe36eacb8bf5e50b8772 Mon Sep 17 00:00:00 2001 From: madhusudhand Date: Fri, 8 Sep 2023 14:05:05 +0530 Subject: [PATCH 081/108] fix issue where fontFace length is zero --- .../global-styles/font-library-modal/utils/index.js | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js index 95717f0eacf6e..b9dedf729bfd2 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js @@ -147,9 +147,13 @@ export function getPreviewStyle( family ) { const nearestWeight = findNearest( 400, normalWeights ); style.fontWeight = String( nearestWeight ) || '400'; } else { - style.fontStyle = family.fontFace[ 0 ].fontStyle || 'normal'; + style.fontStyle = + ( family.fontFace.length && family.fontFace[ 0 ].fontStyle ) || + 'normal'; style.fontWeight = - String( family.fontFace[ 0 ].fontWeight ) || '400'; + ( family.fontFace.length && + String( family.fontFace[ 0 ].fontWeight ) ) || + '400'; } } From 5242b8578249c59244911cefd60744e49ed6ddfb Mon Sep 17 00:00:00 2001 From: Sarah Norris Date: Fri, 8 Sep 2023 10:58:54 +0100 Subject: [PATCH 082/108] Add deps comment to toggleFont file --- .../font-library-modal/utils/test/toggleFont.spec.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/toggleFont.spec.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/toggleFont.spec.js index 078033267f8c8..509a2145bbc43 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/toggleFont.spec.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/toggleFont.spec.js @@ -1,3 +1,6 @@ +/** + * Internal dependencies + */ import { toggleFont } from '../toggleFont'; describe( 'toggleFont function', () => { From 6161311f6709dbb9606337e8789790df1bd96e28 Mon Sep 17 00:00:00 2001 From: Sarah Norris Date: Fri, 8 Sep 2023 11:42:27 +0100 Subject: [PATCH 083/108] Fix theme and custom undefined errors --- .../components/global-styles/font-library-modal/context.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/context.js b/packages/edit-site/src/components/global-styles/font-library-modal/context.js index 3feaadec81310..13e39be25da2c 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/context.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/context.js @@ -95,13 +95,13 @@ function FontLibraryProvider( { children } ) { .sort( ( a, b ) => a.name.localeCompare( b.name ) ) : []; - const themeFonts = fontFamilies.theme + const themeFonts = fontFamilies?.theme ? fontFamilies.theme .map( ( f ) => setUIValuesNeeded( f, { source: 'theme' } ) ) .sort( ( a, b ) => a.name.localeCompare( b.name ) ) : []; - const customFonts = fontFamilies.custom + const customFonts = fontFamilies?.custom ? fontFamilies.custom .map( ( f ) => setUIValuesNeeded( f, { source: 'custom' } ) ) .sort( ( a, b ) => a.name.localeCompare( b.name ) ) From 6ca4bc43211301228eba8cce30bff800868c9174 Mon Sep 17 00:00:00 2001 From: Sarah Norris Date: Fri, 8 Sep 2023 11:45:46 +0100 Subject: [PATCH 084/108] Add initial e2e tests --- .../specs/site-editor/font-library.spec.js | 72 +++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 test/e2e/specs/site-editor/font-library.spec.js diff --git a/test/e2e/specs/site-editor/font-library.spec.js b/test/e2e/specs/site-editor/font-library.spec.js new file mode 100644 index 0000000000000..5cd9610691a55 --- /dev/null +++ b/test/e2e/specs/site-editor/font-library.spec.js @@ -0,0 +1,72 @@ +/** + * WordPress dependencies + */ +const { test, expect } = require( '@wordpress/e2e-test-utils-playwright' ); + +test.describe( 'Font Library', () => { + test.beforeAll( async ( { requestUtils } ) => { + await requestUtils.activateTheme( 'twentytwentythree' ); + } ); + + test.beforeEach( async ( { admin, editor } ) => { + await admin.visitSiteEditor( { + postId: 'twentytwentythree//index', + postType: 'wp_template', + } ); + await editor.canvas.click( 'body' ); + } ); + + test( 'should display the "Manage Fonts" icon when a blank theme is active', async ( { + admin, + editor, + page, + requestUtils, + } ) => { + await requestUtils.activateTheme( 'emptytheme' ); + await admin.visitSiteEditor( { + postId: 'emptytheme//index', + postType: 'wp_template', + } ); + await editor.canvas.click( 'body' ); + + await page.getByRole( 'button', { name: /styles/i } ).click(); + await page + .getByRole( 'button', { name: /typography styles/i } ) + .click(); + const manageFontsIcon = page.getByRole( 'button', { + name: /manage fonts/i, + } ); + await expect( manageFontsIcon ).toBeVisible(); + } ); + + test( 'should display the "Manage Fonts" icon when a theme with bundled fonts is active', async ( { + page, + } ) => { + await page.getByRole( 'button', { name: /styles/i } ).click(); + await page + .getByRole( 'button', { name: /typography styles/i } ) + .click(); + const manageFontsIcon = page.getByRole( 'button', { + name: /manage fonts/i, + } ); + await expect( manageFontsIcon ).toBeVisible(); + } ); + + test( 'should open the "Manage Fonts" modal when clicking the "Manage Fonts" icon', async ( { + page, + } ) => { + await page.getByRole( 'button', { name: /styles/i } ).click(); + await page + .getByRole( 'button', { name: /typography styles/i } ) + .click(); + await page + .getByRole( 'button', { + name: /manage fonts/i, + } ) + .click(); + await expect( page.getByRole( 'dialog' ) ).toBeVisible(); + await expect( + page.getByRole( 'heading', { name: 'Fonts' } ) + ).toBeVisible(); + } ); +} ); From f2f228f8f53439eb3320a7b1f4e1b931781124e3 Mon Sep 17 00:00:00 2001 From: Sarah Norris Date: Fri, 8 Sep 2023 12:17:53 +0100 Subject: [PATCH 085/108] Refactor e2e test order --- .../specs/site-editor/font-library.spec.js | 110 +++++++++--------- 1 file changed, 56 insertions(+), 54 deletions(-) diff --git a/test/e2e/specs/site-editor/font-library.spec.js b/test/e2e/specs/site-editor/font-library.spec.js index 5cd9610691a55..e6521cb7c540b 100644 --- a/test/e2e/specs/site-editor/font-library.spec.js +++ b/test/e2e/specs/site-editor/font-library.spec.js @@ -4,69 +4,71 @@ const { test, expect } = require( '@wordpress/e2e-test-utils-playwright' ); test.describe( 'Font Library', () => { - test.beforeAll( async ( { requestUtils } ) => { - await requestUtils.activateTheme( 'twentytwentythree' ); - } ); - - test.beforeEach( async ( { admin, editor } ) => { - await admin.visitSiteEditor( { - postId: 'twentytwentythree//index', - postType: 'wp_template', + test.describe( 'When a blank theme is active', () => { + test.beforeAll( async ( { requestUtils } ) => { + await requestUtils.activateTheme( 'emptytheme' ); } ); - await editor.canvas.click( 'body' ); - } ); - test( 'should display the "Manage Fonts" icon when a blank theme is active', async ( { - admin, - editor, - page, - requestUtils, - } ) => { - await requestUtils.activateTheme( 'emptytheme' ); - await admin.visitSiteEditor( { - postId: 'emptytheme//index', - postType: 'wp_template', + test.beforeEach( async ( { admin, editor } ) => { + await admin.visitSiteEditor( { + postId: 'emptytheme//index', + postType: 'wp_template', + } ); + await editor.canvas.click( 'body' ); } ); - await editor.canvas.click( 'body' ); - await page.getByRole( 'button', { name: /styles/i } ).click(); - await page - .getByRole( 'button', { name: /typography styles/i } ) - .click(); - const manageFontsIcon = page.getByRole( 'button', { - name: /manage fonts/i, + test( 'should display the "Manage Fonts" icon', async ( { page } ) => { + await page.getByRole( 'button', { name: /styles/i } ).click(); + await page + .getByRole( 'button', { name: /typography styles/i } ) + .click(); + const manageFontsIcon = page.getByRole( 'button', { + name: /manage fonts/i, + } ); + await expect( manageFontsIcon ).toBeVisible(); } ); - await expect( manageFontsIcon ).toBeVisible(); } ); - test( 'should display the "Manage Fonts" icon when a theme with bundled fonts is active', async ( { - page, - } ) => { - await page.getByRole( 'button', { name: /styles/i } ).click(); - await page - .getByRole( 'button', { name: /typography styles/i } ) - .click(); - const manageFontsIcon = page.getByRole( 'button', { - name: /manage fonts/i, + test.describe( 'When a theme with bundled fonts is active', () => { + test.beforeAll( async ( { requestUtils } ) => { + await requestUtils.activateTheme( 'twentytwentythree' ); } ); - await expect( manageFontsIcon ).toBeVisible(); - } ); - test( 'should open the "Manage Fonts" modal when clicking the "Manage Fonts" icon', async ( { - page, - } ) => { - await page.getByRole( 'button', { name: /styles/i } ).click(); - await page - .getByRole( 'button', { name: /typography styles/i } ) - .click(); - await page - .getByRole( 'button', { + test.beforeEach( async ( { admin, editor } ) => { + await admin.visitSiteEditor( { + postId: 'twentytwentythree//index', + postType: 'wp_template', + } ); + await editor.canvas.click( 'body' ); + } ); + + test( 'should display the "Manage Fonts" icon', async ( { page } ) => { + await page.getByRole( 'button', { name: /styles/i } ).click(); + await page + .getByRole( 'button', { name: /typography styles/i } ) + .click(); + const manageFontsIcon = page.getByRole( 'button', { name: /manage fonts/i, - } ) - .click(); - await expect( page.getByRole( 'dialog' ) ).toBeVisible(); - await expect( - page.getByRole( 'heading', { name: 'Fonts' } ) - ).toBeVisible(); + } ); + await expect( manageFontsIcon ).toBeVisible(); + } ); + + test( 'should open the "Manage Fonts" modal when clicking the "Manage Fonts" icon', async ( { + page, + } ) => { + await page.getByRole( 'button', { name: /styles/i } ).click(); + await page + .getByRole( 'button', { name: /typography styles/i } ) + .click(); + await page + .getByRole( 'button', { + name: /manage fonts/i, + } ) + .click(); + await expect( page.getByRole( 'dialog' ) ).toBeVisible(); + await expect( + page.getByRole( 'heading', { name: 'Fonts' } ) + ).toBeVisible(); + } ); } ); } ); From 14aa39ac60bab9a96c891d0ac47eb320f168bd77 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Fri, 8 Sep 2023 10:37:53 -0300 Subject: [PATCH 086/108] avoid re-activating all the font faces of a installed font when a new font face is installed --- .../font-library-modal/context.js | 14 ++++++-- .../font-library-modal/local-fonts.js | 31 ++---------------- .../utils/get-intersecting-font-faces.js | 32 +++++++++++++++++++ .../font-library-modal/utils/index.js | 21 ++++++++++++ .../utils/make-families-from-faces.js | 20 ++++++++++++ 5 files changed, 88 insertions(+), 30 deletions(-) create mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js create mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/utils/make-families-from-faces.js diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/context.js b/packages/edit-site/src/components/global-styles/font-library-modal/context.js index 13e39be25da2c..d07c32e870fe6 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/context.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/context.js @@ -23,8 +23,10 @@ import { mergeFontFamilies, loadFontFaceInBrowser, getDisplaySrcFromFontFace, + makeFormDataFromFontFamilies, } from './utils'; import { toggleFont } from './utils/toggleFont'; +import getIntersectingFontFaces from './utils/get-intersecting-font-faces'; export const FontLibraryContext = createContext( {} ); @@ -194,10 +196,18 @@ function FontLibraryProvider( { children } ) { async function installFonts( fonts ) { try { + // Prepare formData to install. + const formData = makeFormDataFromFontFamilies( fonts ); // Install the fonts (upload the font files to the server and create the post in the database). - const fontsInstalled = await fetchInstallFonts( fonts ); + const fontsInstalled = await fetchInstallFonts( formData ); + // Get intersecting font faces between the fonts we tried to installed and the fonts that were installed + // (to avoid activating a non installed font). + const fontToBeActivated = getIntersectingFontFaces( + fonts, + fontsInstalled + ); // Activate the font families (add the font families to the global styles). - activateCustomFontFamilies( fontsInstalled ); + activateCustomFontFamilies( fontToBeActivated ); // Save the global styles to the database. saveSpecifiedEntityEdits( 'root', 'globalStyles', globalStylesId, [ 'settings.typography.fontFamilies', diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js b/packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js index 964f7cb655930..12b1b19e6d30b 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js @@ -17,6 +17,7 @@ import { useContext } from '@wordpress/element'; import { ALLOWED_FILE_EXTENSIONS } from './utils/constants'; import { FontLibraryContext } from './context'; import { Font } from '../../../../lib/lib-font.browser'; +import makeFamiliesFromFaces from './utils/make-families-from-faces'; function LocalFonts() { const { installFonts } = useContext( FontLibraryContext ); @@ -129,34 +130,8 @@ function LocalFonts() { * @return {void} */ const handleInstall = async ( fontFaces ) => { - const formData = new FormData(); - // Creates the fontFamilies array that will be sent to the server - const fontFamiliesObject = fontFaces.reduce( - ( acc, { file, ...item }, i ) => { - if ( ! acc[ item.fontFamily ] ) { - acc[ item.fontFamily ] = { - name: item.fontFamily, - fontFamily: item.fontFamily, - slug: item.fontFamily - .replace( /\s+/g, '-' ) - .toLowerCase(), - fontFace: [], - }; - } - // Add the files to the formData - formData.append( `files${ i }`, file, file.name ); - // Add the posted file id to the fontFace object - // This is needed to associate the fontFace with the file on the server - const face = { ...item, uploadedFile: `files${ i }` }; - acc[ item.fontFamily ].fontFace.push( face ); - return acc; - }, - {} - ); - const fontFamilies = Object.values( fontFamiliesObject ); - // Adds the fontFamilies to the formData - formData.append( 'fontFamilies', JSON.stringify( fontFamilies ) ); - await installFonts( formData ); + const fontFamilies = makeFamiliesFromFaces( fontFaces ); + await installFonts( fontFamilies ); }; return ( diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js new file mode 100644 index 0000000000000..82e9afb318a69 --- /dev/null +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js @@ -0,0 +1,32 @@ +export default function getIntersectingFontFaces( + intendedFontsFamilies, + existingFontFamilies +) { + const matches = []; + + for ( const intendedFont of intendedFontsFamilies ) { + const existingFont = existingFontFamilies.find( + ( f ) => f.slug === intendedFont.slug + ); + + if ( existingFont ) { + if ( intendedFont?.fontFace ) { + const matchingFaces = intendedFont.fontFace.filter( + ( face ) => { + return ( existingFont?.fontFace || [] ).find( ( f ) => { + return ( + f.fontWeight === face.fontWeight && + f.fontStyle === face.fontStyle + ); + } ); + } + ); + matches.push( { ...existingFont, fontFace: matchingFaces } ); + } else { + matches.push( intendedFont ); + } + } + } + + return matches; +} diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js index b9dedf729bfd2..e3d3393b9b299 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js @@ -159,3 +159,24 @@ export function getPreviewStyle( family ) { return style; } + +export function makeFormDataFromFontFamilies( fontFamilies ) { + const formData = new FormData(); + const newFontFamilies = fontFamilies.map( ( family ) => { + if ( family?.fontFace ) { + family.fontFace = family.fontFace.map( ( face, i ) => { + if ( face.file ) { + // Add the files to the formData + formData.append( `files${ i }`, face.file, face.file.name ); + // remove the file object from the face object the file is referenced by the uploadedFile key + const { file, ...faceWithoutFileProperty } = face; + return faceWithoutFileProperty; + } + return face; + } ); + } + return family; + } ); + formData.append( 'fontFamilies', JSON.stringify( newFontFamilies ) ); + return formData; +} diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/make-families-from-faces.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/make-families-from-faces.js new file mode 100644 index 0000000000000..4d92fd413f6d0 --- /dev/null +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/make-families-from-faces.js @@ -0,0 +1,20 @@ +export default function makeFamiliesFromFaces( fontFaces ) { + const fontFamiliesObject = fontFaces.reduce( ( acc, item, i ) => { + if ( ! acc[ item.fontFamily ] ) { + acc[ item.fontFamily ] = { + name: item.fontFamily, + fontFamily: item.fontFamily, + slug: item.fontFamily.replace( /\s+/g, '-' ).toLowerCase(), + fontFace: [], + }; + } + if ( item.file ) { + // Add the posted file id to the fontFace object + // This is needed to associate the fontFace with the file on the server + item.uploadedFile = `files${ i }`; + } + acc[ item.fontFamily ].fontFace.push( item ); + return acc; + }, {} ); + return Object.values( fontFamiliesObject ); +} From d216f304d65d7412f920ed564d57c29872e2cc51 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Fri, 8 Sep 2023 10:55:01 -0300 Subject: [PATCH 087/108] adding tests for utils functions --- .../test/getIntersectingFontFaces.spec.js | 240 ++++++++++++++++++ .../utils/test/makeFamiliesFromFaces.spec.js | 97 +++++++ .../test/makeFormDataFromFontFamilies.spec.js | 54 ++++ 3 files changed, 391 insertions(+) create mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/utils/test/getIntersectingFontFaces.spec.js create mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/utils/test/makeFamiliesFromFaces.spec.js create mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/utils/test/makeFormDataFromFontFamilies.spec.js diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/getIntersectingFontFaces.spec.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/getIntersectingFontFaces.spec.js new file mode 100644 index 0000000000000..91ae5f45d66da --- /dev/null +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/getIntersectingFontFaces.spec.js @@ -0,0 +1,240 @@ +/** + * Internal dependencies + */ +import getIntersectingFontFaces from '../get-intersecting-font-faces'; + +describe( 'getIntersectingFontFaces', () => { + it( 'returns matching font faces for matching font family', () => { + const intendedFontsFamilies = [ + { + slug: 'lobster', + fontFace: [ + { + fontWeight: '400', + fontStyle: 'normal', + }, + ], + }, + ]; + + const existingFontFamilies = [ + { + slug: 'lobster', + fontFace: [ + { + fontWeight: '400', + fontStyle: 'normal', + }, + ], + }, + ]; + + const result = getIntersectingFontFaces( + intendedFontsFamilies, + existingFontFamilies + ); + + expect( result ).toEqual( intendedFontsFamilies ); + } ); + + it( 'returns empty array when there is no match', () => { + const intendedFontsFamilies = [ + { + slug: 'lobster', + fontFace: [ + { + fontWeight: '400', + fontStyle: 'normal', + }, + ], + }, + ]; + + const existingFontFamilies = [ + { + slug: 'montserrat', + fontFace: [ + { + fontWeight: '400', + fontStyle: 'normal', + }, + ], + }, + ]; + + const result = getIntersectingFontFaces( + intendedFontsFamilies, + existingFontFamilies + ); + + expect( result ).toEqual( [] ); + } ); + + it( 'returns matching font faces', () => { + const intendedFontsFamilies = [ + { + slug: 'lobster', + fontFace: [ + { + fontWeight: '400', + fontStyle: 'normal', + }, + { + fontWeight: '700', + fontStyle: 'italic', + }, + ], + }, + { + slug: 'times', + fontFace: [ + { + fontWeight: '400', + fontStyle: 'normal', + }, + ], + }, + ]; + + const existingFontFamilies = [ + { + slug: 'lobster', + fontFace: [ + { + fontWeight: '400', + fontStyle: 'normal', + }, + { + fontWeight: '800', + fontStyle: 'italic', + }, + { + fontWeight: '900', + fontStyle: 'italic', + }, + ], + }, + ]; + + const expectedOutput = [ + { + slug: 'lobster', + fontFace: [ + { + fontWeight: '400', + fontStyle: 'normal', + }, + ], + }, + ]; + + const result = getIntersectingFontFaces( + intendedFontsFamilies, + existingFontFamilies + ); + + expect( result ).toEqual( expectedOutput ); + } ); + + it( 'returns empty array when the first list is empty', () => { + const intendedFontsFamilies = []; + + const existingFontFamilies = [ + { + slug: 'lobster', + fontFace: [ + { + fontWeight: '400', + fontStyle: 'normal', + }, + ], + }, + ]; + + const result = getIntersectingFontFaces( + intendedFontsFamilies, + existingFontFamilies + ); + + expect( result ).toEqual( [] ); + } ); + + it( 'returns empty array when the second list is empty', () => { + const intendedFontsFamilies = [ + { + slug: 'lobster', + fontFace: [ + { + fontWeight: '400', + fontStyle: 'normal', + }, + ], + }, + ]; + + const existingFontFamilies = []; + + const result = getIntersectingFontFaces( + intendedFontsFamilies, + existingFontFamilies + ); + + expect( result ).toEqual( [] ); + } ); + + it( 'returns intersecting font family when there are no fonfaces', () => { + const intendedFontsFamilies = [ + { + slug: 'piazzolla', + fontFace: [ { fontStyle: 'normal', fontWeight: '400' } ], + }, + { + slug: 'lobster', + }, + ]; + + const existingFontFamilies = [ + { + slug: 'lobster', + }, + ]; + + const result = getIntersectingFontFaces( + intendedFontsFamilies, + existingFontFamilies + ); + + expect( result ).toEqual( existingFontFamilies ); + } ); + + it( 'returns intersecting if there is an intended font face and is not present in the returning it should not be returned', () => { + const intendedFontsFamilies = [ + { + slug: 'piazzolla', + fontFace: [ { fontStyle: 'normal', fontWeight: '400' } ], + }, + { + slug: 'lobster', + fontFace: [ { fontStyle: 'normal', fontWeight: '400' } ], + }, + ]; + + const existingFontFamilies = [ + { + slug: 'lobster', + }, + ]; + + const result = getIntersectingFontFaces( + intendedFontsFamilies, + existingFontFamilies + ); + const expected = [ + { + slug: 'lobster', + fontFace: [], + }, + ]; + expect( result ).toEqual( expected ); + } ); +} ); diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/makeFamiliesFromFaces.spec.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/makeFamiliesFromFaces.spec.js new file mode 100644 index 0000000000000..2dc123a817313 --- /dev/null +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/makeFamiliesFromFaces.spec.js @@ -0,0 +1,97 @@ +/** + * Internal dependencies + */ +import makeFamiliesFromFaces from '../make-families-from-faces'; + +/* global Blob */ +function createMockFile( + name = 'file.ttf', + size = 1024, + mimeType = 'text/plain' +) { + const file = new Blob( [ new ArrayBuffer( size ) ], { type: mimeType } ); + file.name = name; + return file; +} + +describe( 'makeFamiliesFromFaces', () => { + it( 'handles empty fontFaces list', () => { + const result = makeFamiliesFromFaces( [] ); + expect( result ).toEqual( [] ); + } ); + + it( 'groups fontFaces by fontFamily', () => { + const fontFaces = [ + { fontFamily: 'Lobster', file: createMockFile( 'lobster1.ttf' ) }, + { + fontFamily: 'Piazzolla', + file: createMockFile( 'piazzolla1.ttf' ), + }, + { fontFamily: 'Lobster', file: createMockFile( 'lobster2.ttf' ) }, + ]; + + const result = makeFamiliesFromFaces( fontFaces ); + + expect( result ).toHaveLength( 2 ); + expect( + result.find( ( family ) => family.name === 'Lobster' ).fontFace + ).toHaveLength( 2 ); + expect( + result.find( ( family ) => family.name === 'Piazzolla' ).fontFace + ).toHaveLength( 1 ); + } ); + + it( 'sets correct uploadedFile field when file is present', () => { + const fontFaces = [ + { + fontFamily: 'Lobster', + file: createMockFile( 'lobster-400-normal.ttf' ), + }, + { + fontFamily: 'Lobster', + file: createMockFile( 'lobster-400-italic.ttf' ), + }, + { + fontFamily: 'Piazzolla', + file: createMockFile( 'piazzolla-600.ttf' ), + }, + ]; + const result = makeFamiliesFromFaces( fontFaces ); + + const lobsterFamily = result.find( + ( family ) => family.slug === 'lobster' + ); + const piazzollaFamily = result.find( + ( family ) => family.slug === 'piazzolla' + ); + + expect( lobsterFamily.fontFace[ 0 ].uploadedFile ).toBe( 'files0' ); + expect( lobsterFamily.fontFace[ 1 ].uploadedFile ).toBe( 'files1' ); + expect( piazzollaFamily.fontFace[ 0 ].uploadedFile ).toBe( 'files2' ); + } ); + + it( 'generates correct name for fontFamily names', () => { + const fontFaces = [ + { + fontFamily: 'Piazzolla', + file: createMockFile( 'piazzolla.ttf' ), + }, + ]; + + const result = makeFamiliesFromFaces( fontFaces ); + expect( result[ 0 ].name ).toBe( 'Piazzolla' ); + } ); + + it( 'generates correct slug for fontFamily names', () => { + const fontFaces = [ + { + fontFamily: 'Times New Roman', + file: createMockFile( 'times.ttf' ), + }, + ]; + + const result = makeFamiliesFromFaces( fontFaces ); + + expect( result[ 0 ].slug ).toBe( 'times-new-roman' ); + } ); +} ); diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/makeFormDataFromFontFamilies.spec.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/makeFormDataFromFontFamilies.spec.js new file mode 100644 index 0000000000000..e24d8a17e4db9 --- /dev/null +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/makeFormDataFromFontFamilies.spec.js @@ -0,0 +1,54 @@ +/** + * Internal dependencies + */ +import { makeFormDataFromFontFamilies } from '../index'; + +/* global File */ + +describe( 'makeFormDataFromFontFamilies', () => { + it( 'should process fontFamilies and return FormData', () => { + const mockFontFamilies = [ + { + slug: 'bebas', + name: 'Bebas', + fontFamily: 'Bebas', + fontFace: [ + { + file: new File( [ 'content' ], 'test-font1.woff2' ), + fontWeight: '500', + fontStyle: 'normal', + }, + { + file: new File( [ 'content' ], 'test-font2.woff2' ), + fontWeight: '400', + fontStyle: 'normal', + }, + ], + }, + ]; + + const formData = makeFormDataFromFontFamilies( mockFontFamilies ); + + expect( formData instanceof FormData ).toBeTruthy(); + + // Check if files are added correctly + expect( formData.get( 'files0' ).name ).toBe( 'test-font1.woff2' ); + expect( formData.get( 'files1' ).name ).toBe( 'test-font2.woff2' ); + + // Check if 'fontFamilies' key in FormData is correct + const expectedFontFamilies = [ + { + fontFace: [ + { fontWeight: '500', fontStyle: 'normal' }, + { fontWeight: '400', fontStyle: 'normal' }, + ], + slug: 'bebas', + name: 'Bebas', + fontFamily: 'Bebas', + }, + ]; + expect( JSON.parse( formData.get( 'fontFamilies' ) ) ).toEqual( + expectedFontFamilies + ); + } ); +} ); From b337852488e151b348638e80e04a60b8cbc0eb4a Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Fri, 8 Sep 2023 10:58:01 -0300 Subject: [PATCH 088/108] renaming parameters --- .../utils/get-intersecting-font-faces.js | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js index 82e9afb318a69..7cbf017da3742 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js @@ -1,17 +1,14 @@ -export default function getIntersectingFontFaces( - intendedFontsFamilies, - existingFontFamilies -) { +export default function getIntersectingFontFaces( incoming, existing ) { const matches = []; - for ( const intendedFont of intendedFontsFamilies ) { - const existingFont = existingFontFamilies.find( - ( f ) => f.slug === intendedFont.slug + for ( const incomingFont of incoming ) { + const existingFont = existing.find( + ( f ) => f.slug === incomingFont.slug ); if ( existingFont ) { - if ( intendedFont?.fontFace ) { - const matchingFaces = intendedFont.fontFace.filter( + if ( incomingFont?.fontFace ) { + const matchingFaces = incomingFont.fontFace.filter( ( face ) => { return ( existingFont?.fontFace || [] ).find( ( f ) => { return ( @@ -23,7 +20,7 @@ export default function getIntersectingFontFaces( ); matches.push( { ...existingFont, fontFace: matchingFaces } ); } else { - matches.push( intendedFont ); + matches.push( incomingFont ); } } } From 1c2002122fbdf1834725f7309c5b949eaa0ba4e9 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Fri, 8 Sep 2023 11:02:21 -0300 Subject: [PATCH 089/108] adding jsdoc for function --- .../utils/get-intersecting-font-faces.js | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js index 7cbf017da3742..a3ffd31db2288 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js @@ -1,3 +1,32 @@ +/** + * Retrieves intersecting font faces between two sets of fonts. + * + * For each font in the `incoming` list, the function checks for a corresponding match + * in the `existing` list based on the `slug` property. If a match is found and both + * have `fontFace` properties, it further narrows down to matching font faces based on + * the `fontWeight` and `fontStyle`. The result includes the properties of the matched + * existing font but only with intersecting font faces. + * + * @param {Array.<{ slug: string, fontFace?: Array.<{ fontWeight: string, fontStyle: string }> }>} incoming - The list of fonts to compare. + * @param {Array.<{ slug: string, fontFace?: Array.<{ fontWeight: string, fontStyle: string }> }>} existing - The reference list of fonts. + * + * @return {Array.<{ slug: string, fontFace?: Array.<{ fontWeight: string, fontStyle: string }> }>} An array of fonts from the `existing` list with intersecting font faces. + * + * @example + * const incomingFonts = [ + * { slug: 'arial', fontFace: [{ fontWeight: '400', fontStyle: 'normal' }] }, + * { slug: 'times-new', fontFace: [{ fontWeight: '700', fontStyle: 'italic' }] } + * ]; + * + * const existingFonts = [ + * { slug: 'arial', fontFace: [{ fontWeight: '400', fontStyle: 'normal' }, { fontWeight: '700', fontStyle: 'italic' }] }, + * { slug: 'helvetica', fontFace: [{ fontWeight: '400', fontStyle: 'normal' }] } + * ]; + * + * getIntersectingFontFaces(incomingFonts, existingFonts); + * // Returns: + * // [{ slug: 'arial', fontFace: [{ fontWeight: '400', fontStyle: 'normal' }] }] + */ export default function getIntersectingFontFaces( incoming, existing ) { const matches = []; From 61f7db324f3196a56891df9a5698c7e2cd24d840 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Fri, 8 Sep 2023 11:27:04 -0300 Subject: [PATCH 090/108] remove code no longer needed --- .../font-library-modal/resolvers.js | 17 +---------------- 1 file changed, 1 insertion(+), 16 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/resolvers.js b/packages/edit-site/src/components/global-styles/font-library-modal/resolvers.js index 978fb1170481f..e20e398bf3d7c 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/resolvers.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/resolvers.js @@ -8,26 +8,11 @@ import apiFetch from '@wordpress/api-fetch'; export async function fetchInstallFonts( data ) { - // If data is not FormData object, we need to pass it as the body of the request. - // We are doing this because to upload local fonts we need to use FormData - // To homogenize the request, we are using FormData for both cases (collection fonts and local fonts) - - let body = data; - - // If the data is not a FormData object, we need to create it - // Data for collection fonts is an array of font families - if ( ! ( data instanceof FormData ) ) { - const formData = new FormData(); - formData.append( 'fontFamilies', JSON.stringify( data ) ); - body = formData; - } - const config = { path: '/wp/v2/fonts', method: 'POST', - body, + body: data, }; - return apiFetch( config ); } From 43dae169d80290f00486dbbe729e70042c731e8a Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Fri, 8 Sep 2023 11:33:34 -0300 Subject: [PATCH 091/108] avoid potential errors with non existing fontFace array --- .../font-library-modal/utils/get-intersecting-font-faces.js | 2 +- .../components/global-styles/font-library-modal/utils/index.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js index a3ffd31db2288..9a65bb6af80d3 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js @@ -37,7 +37,7 @@ export default function getIntersectingFontFaces( incoming, existing ) { if ( existingFont ) { if ( incomingFont?.fontFace ) { - const matchingFaces = incomingFont.fontFace.filter( + const matchingFaces = ( incomingFont.fontFace || [] ).filter( ( face ) => { return ( existingFont?.fontFace || [] ).find( ( f ) => { return ( diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js index e3d3393b9b299..0113658ac2238 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js @@ -138,7 +138,7 @@ export function getPreviewStyle( family ) { if ( family.fontFace ) { //get all the font faces with normal style - const normalFaces = family.fontFace.filter( + const normalFaces = ( family.fontFace || [] ).filter( ( face ) => face.fontStyle.toLowerCase() === 'normal' ); if ( normalFaces.length > 0 ) { From 17d5885befa7d613fe38f9f05887998f372ae289 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Fri, 8 Sep 2023 11:44:16 -0300 Subject: [PATCH 092/108] Revert "avoid potential errors with non existing fontFace array" This reverts commit 43dae169d80290f00486dbbe729e70042c731e8a. --- .../font-library-modal/utils/get-intersecting-font-faces.js | 2 +- .../components/global-styles/font-library-modal/utils/index.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js index 9a65bb6af80d3..a3ffd31db2288 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js @@ -37,7 +37,7 @@ export default function getIntersectingFontFaces( incoming, existing ) { if ( existingFont ) { if ( incomingFont?.fontFace ) { - const matchingFaces = ( incomingFont.fontFace || [] ).filter( + const matchingFaces = incomingFont.fontFace.filter( ( face ) => { return ( existingFont?.fontFace || [] ).find( ( f ) => { return ( diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js index 0113658ac2238..e3d3393b9b299 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js @@ -138,7 +138,7 @@ export function getPreviewStyle( family ) { if ( family.fontFace ) { //get all the font faces with normal style - const normalFaces = ( family.fontFace || [] ).filter( + const normalFaces = family.fontFace.filter( ( face ) => face.fontStyle.toLowerCase() === 'normal' ); if ( normalFaces.length > 0 ) { From 83ae921cf55e68b736e614a7a9908fec4713d272 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Fri, 8 Sep 2023 14:27:42 -0300 Subject: [PATCH 093/108] fix error uploading several font faces from different font families --- .../font-library-modal/utils/index.js | 17 +++++-- .../utils/make-families-from-faces.js | 7 +-- .../utils/test/makeFamiliesFromFaces.spec.js | 50 ++----------------- .../test/makeFormDataFromFontFamilies.spec.js | 20 ++++++-- 4 files changed, 36 insertions(+), 58 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js index e3d3393b9b299..91ad585c4c151 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js @@ -1,3 +1,8 @@ +/** + * WordPress dependencies + */ +import { cleanForSlug } from '@wordpress/url'; + /** * Internal dependencies */ @@ -164,13 +169,19 @@ export function makeFormDataFromFontFamilies( fontFamilies ) { const formData = new FormData(); const newFontFamilies = fontFamilies.map( ( family ) => { if ( family?.fontFace ) { - family.fontFace = family.fontFace.map( ( face, i ) => { + family.fontFace = family.fontFace.map( ( face ) => { if ( face.file ) { + // Slugified file name because the it might contain spaces or characters treated differently on the server. + const slugifiedName = cleanForSlug( face.file.name ); // Add the files to the formData - formData.append( `files${ i }`, face.file, face.file.name ); + formData.append( slugifiedName, face.file, face.file.name ); // remove the file object from the face object the file is referenced by the uploadedFile key const { file, ...faceWithoutFileProperty } = face; - return faceWithoutFileProperty; + const newFace = { + ...faceWithoutFileProperty, + uploadedFile: slugifiedName, + }; + return newFace; } return face; } ); diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/make-families-from-faces.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/make-families-from-faces.js index 4d92fd413f6d0..cbc995bedefd4 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/utils/make-families-from-faces.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/make-families-from-faces.js @@ -1,5 +1,5 @@ export default function makeFamiliesFromFaces( fontFaces ) { - const fontFamiliesObject = fontFaces.reduce( ( acc, item, i ) => { + const fontFamiliesObject = fontFaces.reduce( ( acc, item ) => { if ( ! acc[ item.fontFamily ] ) { acc[ item.fontFamily ] = { name: item.fontFamily, @@ -8,11 +8,6 @@ export default function makeFamiliesFromFaces( fontFaces ) { fontFace: [], }; } - if ( item.file ) { - // Add the posted file id to the fontFace object - // This is needed to associate the fontFace with the file on the server - item.uploadedFile = `files${ i }`; - } acc[ item.fontFamily ].fontFace.push( item ); return acc; }, {} ); diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/makeFamiliesFromFaces.spec.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/makeFamiliesFromFaces.spec.js index 2dc123a817313..b8e147116ea6a 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/makeFamiliesFromFaces.spec.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/makeFamiliesFromFaces.spec.js @@ -3,17 +3,6 @@ */ import makeFamiliesFromFaces from '../make-families-from-faces'; -/* global Blob */ -function createMockFile( - name = 'file.ttf', - size = 1024, - mimeType = 'text/plain' -) { - const file = new Blob( [ new ArrayBuffer( size ) ], { type: mimeType } ); - file.name = name; - return file; -} - describe( 'makeFamiliesFromFaces', () => { it( 'handles empty fontFaces list', () => { const result = makeFamiliesFromFaces( [] ); @@ -22,12 +11,12 @@ describe( 'makeFamiliesFromFaces', () => { it( 'groups fontFaces by fontFamily', () => { const fontFaces = [ - { fontFamily: 'Lobster', file: createMockFile( 'lobster1.ttf' ) }, + { fontFamily: 'Lobster' }, { fontFamily: 'Piazzolla', - file: createMockFile( 'piazzolla1.ttf' ), + file: { name: 'piazzolla.ttf' }, }, - { fontFamily: 'Lobster', file: createMockFile( 'lobster2.ttf' ) }, + { fontFamily: 'Lobster', file: { name: 'piazzolla.ttf' } }, ]; const result = makeFamiliesFromFaces( fontFaces ); @@ -41,40 +30,11 @@ describe( 'makeFamiliesFromFaces', () => { ).toHaveLength( 1 ); } ); - it( 'sets correct uploadedFile field when file is present', () => { - const fontFaces = [ - { - fontFamily: 'Lobster', - file: createMockFile( 'lobster-400-normal.ttf' ), - }, - { - fontFamily: 'Lobster', - file: createMockFile( 'lobster-400-italic.ttf' ), - }, - { - fontFamily: 'Piazzolla', - file: createMockFile( 'piazzolla-600.ttf' ), - }, - ]; - const result = makeFamiliesFromFaces( fontFaces ); - - const lobsterFamily = result.find( - ( family ) => family.slug === 'lobster' - ); - const piazzollaFamily = result.find( - ( family ) => family.slug === 'piazzolla' - ); - - expect( lobsterFamily.fontFace[ 0 ].uploadedFile ).toBe( 'files0' ); - expect( lobsterFamily.fontFace[ 1 ].uploadedFile ).toBe( 'files1' ); - expect( piazzollaFamily.fontFace[ 0 ].uploadedFile ).toBe( 'files2' ); - } ); - it( 'generates correct name for fontFamily names', () => { const fontFaces = [ { fontFamily: 'Piazzolla', - file: createMockFile( 'piazzolla.ttf' ), + file: { name: 'piazzolla.ttf' }, }, ]; @@ -86,7 +46,7 @@ describe( 'makeFamiliesFromFaces', () => { const fontFaces = [ { fontFamily: 'Times New Roman', - file: createMockFile( 'times.ttf' ), + file: { name: 'times.ttf' }, }, ]; diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/makeFormDataFromFontFamilies.spec.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/makeFormDataFromFontFamilies.spec.js index e24d8a17e4db9..b89fa69279f06 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/makeFormDataFromFontFamilies.spec.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/makeFormDataFromFontFamilies.spec.js @@ -32,15 +32,27 @@ describe( 'makeFormDataFromFontFamilies', () => { expect( formData instanceof FormData ).toBeTruthy(); // Check if files are added correctly - expect( formData.get( 'files0' ).name ).toBe( 'test-font1.woff2' ); - expect( formData.get( 'files1' ).name ).toBe( 'test-font2.woff2' ); + expect( formData.get( 'test-font1-woff2' ).name ).toBe( + 'test-font1.woff2' + ); + expect( formData.get( 'test-font2-woff2' ).name ).toBe( + 'test-font2.woff2' + ); // Check if 'fontFamilies' key in FormData is correct const expectedFontFamilies = [ { fontFace: [ - { fontWeight: '500', fontStyle: 'normal' }, - { fontWeight: '400', fontStyle: 'normal' }, + { + fontWeight: '500', + fontStyle: 'normal', + uploadedFile: 'test-font1-woff2', + }, + { + fontWeight: '400', + fontStyle: 'normal', + uploadedFile: 'test-font2-woff2', + }, ], slug: 'bebas', name: 'Bebas', From e0f3f70a94cc534bdb9b91acf014225e4c5d4a18 Mon Sep 17 00:00:00 2001 From: Vicente Canales Date: Sun, 10 Sep 2023 14:44:11 -0300 Subject: [PATCH 094/108] Fix font library modal prop typo --- .../src/components/global-styles/font-families.js | 6 +++--- .../global-styles/font-library-modal/context.js | 10 +++++----- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/font-families.js b/packages/edit-site/src/components/global-styles/font-families.js index 7d8afa6b3b22c..06bf595328332 100644 --- a/packages/edit-site/src/components/global-styles/font-families.js +++ b/packages/edit-site/src/components/global-styles/font-families.js @@ -23,15 +23,15 @@ import FontFamilyItem from './font-family-item'; import Subtitle from './subtitle'; function FontFamilies() { - const { modalTabOepn, toggleModal, themeFonts, customFonts } = + const { modalTabOpen, toggleModal, themeFonts, customFonts } = useContext( FontLibraryContext ); return ( <> - { !! modalTabOepn && ( + { !! modalTabOpen && ( toggleModal() } - initialTabName={ modalTabOepn } + initialTabName={ modalTabOpen } /> ) } diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/context.js b/packages/edit-site/src/components/global-styles/font-library-modal/context.js index d07c32e870fe6..6c93a1d4efbc3 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/context.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/context.js @@ -88,7 +88,7 @@ function FontLibraryProvider( { children } ) { }; // Library Fonts - const [ modalTabOepn, setModalTabOepn ] = useState( false ); + const [ modalTabOpen, setModalTabOpen ] = useState( false ); const [ libraryFontSelected, setLibraryFontSelected ] = useState( null ); const baseThemeFonts = baseFontFamilies?.theme @@ -116,10 +116,10 @@ function FontLibraryProvider( { children } ) { : []; useEffect( () => { - if ( ! modalTabOepn ) { + if ( ! modalTabOpen ) { setLibraryFontSelected( null ); } - }, [ modalTabOepn ] ); + }, [ modalTabOpen ] ); const handleSetLibraryFontSelected = ( font ) => { // If font is null, reset the selected font @@ -141,7 +141,7 @@ function FontLibraryProvider( { children } ) { }; const toggleModal = ( tabName ) => { - setModalTabOepn( tabName || null ); + setModalTabOpen( tabName || null ); }; // Demo @@ -327,7 +327,7 @@ function FontLibraryProvider( { children } ) { uninstallFont, toggleActivateFont, getAvailableFontsOutline, - modalTabOepn, + modalTabOpen, toggleModal, refreshLibrary, saveFontFamilies, From 94e714c5a141ab1190fc2bd9877784829dbccdd0 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Mon, 11 Sep 2023 09:53:35 -0300 Subject: [PATCH 095/108] activate the right font faces (the installed ones instead of the local definitions). --- .../components/global-styles/font-library-modal/context.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/context.js b/packages/edit-site/src/components/global-styles/font-library-modal/context.js index 6c93a1d4efbc3..c8180046bc76c 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/context.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/context.js @@ -203,8 +203,8 @@ function FontLibraryProvider( { children } ) { // Get intersecting font faces between the fonts we tried to installed and the fonts that were installed // (to avoid activating a non installed font). const fontToBeActivated = getIntersectingFontFaces( - fonts, - fontsInstalled + fontsInstalled, + fonts ); // Activate the font families (add the font families to the global styles). activateCustomFontFamilies( fontToBeActivated ); From 6bb6a98e6c0368c7b509a1481b0051cab296d93b Mon Sep 17 00:00:00 2001 From: Vicente Canales <1157901+vcanales@users.noreply.github.com> Date: Mon, 11 Sep 2023 15:14:38 -0300 Subject: [PATCH 096/108] Font library: load font assets on editor canvas (#54334) * Font library: load font assets on editor canvas This change adds loaded font faces to the editor canvas iframe so that they can be used immediately after uploading them. Re: https://github.com/WordPress/gutenberg/issues/51764 * load font families on iframe on activation * removing addFontFaceToBrowser function and consolidate it with loadFontFaceInBrowser that was doing almost the same --------- Co-authored-by: Matias Benedetto --- .../font-library-modal/context.js | 13 +++++++- .../font-library-modal/local-fonts.js | 17 ++++------- .../font-library-modal/utils/index.js | 30 +++++++++++++++++-- 3 files changed, 45 insertions(+), 15 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/context.js b/packages/edit-site/src/components/global-styles/font-library-modal/context.js index c8180046bc76c..168f1face0610 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/context.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/context.js @@ -283,6 +283,17 @@ function FontLibraryProvider( { children } ) { ...fontFamilies, custom: newCustomFonts, } ); + // Add custom fonts to the browser. + fontsToAdd.forEach( ( font ) => { + font.fontFace.forEach( ( face ) => { + // Load font faces just in the iframe because they already are in the document. + loadFontFaceInBrowser( + face, + getDisplaySrcFromFontFace( face.src ), + 'iframe' + ); + } ); + } ); }; const toggleActivateFont = ( font, face ) => { @@ -306,7 +317,7 @@ function FontLibraryProvider( { children } ) { // If the font is already loaded, don't load it again. if ( loadedFontUrls.has( src ) ) return; // Load the font in the browser. - loadFontFaceInBrowser( fontFace, src ); + loadFontFaceInBrowser( fontFace, src, 'document' ); // Add the font to the loaded fonts list. loadedFontUrls.add( src ); }; diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js b/packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js index 12b1b19e6d30b..7d5f7a2f79b16 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js @@ -18,6 +18,7 @@ import { ALLOWED_FILE_EXTENSIONS } from './utils/constants'; import { FontLibraryContext } from './context'; import { Font } from '../../../../lib/lib-font.browser'; import makeFamiliesFromFaces from './utils/make-families-from-faces'; +import { loadFontFaceInBrowser } from './utils'; function LocalFonts() { const { installFonts } = useContext( FontLibraryContext ); @@ -65,7 +66,11 @@ function LocalFonts() { const fontFacesLoaded = await Promise.all( files.map( async ( fontFile ) => { const fontFaceData = await getFontFaceMetadata( fontFile ); - await addFontFaceToBrowser( fontFaceData ); + await loadFontFaceInBrowser( + fontFaceData, + fontFaceData.file, + 'all' + ); return fontFaceData; } ) ); @@ -113,16 +118,6 @@ function LocalFonts() { }; }; - const addFontFaceToBrowser = async ( fontFaceData ) => { - const data = await fontFaceData.file.arrayBuffer(); - const newFont = new window.FontFace( fontFaceData.fontFamily, data, { - style: fontFaceData.fontStyle, - weight: fontFaceData.fontWeight, - } ); - const loadedFace = await newFont.load(); - document.fonts.add( loadedFace ); - }; - /** * Creates the font family definition and sends it to the server * diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js index 91ad585c4c151..2e0f910213d61 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js @@ -74,14 +74,38 @@ export function mergeFontFamilies( existing = [], incoming = [] ) { return Array.from( map.values() ); } -export async function loadFontFaceInBrowser( fontFace, src ) { +/* + * Loads the font face from a URL and adds it to the browser. + * It also adds it to the iframe document. + */ +export async function loadFontFaceInBrowser( fontFace, source, addTo = 'all' ) { + let dataSource; + + if ( typeof source === 'string' ) { + dataSource = `url(${ source })`; + // eslint-disable-next-line no-undef + } else if ( source instanceof File ) { + dataSource = await source.arrayBuffer(); + } + // eslint-disable-next-line no-undef - const newFont = new FontFace( fontFace.fontFamily, `url( ${ src } )`, { + const newFont = new FontFace( fontFace.fontFamily, dataSource, { style: fontFace.fontStyle, weight: fontFace.fontWeight, } ); + const loadedFace = await newFont.load(); - document.fonts.add( loadedFace ); + + if ( addTo === 'document' || addTo === 'all' ) { + document.fonts.add( loadedFace ); + } + + if ( addTo === 'iframe' || addTo === 'all' ) { + const iframeDocument = document.querySelector( + 'iframe[name="editor-canvas"]' + ).contentDocument; + iframeDocument.fonts.add( loadedFace ); + } } export function getDisplaySrcFromFontFace( input, urlPrefix ) { From 99cbc39be106d499398086c88eceaf8d572bee57 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Mon, 11 Sep 2023 15:47:45 -0300 Subject: [PATCH 097/108] removing success snackbar notifications --- .../global-styles/font-library-modal/context.js | 15 +-------------- 1 file changed, 1 insertion(+), 14 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/context.js b/packages/edit-site/src/components/global-styles/font-library-modal/context.js index 168f1face0610..2a5b55e7e5161 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/context.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/context.js @@ -46,8 +46,7 @@ function FontLibraryProvider( { children } ) { const fontFamiliesHasChanges = !! globalStyles?.edits?.settings?.typography?.fontFamilies; - const { createErrorNotice, createSuccessNotice } = - useDispatch( noticesStore ); + const { createErrorNotice } = useDispatch( noticesStore ); const [ refreshKey, setRefreshKey ] = useState( 0 ); @@ -82,9 +81,6 @@ function FontLibraryProvider( { children } ) { saveSpecifiedEntityEdits( 'root', 'globalStyles', globalStylesId, [ 'settings.typography.fontFamilies', ] ); - createSuccessNotice( __( `Font families were updated succesfully.` ), { - type: 'snackbar', - } ); }; // Library Fonts @@ -212,10 +208,6 @@ function FontLibraryProvider( { children } ) { saveSpecifiedEntityEdits( 'root', 'globalStyles', globalStylesId, [ 'settings.typography.fontFamilies', ] ); - createSuccessNotice( - __( `Font families were installed succesfully.` ), - { type: 'snackbar' } - ); refreshLibrary(); return true; } catch ( e ) { @@ -243,11 +235,6 @@ function FontLibraryProvider( { children } ) { ); // Refresh the library (the the library font families from database). refreshLibrary(); - - createSuccessNotice( __( `Font families were uninstalled.` ), { - type: 'snackbar', - } ); - return true; } catch ( e ) { // eslint-disable-next-line no-console From e44b58beef0ed4dba106bf37f446f2a057c2a0bd Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Mon, 11 Sep 2023 16:01:20 -0300 Subject: [PATCH 098/108] update uninstall font family button look --- .../global-styles/font-library-modal/installed-fonts.js | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js b/packages/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js index 8db6e0f28977a..615a7e130ed8d 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js @@ -140,12 +140,8 @@ function Footer( { shouldDisplayDeleteButton, handleUninstallClick } ) {
{ shouldDisplayDeleteButton && ( - ) }
From 326065ec31378633f3e6d2b683d10daf72848db0 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Mon, 11 Sep 2023 16:48:50 -0300 Subject: [PATCH 099/108] delete any change to save-button component --- .../src/components/save-button/index.js | 20 +++++++++---------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/packages/edit-site/src/components/save-button/index.js b/packages/edit-site/src/components/save-button/index.js index 0e9f5deded319..37d99a1ae1394 100644 --- a/packages/edit-site/src/components/save-button/index.js +++ b/packages/edit-site/src/components/save-button/index.js @@ -14,14 +14,12 @@ import { store as editSiteStore } from '../../store'; import { isPreviewingTheme } from '../../utils/is-previewing-theme'; export default function SaveButton( { - textForDisabledState = __( 'Saved' ), - textForIsDirtyState = __( 'Activate & Save' ), - textForDefaultState = __( 'Save' ), - textForIsSavingState = __( 'Saving' ), className = 'edit-site-save-button__button', variant = 'primary', showTooltip = true, + defaultLabel, icon, + __next40pxDefaultSize = false, } ) { const { isDirty, isSaving, isSaveViewOpen } = useSelect( ( select ) => { const { __experimentalGetDirtyEntityRecords, isSavingEntityRecord } = @@ -53,15 +51,14 @@ export default function SaveButton( { return __( 'Activate' ); } - if ( isDirty ) { - return textForIsDirtyState; - } else if ( isSaving ) { - return textForIsSavingState; + if ( isSaving ) { + return __( 'Saving' ); } else if ( disabled ) { - return textForDisabledState; + return __( 'Saved' ); + } else if ( defaultLabel ) { + return defaultLabel; } - - return textForDefaultState; + return __( 'Save' ); }; const label = getLabel(); @@ -87,6 +84,7 @@ export default function SaveButton( { */ showTooltip={ showTooltip } icon={ icon } + __next40pxDefaultSize={ __next40pxDefaultSize } > { label } From 7ec227c0bd8f65b8f2ba7e0641bec35eb5463cb5 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Tue, 12 Sep 2023 00:07:34 -0300 Subject: [PATCH 100/108] use a simple file id for uploaded files --- .../font-library-modal/utils/index.js | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js index 2e0f910213d61..3ed74eb6a3ac3 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/index.js @@ -1,8 +1,3 @@ -/** - * WordPress dependencies - */ -import { cleanForSlug } from '@wordpress/url'; - /** * Internal dependencies */ @@ -191,19 +186,19 @@ export function getPreviewStyle( family ) { export function makeFormDataFromFontFamilies( fontFamilies ) { const formData = new FormData(); - const newFontFamilies = fontFamilies.map( ( family ) => { + const newFontFamilies = fontFamilies.map( ( family, familyIndex ) => { if ( family?.fontFace ) { - family.fontFace = family.fontFace.map( ( face ) => { + family.fontFace = family.fontFace.map( ( face, faceIndex ) => { if ( face.file ) { // Slugified file name because the it might contain spaces or characters treated differently on the server. - const slugifiedName = cleanForSlug( face.file.name ); + const fileId = `file-${ familyIndex }-${ faceIndex }`; // Add the files to the formData - formData.append( slugifiedName, face.file, face.file.name ); + formData.append( fileId, face.file, face.file.name ); // remove the file object from the face object the file is referenced by the uploadedFile key const { file, ...faceWithoutFileProperty } = face; const newFace = { ...faceWithoutFileProperty, - uploadedFile: slugifiedName, + uploadedFile: fileId, }; return newFace; } From 31b16fd1d39113f58116f1faa1f8fda02004b6d4 Mon Sep 17 00:00:00 2001 From: jasmussen Date: Tue, 12 Sep 2023 09:16:57 +0200 Subject: [PATCH 101/108] Update delete button to be tertiary. --- .../global-styles/font-library-modal/installed-fonts.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js b/packages/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js index 615a7e130ed8d..4bae4f7daf2e7 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js @@ -140,7 +140,7 @@ function Footer( { shouldDisplayDeleteButton, handleUninstallClick } ) {
{ shouldDisplayDeleteButton && ( - ) } From 4f0abf7ab92d4ab3fcf6bf9579f50f8251d488bf Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Tue, 12 Sep 2023 12:51:04 -0300 Subject: [PATCH 102/108] fix test --- .../utils/test/makeFormDataFromFontFamilies.spec.js | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/makeFormDataFromFontFamilies.spec.js b/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/makeFormDataFromFontFamilies.spec.js index b89fa69279f06..9db0195f30072 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/makeFormDataFromFontFamilies.spec.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/utils/test/makeFormDataFromFontFamilies.spec.js @@ -32,12 +32,8 @@ describe( 'makeFormDataFromFontFamilies', () => { expect( formData instanceof FormData ).toBeTruthy(); // Check if files are added correctly - expect( formData.get( 'test-font1-woff2' ).name ).toBe( - 'test-font1.woff2' - ); - expect( formData.get( 'test-font2-woff2' ).name ).toBe( - 'test-font2.woff2' - ); + expect( formData.get( 'file-0-0' ).name ).toBe( 'test-font1.woff2' ); + expect( formData.get( 'file-0-1' ).name ).toBe( 'test-font2.woff2' ); // Check if 'fontFamilies' key in FormData is correct const expectedFontFamilies = [ @@ -46,12 +42,12 @@ describe( 'makeFormDataFromFontFamilies', () => { { fontWeight: '500', fontStyle: 'normal', - uploadedFile: 'test-font1-woff2', + uploadedFile: 'file-0-0', }, { fontWeight: '400', fontStyle: 'normal', - uploadedFile: 'test-font2-woff2', + uploadedFile: 'file-0-1', }, ], slug: 'bebas', From d01a98d03724c90fb08a47a2504608e52c78b800 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Tue, 12 Sep 2023 13:11:53 -0300 Subject: [PATCH 103/108] use FONT_LIBRARY_DISABLE constant to disable Font Library and Font Face loading and load Font API instead --- lib/experimental/fonts/font-library/font-library.php | 8 ++++++++ lib/load.php | 3 +-- .../src/components/global-styles/screen-typography.js | 2 +- phpunit.xml.dist | 1 - phpunit/multisite.xml | 1 - 5 files changed, 10 insertions(+), 5 deletions(-) diff --git a/lib/experimental/fonts/font-library/font-library.php b/lib/experimental/fonts/font-library/font-library.php index 0df008a275094..4987c675956ed 100644 --- a/lib/experimental/fonts/font-library/font-library.php +++ b/lib/experimental/fonts/font-library/font-library.php @@ -55,3 +55,11 @@ function wp_register_font_collection( $config ) { return WP_Font_Library::register_font_collection( $config ); } } + +// @core-merge: This code needs to be removed. +add_action( + 'enqueue_block_editor_assets', + function() { + wp_add_inline_script( 'wp-block-editor', 'window.__experimentalFontLibrary = true', 'before' ); + } +); diff --git a/lib/load.php b/lib/load.php index 1f476ad8a8759..191821b6e3019 100644 --- a/lib/load.php +++ b/lib/load.php @@ -135,8 +135,7 @@ function gutenberg_is_experiment_enabled( $name ) { * keeping Fonts API available for sites that are using it. */ if ( - ( defined( 'FONT_LIBRARY_ENABLE' ) && FONT_LIBRARY_ENABLE ) || - ( defined( 'FONTS_LIBRARY_ENABLE' ) && FONTS_LIBRARY_ENABLE ) + ! defined( 'FONT_LIBRARY_DISABLED' ) || ! FONT_LIBRARY_DISABLED ) { // Loads the Font Library. if ( ! class_exists( 'WP_Font_Library' ) ) { diff --git a/packages/edit-site/src/components/global-styles/screen-typography.js b/packages/edit-site/src/components/global-styles/screen-typography.js index 35dea4137c98f..644e08a6ee137 100644 --- a/packages/edit-site/src/components/global-styles/screen-typography.js +++ b/packages/edit-site/src/components/global-styles/screen-typography.js @@ -22,7 +22,7 @@ function ScreenTypography() { />
- + { window.__experimentalFontLibrary && }
diff --git a/phpunit.xml.dist b/phpunit.xml.dist index 4a4c9bf656935..4f407266e5c0f 100644 --- a/phpunit.xml.dist +++ b/phpunit.xml.dist @@ -9,7 +9,6 @@ > - diff --git a/phpunit/multisite.xml b/phpunit/multisite.xml index ac18402abb0c8..73bc572ab9f18 100644 --- a/phpunit/multisite.xml +++ b/phpunit/multisite.xml @@ -10,7 +10,6 @@ - From 3f626b7b0eb8659f26e1a2830ba48662a29e9c0a Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Tue, 12 Sep 2023 18:06:14 -0300 Subject: [PATCH 104/108] move confirm uninstall dialog to a new component --- .../confirm-delete-dialog.js | 33 +++++++++++++++++++ .../font-library-modal/installed-fonts.js | 11 +++++++ .../library-font-details.js | 26 +-------------- 3 files changed, 45 insertions(+), 25 deletions(-) create mode 100644 packages/edit-site/src/components/global-styles/font-library-modal/confirm-delete-dialog.js diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/confirm-delete-dialog.js b/packages/edit-site/src/components/global-styles/font-library-modal/confirm-delete-dialog.js new file mode 100644 index 0000000000000..259b6900dd16d --- /dev/null +++ b/packages/edit-site/src/components/global-styles/font-library-modal/confirm-delete-dialog.js @@ -0,0 +1,33 @@ +/** + * WordPress dependencies + */ +import { __, sprintf } from '@wordpress/i18n'; +import { __experimentalConfirmDialog as ConfirmDialog } from '@wordpress/components'; + +function ConfirmDeleteDialog( { + font, + isConfirmDeleteOpen, + handleConfirmUninstall, + handleCancelUninstall, +} ) { + return ( + + { font && + sprintf( + /* translators: %s: Name of the font. */ + __( + 'Would you like to remove %s and all its variants and assets?' + ), + font.name + ) } + + ); +} + +export default ConfirmDeleteDialog; diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js b/packages/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js index 4bae4f7daf2e7..4466c423b40ae 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js @@ -7,6 +7,7 @@ import { __experimentalHStack as HStack, __experimentalSpacer as Spacer, Button, + Spinner, } from '@wordpress/components'; /** @@ -18,6 +19,7 @@ import FontsGrid from './fonts-grid'; import LibraryFontDetails from './library-font-details'; import LibraryFontCard from './library-font-card'; import LocalFonts from './local-fonts'; +import ConfirmDeleteDialog from './confirm-delete-dialog'; function InstalledFonts() { const { @@ -27,6 +29,7 @@ function InstalledFonts() { handleSetLibraryFontSelected, refreshLibrary, uninstallFont, + isResolvingLibrary, } = useContext( FontLibraryContext ); const [ isConfirmDeleteOpen, setIsConfirmDeleteOpen ] = useState( false ); @@ -80,8 +83,16 @@ function InstalledFonts() { /> } > + + { ! libraryFontSelected && ( <> + { isResolvingLibrary && } { baseCustomFonts.length > 0 && ( <> diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/library-font-details.js b/packages/edit-site/src/components/global-styles/font-library-modal/library-font-details.js index c1c6b5ea0b059..94d19c3ad4fd9 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/library-font-details.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/library-font-details.js @@ -1,11 +1,9 @@ /** * WordPress dependencies */ -import { __, sprintf } from '@wordpress/i18n'; import { __experimentalVStack as VStack, __experimentalSpacer as Spacer, - __experimentalConfirmDialog as ConfirmDialog, } from '@wordpress/components'; /** @@ -13,12 +11,7 @@ import { */ import LibraryFontVariant from './library-font-variant'; -function LibraryFontDetails( { - font, - isConfirmDeleteOpen, - handleConfirmUninstall, - handleCancelUninstall, -} ) { +function LibraryFontDetails( { font } ) { const fontFaces = font.fontFace && font.fontFace.length ? font.fontFace.sort( ( a, b ) => @@ -34,24 +27,7 @@ function LibraryFontDetails( { return ( <> - - { sprintf( - /* translators: %s: Name of the font. */ - __( - 'Would you like to remove %s and all its variants and assets?' - ), - font.name - ) } - - - { fontFaces.map( ( face, i ) => ( From a71eedce7ede609cf467fd28edf8ec415ec49240 Mon Sep 17 00:00:00 2001 From: Matias Benedetto Date: Wed, 13 Sep 2023 12:32:34 -0300 Subject: [PATCH 105/108] adding progress bar while installing fonts --- .../components/global-styles/font-library-modal/context.js | 5 +++++ .../global-styles/font-library-modal/installed-fonts.js | 6 +++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/context.js b/packages/edit-site/src/components/global-styles/font-library-modal/context.js index 2a5b55e7e5161..14b786ff08534 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/context.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/context.js @@ -48,6 +48,7 @@ function FontLibraryProvider( { children } ) { const { createErrorNotice } = useDispatch( noticesStore ); + const [ isInstalling, setIsInstalling ] = useState( false ); const [ refreshKey, setRefreshKey ] = useState( 0 ); const refreshLibrary = () => { @@ -191,6 +192,7 @@ function FontLibraryProvider( { children } ) { }; async function installFonts( fonts ) { + setIsInstalling( true ); try { // Prepare formData to install. const formData = makeFormDataFromFontFamilies( fonts ); @@ -209,6 +211,7 @@ function FontLibraryProvider( { children } ) { 'settings.typography.fontFamilies', ] ); refreshLibrary(); + setIsInstalling( false ); return true; } catch ( e ) { // eslint-disable-next-line no-console @@ -216,6 +219,7 @@ function FontLibraryProvider( { children } ) { createErrorNotice( __( 'Error installing fonts.' ), { type: 'snackbar', } ); + setIsInstalling( false ); return false; } } @@ -332,6 +336,7 @@ function FontLibraryProvider( { children } ) { fontFamiliesHasChanges, isResolvingLibrary, hasResolvedLibrary, + isInstalling, } } > { children } diff --git a/packages/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js b/packages/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js index 4466c423b40ae..95a7f2a7abcf2 100644 --- a/packages/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js +++ b/packages/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js @@ -4,6 +4,7 @@ import { __ } from '@wordpress/i18n'; import { useContext, useEffect, useState } from '@wordpress/element'; import { + privateApis as componentsPrivateApis, __experimentalHStack as HStack, __experimentalSpacer as Spacer, Button, @@ -20,6 +21,8 @@ import LibraryFontDetails from './library-font-details'; import LibraryFontCard from './library-font-card'; import LocalFonts from './local-fonts'; import ConfirmDeleteDialog from './confirm-delete-dialog'; +import { unlock } from '../../../lock-unlock'; +const { ProgressBar } = unlock( componentsPrivateApis ); function InstalledFonts() { const { @@ -145,10 +148,11 @@ function InstalledFonts() { } function Footer( { shouldDisplayDeleteButton, handleUninstallClick } ) { - const { saveFontFamilies, fontFamiliesHasChanges } = + const { saveFontFamilies, fontFamiliesHasChanges, isInstalling } = useContext( FontLibraryContext ); return ( + { isInstalling && }
{ shouldDisplayDeleteButton && ( @@ -157,7 +161,8 @@ export default function SaveHub() { variant={ disabled ? null : 'primary' } showTooltip={ false } icon={ disabled && ! isSaving ? check : null } - textForDefaultState={ label } + defaultLabel={ label } + __next40pxDefaultSize /> ) }