Cleanup OamData entries
This commit is contained in:
parent
1aa95a1821
commit
201c0953ae
12 changed files with 511 additions and 96 deletions
File diff suppressed because it is too large
Load diff
|
@ -293,35 +293,31 @@ static const u8 sText_ShedinjaJpnName[] = _("ヌケニン"); // Nukenin
|
|||
const struct OamData gOamData_831ACA8 =
|
||||
{
|
||||
.y = 0,
|
||||
.affineMode = 1,
|
||||
.objMode = 0,
|
||||
.mosaic = 0,
|
||||
.bpp = 0,
|
||||
.affineMode = ST_OAM_AFFINE_NORMAL,
|
||||
.objMode = ST_OAM_OBJ_NORMAL,
|
||||
.bpp = ST_OAM_4BPP,
|
||||
.shape = SPRITE_SHAPE(64x64),
|
||||
.x = 0,
|
||||
.matrixNum = 0,
|
||||
.size = SPRITE_SIZE(64x64),
|
||||
.tileNum = 0,
|
||||
.priority = 2,
|
||||
.paletteNum = 0,
|
||||
.affineParam = 0
|
||||
.affineParam = 0,
|
||||
};
|
||||
|
||||
const struct OamData gOamData_831ACB0 =
|
||||
{
|
||||
.y = 0,
|
||||
.affineMode = 1,
|
||||
.objMode = 0,
|
||||
.mosaic = 0,
|
||||
.bpp = 0,
|
||||
.affineMode = ST_OAM_AFFINE_NORMAL,
|
||||
.objMode = ST_OAM_OBJ_NORMAL,
|
||||
.bpp = ST_OAM_4BPP,
|
||||
.shape = SPRITE_SHAPE(64x64),
|
||||
.x = 0,
|
||||
.matrixNum = 0,
|
||||
.size = SPRITE_SIZE(64x64),
|
||||
.tileNum = 0,
|
||||
.priority = 2,
|
||||
.paletteNum = 2,
|
||||
.affineParam = 0
|
||||
.affineParam = 0,
|
||||
};
|
||||
|
||||
// Unknown and unused data. Feel free to remove.
|
||||
|
@ -5891,3 +5887,5 @@ static void HandleAction_ActionFinished(void)
|
|||
gBattleScripting.multihitMoveEffect = 0;
|
||||
gBattleResources->battleScriptsStack->size = 0;
|
||||
}
|
||||
|
||||
|
||||
|
|
34
src/cable_car.c
Executable file → Normal file
34
src/cable_car.c
Executable file → Normal file
|
@ -151,25 +151,46 @@ const struct SpritePalette gUnknown_085CDB74[] = {
|
|||
{ }
|
||||
};
|
||||
|
||||
const struct OamData gOamData_85CDB84 = {
|
||||
const struct OamData gOamData_85CDB84 =
|
||||
{
|
||||
.y = 0,
|
||||
.affineMode = ST_OAM_AFFINE_DOUBLE,
|
||||
.objMode = ST_OAM_OBJ_NORMAL,
|
||||
.bpp = ST_OAM_4BPP,
|
||||
.shape = SPRITE_SHAPE(64x64),
|
||||
.x = 0,
|
||||
.size = SPRITE_SIZE(64x64),
|
||||
.priority = 2
|
||||
.tileNum = 0,
|
||||
.priority = 2,
|
||||
.paletteNum = 0,
|
||||
};
|
||||
|
||||
const struct OamData gOamData_85CDB8C = {
|
||||
const struct OamData gOamData_85CDB8C =
|
||||
{
|
||||
.y = 0,
|
||||
.affineMode = ST_OAM_AFFINE_DOUBLE,
|
||||
.objMode = ST_OAM_OBJ_NORMAL,
|
||||
.bpp = ST_OAM_4BPP,
|
||||
.shape = SPRITE_SHAPE(16x8),
|
||||
.x = 0,
|
||||
.size = SPRITE_SIZE(16x8),
|
||||
.priority = 2
|
||||
.tileNum = 0,
|
||||
.priority = 2,
|
||||
.paletteNum = 0,
|
||||
};
|
||||
|
||||
const struct OamData gOamData_85CDB94 = {
|
||||
const struct OamData gOamData_85CDB94 =
|
||||
{
|
||||
.y = 0,
|
||||
.affineMode = ST_OAM_AFFINE_DOUBLE,
|
||||
.objMode = ST_OAM_OBJ_NORMAL,
|
||||
.bpp = ST_OAM_4BPP,
|
||||
.shape = SPRITE_SHAPE(16x16),
|
||||
.x = 0,
|
||||
.size = SPRITE_SIZE(16x16),
|
||||
.priority = 2
|
||||
.tileNum = 0,
|
||||
.priority = 2,
|
||||
.paletteNum = 0,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gSpriteTemplate_85CDB9C[] =
|
||||
|
@ -1007,3 +1028,4 @@ static void sub_81514C8(u8 arg0)
|
|||
|
||||
sCableCar->unk1C = 0;
|
||||
}
|
||||
|
||||
|
|
|
@ -445,18 +445,15 @@ const struct CompressedSpriteSheet gUnknown_08587B88 =
|
|||
const struct OamData gOamData_8587B90 =
|
||||
{
|
||||
.y = 0,
|
||||
.affineMode = 0,
|
||||
.objMode = 0,
|
||||
.mosaic = 0,
|
||||
.bpp = 0,
|
||||
.affineMode = ST_OAM_AFFINE_OFF,
|
||||
.objMode = ST_OAM_OBJ_NORMAL,
|
||||
.bpp = ST_OAM_4BPP,
|
||||
.shape = SPRITE_SHAPE(16x16),
|
||||
.x = 0,
|
||||
.matrixNum = 0,
|
||||
.size = SPRITE_SIZE(16x16),
|
||||
.tileNum = 0,
|
||||
.priority = 0,
|
||||
.paletteNum = 0,
|
||||
.affineParam = 0
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gSpriteTemplate_8587B98 =
|
||||
|
@ -486,18 +483,15 @@ const struct SpritePalette gUnknown_08587BB8 =
|
|||
const struct OamData gOamData_8587BC0 =
|
||||
{
|
||||
.y = 0,
|
||||
.affineMode = 0,
|
||||
.objMode = 0,
|
||||
.mosaic = 0,
|
||||
.bpp = 0,
|
||||
.affineMode = ST_OAM_AFFINE_OFF,
|
||||
.objMode = ST_OAM_OBJ_NORMAL,
|
||||
.bpp = ST_OAM_4BPP,
|
||||
.shape = SPRITE_SHAPE(64x32),
|
||||
.x = 0,
|
||||
.matrixNum = 0,
|
||||
.size = SPRITE_SIZE(64x32),
|
||||
.tileNum = 0,
|
||||
.priority = 0,
|
||||
.paletteNum = 0,
|
||||
.affineParam = 0
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gSpriteTemplate_8587BC8 =
|
||||
|
@ -514,18 +508,15 @@ const struct SpriteTemplate gSpriteTemplate_8587BC8 =
|
|||
const struct OamData gOamData_8587BE0 =
|
||||
{
|
||||
.y = 0,
|
||||
.affineMode = 0,
|
||||
.objMode = 0,
|
||||
.mosaic = 0,
|
||||
.bpp = 0,
|
||||
.affineMode = ST_OAM_AFFINE_OFF,
|
||||
.objMode = ST_OAM_OBJ_NORMAL,
|
||||
.bpp = ST_OAM_4BPP,
|
||||
.shape = SPRITE_SHAPE(64x64),
|
||||
.x = 0,
|
||||
.matrixNum = 0,
|
||||
.size = SPRITE_SIZE(64x64),
|
||||
.tileNum = 0,
|
||||
.priority = 3,
|
||||
.paletteNum = 2,
|
||||
.affineParam = 0
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gSpriteTemplate_8587BE8 =
|
||||
|
@ -768,18 +759,16 @@ static const struct SpritePalette sUnknown_08589924[] =
|
|||
const struct OamData gOamData_8589944 =
|
||||
{
|
||||
.y = 0,
|
||||
.affineMode = 3,
|
||||
.objMode = 1,
|
||||
.mosaic = 0,
|
||||
.bpp = 0,
|
||||
.affineMode = ST_OAM_AFFINE_DOUBLE,
|
||||
.objMode = ST_OAM_OBJ_BLEND,
|
||||
.bpp = ST_OAM_4BPP,
|
||||
.shape = SPRITE_SHAPE(64x64),
|
||||
.x = 0,
|
||||
.matrixNum = 0,
|
||||
.size = SPRITE_SIZE(64x64),
|
||||
.tileNum = 0,
|
||||
.priority = 0,
|
||||
.paletteNum = 0,
|
||||
.affineParam = 0
|
||||
.affineParam = 0,
|
||||
};
|
||||
|
||||
const union AffineAnimCmd gSpriteAffineAnim_858994C[] =
|
||||
|
@ -5762,3 +5751,5 @@ void sub_80DFA08(struct ContestPokemon *mon, s32 language)
|
|||
name[PLAYER_NAME_LENGTH] = EOS;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -152,16 +152,14 @@ const struct OamData gUnknown_085B0830 =
|
|||
.y = 0,
|
||||
.affineMode = ST_OAM_AFFINE_OFF,
|
||||
.objMode = ST_OAM_OBJ_NORMAL,
|
||||
.mosaic = 1,
|
||||
.mosaic = TRUE,
|
||||
.bpp = ST_OAM_8BPP,
|
||||
.shape = SPRITE_SHAPE(64x64),
|
||||
.x = 0,
|
||||
.matrixNum = 0,
|
||||
.size = SPRITE_SIZE(64x64),
|
||||
.tileNum = 0,
|
||||
.priority = 0,
|
||||
.paletteNum = 0,
|
||||
.affineParam = 0,
|
||||
};
|
||||
|
||||
const u16 gUnknown_085B0838[] = {RGB(0, 0, 0), RGB(0, 0, 0)};
|
||||
|
@ -705,3 +703,4 @@ static void sub_8130884(u8 arg0, u8 arg1)
|
|||
sub_8130688(arg0);
|
||||
sub_8130430(arg0, arg1);
|
||||
}
|
||||
|
||||
|
|
|
@ -391,10 +391,18 @@ const struct SpritePalette gUnknown_085A73E0 = {
|
|||
Unknown_085A7328, OVERWORLD_PLACE_DECOR_PLAYER_PAL_TAG
|
||||
};
|
||||
|
||||
const struct OamData Unknown_085A73E8 = {
|
||||
const struct OamData Unknown_085A73E8 =
|
||||
{
|
||||
.y = 0,
|
||||
.affineMode = ST_OAM_AFFINE_OFF,
|
||||
.objMode = ST_OAM_OBJ_NORMAL,
|
||||
.bpp = ST_OAM_4BPP,
|
||||
.shape = SPRITE_SHAPE(16x16),
|
||||
.x = 0,
|
||||
.size = SPRITE_SIZE(16x16),
|
||||
.priority = 1
|
||||
.tileNum = 0,
|
||||
.priority = 1,
|
||||
.paletteNum = 0,
|
||||
};
|
||||
|
||||
const union AnimCmd Unknown_085A73F0[] = {
|
||||
|
@ -2740,3 +2748,4 @@ void sub_812A478(u8 taskId)
|
|||
StringExpandPlaceholders(gStringVar4, gText_DecorationThrownAway);
|
||||
DisplayItemMessageOnField(taskId, gStringVar4, sub_8127A5C);
|
||||
}
|
||||
|
||||
|
|
|
@ -284,20 +284,44 @@ bool8 (*const gFieldEffectScriptFuncs[])(u8 **, u32 *) =
|
|||
|
||||
const struct OamData gNewGameBirchOamAttributes =
|
||||
{
|
||||
.y = 0,
|
||||
.affineMode = ST_OAM_AFFINE_OFF,
|
||||
.objMode = ST_OAM_OBJ_NORMAL,
|
||||
.bpp = ST_OAM_4BPP,
|
||||
.shape = SPRITE_SHAPE(64x64),
|
||||
.size = SPRITE_SIZE(64x64)
|
||||
.x = 0,
|
||||
.size = SPRITE_SIZE(64x64),
|
||||
.tileNum = 0,
|
||||
.priority = 0,
|
||||
.paletteNum = 0,
|
||||
};
|
||||
|
||||
const struct OamData gOamData_855C218 =
|
||||
{
|
||||
.y = 0,
|
||||
.affineMode = ST_OAM_AFFINE_OFF,
|
||||
.objMode = ST_OAM_OBJ_NORMAL,
|
||||
.bpp = ST_OAM_4BPP,
|
||||
.shape = SPRITE_SHAPE(8x8),
|
||||
.size = SPRITE_SIZE(8x8)
|
||||
.x = 0,
|
||||
.size = SPRITE_SIZE(8x8),
|
||||
.tileNum = 0,
|
||||
.priority = 0,
|
||||
.paletteNum = 0,
|
||||
};
|
||||
|
||||
const struct OamData gOamData_855C220 =
|
||||
{
|
||||
.y = 0,
|
||||
.affineMode = ST_OAM_AFFINE_OFF,
|
||||
.objMode = ST_OAM_OBJ_NORMAL,
|
||||
.bpp = ST_OAM_4BPP,
|
||||
.shape = SPRITE_SHAPE(16x16),
|
||||
.size = SPRITE_SIZE(16x16)
|
||||
.x = 0,
|
||||
.size = SPRITE_SIZE(16x16),
|
||||
.tileNum = 0,
|
||||
.priority = 0,
|
||||
.paletteNum = 0,
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gNewGameBirchPicTable[] =
|
||||
|
@ -347,8 +371,16 @@ const struct SpritePalette gFieldEffectObjectPaletteInfo5 =
|
|||
|
||||
const struct OamData gOamData_855C26C =
|
||||
{
|
||||
.y = 0,
|
||||
.affineMode = ST_OAM_AFFINE_OFF,
|
||||
.objMode = ST_OAM_OBJ_NORMAL,
|
||||
.bpp = ST_OAM_4BPP,
|
||||
.shape = SPRITE_SHAPE(32x16),
|
||||
.size = SPRITE_SIZE(32x16)
|
||||
.x = 0,
|
||||
.size = SPRITE_SIZE(32x16),
|
||||
.tileNum = 0,
|
||||
.priority = 0,
|
||||
.paletteNum = 0,
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gSpriteImageTable_855C274[] =
|
||||
|
@ -3759,3 +3791,4 @@ static void Fldeff_MoveDeoxysRock_Step(u8 taskId)
|
|||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -1513,18 +1513,15 @@ void LoadAshSpriteSheet(void)
|
|||
const struct OamData gOamData_839ABB8 =
|
||||
{
|
||||
.y = 0,
|
||||
.affineMode = 0,
|
||||
.objMode = 1,
|
||||
.mosaic = 0,
|
||||
.bpp = 0,
|
||||
.affineMode = ST_OAM_AFFINE_OFF,
|
||||
.objMode = ST_OAM_OBJ_BLEND,
|
||||
.bpp = ST_OAM_4BPP,
|
||||
.shape = SPRITE_SHAPE(64x64),
|
||||
.x = 0,
|
||||
.matrixNum = 0,
|
||||
.size = SPRITE_SIZE(64x64),
|
||||
.tileNum = 0,
|
||||
.priority = 1,
|
||||
.paletteNum = 15,
|
||||
.affineParam = 0,
|
||||
};
|
||||
|
||||
const union AnimCmd gSpriteAnim_839ABC0[] =
|
||||
|
@ -1750,18 +1747,15 @@ void CreateFog2Sprites(void)
|
|||
const struct OamData gOamData_839ABF0 =
|
||||
{
|
||||
.y = 0,
|
||||
.affineMode = 0,
|
||||
.objMode = 1,
|
||||
.mosaic = 0,
|
||||
.bpp = 0,
|
||||
.affineMode = ST_OAM_AFFINE_OFF,
|
||||
.objMode = ST_OAM_OBJ_BLEND,
|
||||
.bpp = ST_OAM_4BPP,
|
||||
.shape = SPRITE_SHAPE(64x64),
|
||||
.x = 0,
|
||||
.matrixNum = 0,
|
||||
.size = SPRITE_SIZE(64x64),
|
||||
.tileNum = 0,
|
||||
.priority = 2,
|
||||
.paletteNum = 0,
|
||||
.affineParam = 0,
|
||||
};
|
||||
|
||||
const union AnimCmd gSpriteAnim_839ABF8[] =
|
||||
|
@ -1949,18 +1943,15 @@ void sub_80800E4(void)
|
|||
const struct OamData gOamData_839AC1C =
|
||||
{
|
||||
.y = 0,
|
||||
.affineMode = 0,
|
||||
.objMode = 1,
|
||||
.mosaic = 0,
|
||||
.bpp = 0,
|
||||
.affineMode = ST_OAM_AFFINE_OFF,
|
||||
.objMode = ST_OAM_OBJ_BLEND,
|
||||
.bpp = ST_OAM_4BPP,
|
||||
.shape = SPRITE_SHAPE(64x64),
|
||||
.x = 0,
|
||||
.matrixNum = 0,
|
||||
.size = SPRITE_SIZE(64x64),
|
||||
.tileNum = 0,
|
||||
.priority = 1,
|
||||
.paletteNum = 0,
|
||||
.affineParam = 0,
|
||||
};
|
||||
|
||||
const union AnimCmd gSpriteAnim_839AC24[] =
|
||||
|
@ -2470,3 +2461,5 @@ static void UpdateRainCounter(u8 newWeather, u8 oldWeather)
|
|||
&& (newWeather == WEATHER_RAIN_LIGHT || newWeather == WEATHER_RAIN_MED))
|
||||
IncrementGameStat(GAME_STAT_GOT_RAINED_ON);
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -154,9 +154,18 @@ const u8 sWireless_RSEtoASCIITable[] = {
|
|||
0x20, 0x2b, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f, 0x20,
|
||||
0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00
|
||||
};
|
||||
const struct OamData sWirelessStatusIndicatorOamData = {
|
||||
const struct OamData sWirelessStatusIndicatorOamData =
|
||||
{
|
||||
.y = 0,
|
||||
.affineMode = ST_OAM_AFFINE_OFF,
|
||||
.objMode = ST_OAM_OBJ_NORMAL,
|
||||
.bpp = ST_OAM_4BPP,
|
||||
.shape = SPRITE_SHAPE(16x16),
|
||||
.size = SPRITE_SIZE(16x16)
|
||||
.x = 0,
|
||||
.size = SPRITE_SIZE(16x16),
|
||||
.tileNum = 0,
|
||||
.priority = 0,
|
||||
.paletteNum = 0,
|
||||
};
|
||||
static const union AnimCmd sWirelessStatusIndicatorAnim0[] = {
|
||||
// 3 bars
|
||||
|
@ -5182,3 +5191,4 @@ u32 GetRfuRecvQueueLength(void)
|
|||
{
|
||||
return gUnknown_03005000.unk_124.unk_8c2;
|
||||
}
|
||||
|
||||
|
|
|
@ -1906,52 +1906,43 @@ static const struct NamingScreenTemplate *const sNamingScreenTemplates[] =
|
|||
const struct OamData gOamData_858BFEC =
|
||||
{
|
||||
.y = 0,
|
||||
.affineMode = 0,
|
||||
.objMode = 0,
|
||||
.mosaic = 0,
|
||||
.bpp = 0,
|
||||
.affineMode = ST_OAM_AFFINE_OFF,
|
||||
.objMode = ST_OAM_OBJ_NORMAL,
|
||||
.bpp = ST_OAM_4BPP,
|
||||
.shape = SPRITE_SHAPE(8x8),
|
||||
.x = 0,
|
||||
.matrixNum = 0,
|
||||
.size = SPRITE_SIZE(8x8),
|
||||
.tileNum = 0,
|
||||
.priority = 0,
|
||||
.paletteNum = 0,
|
||||
.affineParam = 0,
|
||||
};
|
||||
|
||||
const struct OamData gOamData_858BFF4 =
|
||||
{
|
||||
.y = 0,
|
||||
.affineMode = 0,
|
||||
.objMode = 0,
|
||||
.mosaic = 0,
|
||||
.bpp = 0,
|
||||
.affineMode = ST_OAM_AFFINE_OFF,
|
||||
.objMode = ST_OAM_OBJ_NORMAL,
|
||||
.bpp = ST_OAM_4BPP,
|
||||
.shape = SPRITE_SHAPE(16x16),
|
||||
.x = 0,
|
||||
.matrixNum = 0,
|
||||
.size = SPRITE_SIZE(16x16),
|
||||
.tileNum = 0,
|
||||
.priority = 0,
|
||||
.paletteNum = 0,
|
||||
.affineParam = 0,
|
||||
};
|
||||
|
||||
const struct OamData gOamData_858BFFC =
|
||||
{
|
||||
.y = 0,
|
||||
.affineMode = 0,
|
||||
.objMode = 0,
|
||||
.mosaic = 0,
|
||||
.bpp = 0,
|
||||
.affineMode = ST_OAM_AFFINE_OFF,
|
||||
.objMode = ST_OAM_OBJ_NORMAL,
|
||||
.bpp = ST_OAM_4BPP,
|
||||
.shape = SPRITE_SHAPE(32x16),
|
||||
.x = 0,
|
||||
.matrixNum = 0,
|
||||
.size = SPRITE_SIZE(32x16),
|
||||
.tileNum = 0,
|
||||
.priority = 0,
|
||||
.paletteNum = 0,
|
||||
.affineParam = 0,
|
||||
};
|
||||
|
||||
static const struct Subsprite gUnknown_0858C004[] =
|
||||
|
@ -2203,3 +2194,5 @@ static const struct SpritePalette gUnknown_0858C230[] =
|
|||
{gNamingScreenMenu_Pal + 0x40, 0x0007},
|
||||
{NULL}
|
||||
};
|
||||
|
||||
|
||||
|
|
8
src/pokedex_cry_screen.c
Executable file → Normal file
8
src/pokedex_cry_screen.c
Executable file → Normal file
|
@ -169,9 +169,14 @@ const struct OamData gOamData_85B8C60 =
|
|||
{
|
||||
.y = 160,
|
||||
.affineMode = ST_OAM_AFFINE_NORMAL,
|
||||
.objMode = ST_OAM_OBJ_NORMAL,
|
||||
.bpp = ST_OAM_4BPP,
|
||||
.shape = SPRITE_SHAPE(64x64),
|
||||
.x = 0,
|
||||
.size = SPRITE_SIZE(64x64),
|
||||
.priority = 1
|
||||
.tileNum = 0,
|
||||
.priority = 1,
|
||||
.paletteNum = 0,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_085B8C68 =
|
||||
|
@ -521,3 +526,4 @@ static void sub_8145B24(s8 a0)
|
|||
sCryVolumeMeter->unk1 = r2;
|
||||
sCryVolumeMeter->unk2 = 5;
|
||||
}
|
||||
|
||||
|
|
|
@ -927,18 +927,15 @@ const struct SpritePalette gMonIconPaletteTable[] =
|
|||
const struct OamData sMonIconOamData =
|
||||
{
|
||||
.y = 0,
|
||||
.affineMode = 0,
|
||||
.objMode = 0,
|
||||
.mosaic = 0,
|
||||
.bpp = 0,
|
||||
.affineMode = ST_OAM_AFFINE_OFF,
|
||||
.objMode = ST_OAM_OBJ_NORMAL,
|
||||
.bpp = ST_OAM_4BPP,
|
||||
.shape = SPRITE_SHAPE(32x32),
|
||||
.x = 0,
|
||||
.matrixNum = 0,
|
||||
.size = SPRITE_SIZE(32x32),
|
||||
.tileNum = 0,
|
||||
.priority = 1,
|
||||
.paletteNum = 0,
|
||||
.affineParam = 0
|
||||
};
|
||||
|
||||
// fastest to slowest
|
||||
|
@ -1311,3 +1308,5 @@ void sub_80D32C8(struct Sprite *sprite, u8 animNum)
|
|||
sprite->animDelayCounter = 0;
|
||||
sprite->animCmdIndex = 0;
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Reference in a new issue