// Copyright 2018 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, 7,
MOVE_TO, 4, 4,
H_LINE_TO, 3,
R_V_LINE_TO, 1,
H_LINE_TO, 0,
V_LINE_TO, 2,
R_H_LINE_TO, 3,
R_V_LINE_TO, 1,
R_H_LINE_TO, 3,
R_V_LINE_TO, 1,
H_LINE_TO, 5,
R_V_LINE_TO, 1,
H_LINE_TO, 4,
V_LINE_TO, 4,
CLOSE,
MOVE_TO, 2, 3,
H_LINE_TO, 1,
R_V_LINE_TO, 1,
R_H_LINE_TO, 1,
V_LINE_TO, 3,
CLOSE
