// Copyright 2017 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

CANVAS_DIMENSIONS, 96,
MOVE_TO, 84.25f, 30.5f,
CUBIC_TO, 77.85f, 17.3f, 63.6f, 8, 48, 8,
R_CUBIC_TO, -12.4f, 0, -23.6f, 5.6f, -30.8f, 14.4f,
R_LINE_TO, 13.2f, 22.8f,
R_CUBIC_TO, 1.2f, -8.4f, 8.8f, -14.7f, 17.6f, -14.7f,
R_H_LINE_TO, 36.25f,
CLOSE,
MOVE_TO, 48, 66,
R_CUBIC_TO, -6.8f, 0, -12.4f, -3.6f, -15.6f, -9.2f,
LINE_TO, 14.4f, 26,
CUBIC_TO, 10.4f, 32.4f, 8, 40, 8, 48,
R_CUBIC_TO, 0, 20, 14.4f, 36.4f, 33.6f, 39.6f,
R_LINE_TO, 13.2f, -22.8f,
R_CUBIC_TO, -2.4f, 0.8f, -4.4f, 1.2f, -6.8f, 1.2f,
CLOSE,
R_MOVE_TO, 18, -18,
R_CUBIC_TO, 0, -5.6f, -4, -11.8f, -8, -15,
R_H_LINE_TO, 27.5f,
R_CUBIC_TO, 1.6f, 4.4f, 2.5f, 10.2f, 2.5f, 15,
R_CUBIC_TO, 0, 22, -18, 40, -40, 40,
R_H_LINE_TO, -2.4f,
R_LINE_TO, 18, -31.2f,
R_CUBIC_TO, 1.6f, -2.4f, 2.4f, -5.6f, 2.4f, -8.8f,
CLOSE,
MOVE_TO, 48, 62,
R_CUBIC_TO, -7.73f, 0, -14, -6.27f, -14, -14,
R_CUBIC_TO, 0, -7.73f, 6.27f, -14, 14, -14,
R_CUBIC_TO, 7.73f, 0, 14, 6.27f, 14, 14,
R_CUBIC_TO, 0, 7.73f, -6.27f, 14, -14, 14,
CLOSE
