// WARNING: This file is machine generated by fidlgen.

#pragma once

#include <lib/fidl/llcpp/array.h>
#include <lib/fidl/llcpp/coding.h>
#include <lib/fidl/llcpp/envelope.h>
#include <lib/fidl/llcpp/message.h>
#include <lib/fidl/llcpp/message_storage.h>
#include <lib/fidl/llcpp/object_view.h>
#include <lib/fidl/llcpp/string_view.h>
#include <lib/fidl/llcpp/traits.h>
#include <lib/fidl/llcpp/wire_types.h>
#include <lib/stdcompat/optional.h>

#include <cinttypes>
#ifdef __Fuchsia__

#endif  // __Fuchsia__

#include <fidl/test.bits/cpp/common_types.h>
#include <fidl/test.bits/cpp/markers.h>

namespace test_bits {
namespace wire {
using StrictBits = ::test_bits::StrictBits;
using MyBits = ::test_bits::MyBits;
using FlexibleBits = ::test_bits::FlexibleBits;

}  // namespace wire
}  // namespace test_bits
namespace fidl {}  // namespace fidl
