#ifndef POKEPLATINUM_OV66_0223177C_H
#define POKEPLATINUM_OV66_0223177C_H

#include "overlay066/struct_ov66_02231428.h"
#include "overlay066/struct_ov66_0223177C_decl.h"
#include "overlay066/struct_ov66_0223185C.h"
#include "overlay066/struct_ov66_022318AC.h"
#include "overlay066/struct_ov66_02231908.h"
#include "overlay066/struct_ov66_0223199C.h"
#include "overlay066/struct_ov66_022319FC.h"
#include "overlay066/struct_ov66_02231A58.h"
#include "overlay066/struct_ov66_02231AB4.h"
#include "overlay066/struct_ov66_02231B24.h"
#include "overlay066/struct_ov66_02231B80.h"
#include "overlay066/struct_ov66_02232068.h"

#include "enums.h"
#include "strbuf.h"

UnkStruct_ov66_0223177C *ov66_0223177C(u32 heapID);
void ov66_022317AC(UnkStruct_ov66_0223177C *param0);
void ov66_022317C0(UnkStruct_ov66_0223177C *param0);
void ov66_022317D8(UnkStruct_ov66_0223177C *param0, const UnkStruct_ov66_02231428 *param1);
void ov66_022317E4(UnkStruct_ov66_0223177C *param0, u32 param1, u32 param2, UnkEnum_ov66_02231E54 param3);
BOOL ov66_022317F0(UnkStruct_ov66_0223177C *param0, u32 param1);
void ov66_0223180C(UnkStruct_ov66_0223177C *param0, u32 param1);
void ov66_0223185C(UnkStruct_ov66_0223177C *param0, const UnkStruct_ov66_0223185C *param1);
void ov66_022318AC(UnkStruct_ov66_0223177C *param0, const UnkStruct_ov66_022318AC *param1);
void ov66_02231908(UnkStruct_ov66_0223177C *param0, const UnkStruct_ov66_02231908 *param1);
void ov66_0223199C(UnkStruct_ov66_0223177C *param0, const UnkStruct_ov66_0223199C *param1);
void ov66_022319FC(UnkStruct_ov66_0223177C *param0, const UnkStruct_ov66_022319FC *param1);
void ov66_02231A58(UnkStruct_ov66_0223177C *param0, const UnkStruct_ov66_02231A58 *param1);
void ov66_02231AB4(UnkStruct_ov66_0223177C *param0, const UnkStruct_ov66_02231AB4 *param1);
void ov66_02231B24(UnkStruct_ov66_0223177C *param0, const UnkStruct_ov66_02231B24 *param1, const UnkStruct_ov66_02232068 *param2);
void ov66_02231B80(UnkStruct_ov66_0223177C *param0, const UnkStruct_ov66_02231B80 *param1);
void ov66_02231C04(UnkStruct_ov66_0223177C *param0);
BOOL ov66_02231C10(const UnkStruct_ov66_0223177C *param0, UnkStruct_ov66_02231428 *param1);
BOOL ov66_02231C18(const UnkStruct_ov66_0223177C *param0, u32 param1);
u32 ov66_02231C24(const UnkStruct_ov66_0223177C *param0, u32 param1);
BOOL ov66_02231C30(const UnkStruct_ov66_0223177C *param0, u32 param1);
BOOL ov66_02231C3C(const UnkStruct_ov66_0223177C *param0, u32 param1);
BOOL ov66_02231C48(const UnkStruct_ov66_0223177C *param0, u32 param1);
UnkEnum_ov66_02231E6C ov66_02231C54(const UnkStruct_ov66_0223177C *param0);
BOOL ov66_02231C60(const UnkStruct_ov66_0223177C *param0);
int ov66_02231C78(const UnkStruct_ov66_0223177C *param0);
BOOL ov66_02231C94(const UnkStruct_ov66_0223177C *param0, const UnkStruct_ov66_02232068 *param1, int param2, Strbuf *param3, u32 heapID);
u32 ov66_02231D00(const UnkStruct_ov66_0223177C *param0, int param1, u32 param2);

#endif // POKEPLATINUM_OV66_0223177C_H
