// Copyright 2016 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, 32,
MOVE_TO, 0, 4,
R_H_LINE_TO, 32,
R_V_LINE_TO, 24,
H_LINE_TO, 0,
V_LINE_TO, 4,
CLOSE,
R_MOVE_TO, 2, 2,
R_H_LINE_TO, 28,
R_V_LINE_TO, 20,
H_LINE_TO, 2,
V_LINE_TO, 6,
CLOSE,
R_MOVE_TO, 2, 2,
R_H_LINE_TO, 24,
R_V_LINE_TO, 16,
H_LINE_TO, 4,
V_LINE_TO, 8,
CLOSE
